Samuel MONTAGNE Posted June 30, 2008 Share Posted June 30, 2008 Bonjour à tous.Dans la version RC3 j'avais un problème:le hook "PaymentConfirm" normalementappelé lors d'un paiement effectif n'étaitjamais déclenché (voir le post suivant :http://www.prestashop.com/forums/viewthread/2302/#10119)Cela est-il corrigé en RC4 (je n'ai rien vuconcernant ce hook dans le changelog)?Cordialement. Link to comment Share on other sites More sharing options...
shagshag Posted July 1, 2008 Share Posted July 1, 2008 Bonjour,Le terme "PaymentConfirm" n'apparaissant pas dans les fichiers de la RC4 je dirais que non. désolé. Link to comment Share on other sites More sharing options...
Samuel MONTAGNE Posted July 2, 2008 Author Share Posted July 2, 2008 Grrrr !Domage.J'vais encore devoir bidouiller en attendant mieux Link to comment Share on other sites More sharing options...
shagshag Posted July 17, 2008 Share Posted July 17, 2008 A priori pas de changement dans le RC5 :-/ Link to comment Share on other sites More sharing options...
Julien Breux Posted July 17, 2008 Share Posted July 17, 2008 Non, pas de changement Link to comment Share on other sites More sharing options...
shagshag Posted July 17, 2008 Share Posted July 17, 2008 Bon marre d'attendre Voici le fichier classes/Hook.php modifié. à priori ça fonctionne mais faudrait des testeur la méthode hookPaymentConfirm est appelée avec comme argument $params['order'] = la commande payée.Edit : voir http://www.prestashop.com/forums/viewreply/15244/ pour télécharger. Link to comment Share on other sites More sharing options...
Julien Breux Posted July 17, 2008 Share Posted July 17, 2008 Bon marre d'attendre +1, j'attends la version un pour tout modifier et retravailler la base :-p Link to comment Share on other sites More sharing options...
FranWeb Posted July 17, 2008 Share Posted July 17, 2008 Shagshag, des précisions ? Par exemple en quelles circonstances ce hook est appelé ? Ou alors sers-t-il pour l'ensemble des moyens de paiements ou juste Paypal ou les CB ?Merci de tes éclaircissements Link to comment Share on other sites More sharing options...
shagshag Posted July 17, 2008 Share Posted July 17, 2008 le hook est appelé quand la commande passe en "Validée" (logable) alors qu'elle ne l'était pas avant. Ceci indépendemment du mode de paiement.Ce n'est pas parfait mais c'est la seule information fournie par prestashop.Dans la configuration par défaut le hook est appelé quand une commande passe de "En attente de paiement" à "Paiement accepté" ou "Préparation en cours" ou "En cours de livraison" ou "Livré" ou "Produit(s) indisponibles". Logiquement seul la première possibilité est possible mais dans les autres le paiement est implicite.le hook est aussi appelé si la commande est directement créée dans un état "Validée".Par contre comme il n'y a pas de hiérarchie dans le statut de commande il peut être appelé plusieurs fois par commande si on fait n'importe quoi. Par exemple si on passe de "En attente de paiement" -> "Paiement accepté" (appel) -> "Annulé" -> "Livré" (re-appel) parce qu'une commande annulée n'est pas validée, logique.Autre problème, les commandes gratuites. Pas testé mais le hook doit être appelé aussi. En même temps c'est pas illogique. Link to comment Share on other sites More sharing options...
DrÿSs' Posted July 17, 2008 Share Posted July 17, 2008 J'en profite pour apporter quelques précisions.PaymentConfirm = lorsque le paiement est confirmé, et uniquement cela.Donc ce hook ne devrait pas être appelé juste en fonction du statut logable, mais uniquement lorsque la commande passe en statut "Paiement validée".Ce qui évite donc les problèmes de doublons (“En attente de paiement” -> “Paiement accepté” (appel) -> “Annulé” -> “Livré”).En ce qui concerne les commandes gratuites, le hook ne devrait logiquement pas être appelé : ce hook, comme son nom le décrit bien, est appelé lorsqu'un paiement est validé. Une commande gratuite n'a donc pas de paiement.shagshag, je pense que tu as reproduit ici le principe du hook updateOrderStatus en affinant la sélection seulement lorsque la commande est validée (logable). Or, la nuance, même minime, reste importante : il s'agit de la validation du paiement, et non de la commande.Je vais inclure ce hook pour la prochaine release Merci tout de même d'avoir pris l'initiative d'inclure ce hook, cela fait plusieurs release que nous aurions du le faire !! Link to comment Share on other sites More sharing options...
shagshag Posted July 17, 2008 Share Posted July 17, 2008 Bonjour,C'est vrai que j'aurais pu faire comme cela, c'est plus simple. Juste vérifier que la commande passe en état 2 (id du statuts "Paiement accepté" chez moi).Mais ça ne peut pas être aussi simple parce que : * comment être sur que c'est celui qui a l'id 2 partout ? on ne peut évidemment pas se fier au nom puisque c'est en fonction des langues activées.* si on décide que c'est 2 que ce passe t il si quelqu'un efface ce statut et le recréé ? il n'aura plus l'id 2.* que faire si on décide d'avoir 2 statuts de validation de paiement ? je ne sais pas pourquoi mais on peut le faire.bref actuellement c'est pas possible de faire simplement. Link to comment Share on other sites More sharing options...
DrÿSs' Posted July 17, 2008 Share Posted July 17, 2008 Il y a une série de define dans config.inc.php :define('_PS_OS_CHEQUE_', 1);define('_PS_OS_PAYMENT_', 2);define('_PS_OS_PREPARATION_', 3);define('_PS_OS_SHIPPING_', 4);define('_PS_OS_DELIVERED_', 5);define('_PS_OS_CANCELED_', 6);define('_PS_OS_REFUND_', 7);define('_PS_OS_ERROR_', 8);define('_PS_OS_OUTOFSTOCK_', 9);define('_PS_OS_BANKWIRE_', 10);On se base dessus partout dans la solution, maintenant il est vrai que ces 10 status devrait être "bloqués".Donc si on part de ton hypothèse, plus rien ne marche xD Link to comment Share on other sites More sharing options...
Julien Breux Posted July 17, 2008 Share Posted July 17, 2008 Je vais inclure ce hook pour la prochaine release Philippe, tu m'fais peur!! RC6 ?? Link to comment Share on other sites More sharing options...
shagshag Posted July 17, 2008 Share Posted July 17, 2008 !http://trevorcook.typepad.com/photos/uncategorized/homer.jpg!J'y avais même pas pensé, je corrige de suite. Maintenant le hook est appelé que quand on passe en paiement accepté et s'il y a des manipulations dans les statuts des commandes c'est un bug de prestashop (pas ma faute na!)Pour info les parties modifiées commencent lignes 81, 95 et 105. Hook.php.zip Link to comment Share on other sites More sharing options...
DrÿSs' Posted July 17, 2008 Share Posted July 17, 2008 Je vais inclure ce hook pour la prochaine release Philippe, tu m'fais peur!! RC6 ??Ben, pourtant je l'avais annoncé... on a prévu une vingtaine de RC pour être sûr de la finale. Link to comment Share on other sites More sharing options...
Julien Breux Posted July 17, 2008 Share Posted July 17, 2008 Ben, pourtant je l'avais annoncé... on a prévu une vingtaine de RC pour être sûr de la finale. Ouai, c'est vrai, on le constate ;-P Link to comment Share on other sites More sharing options...
FranWeb Posted July 17, 2008 Share Posted July 17, 2008 on a prévu une vingtaine de RC pour être sûr de la finale. Arf, ça en fait un paquet !la version finale devrait donc être un produit à hauteur des espérances de nombre de (futurs) commerçants alors Link to comment Share on other sites More sharing options...
shagshag Posted July 17, 2008 Share Posted July 17, 2008 Bon on se retrouve courant 2012 alors. Link to comment Share on other sites More sharing options...
DrÿSs' Posted July 17, 2008 Share Posted July 17, 2008 Haha, j'ai placé la barre super haut du coup !On a pas le droit à l'erreur Sinon, non pas d'autre RC de prévue, en espérant qu'il n'y pas de nouveaux bugs qui se soient glissés depuis.De toute façon on va faire une phase de tests intensifs pour être sûrs. Link to comment Share on other sites More sharing options...
Samuel MONTAGNE Posted July 17, 2008 Author Share Posted July 17, 2008 Voici le fichier classes/Hook.php modifié. à priori ça fonctionne mais faudrait des testeur Ben je vais tester ça de suite ! Merci pour tout : j'allais finir par faire la modif moi même maisj'ai été retenu par autre chose donc c'est super que tu es miston nez dans le code et surtout que tu partages ta modification. Link to comment Share on other sites More sharing options...
Samuel MONTAGNE Posted July 17, 2008 Author Share Posted July 17, 2008 Alors pour interrompre le suspense insoutenable,je confirme : ça marche ! Merci, merci et encoremerci.J'ai tout d'abords cru que ça ne marchait pas maiscomme un (censuré) j'avais oublié de dés installeret de réinstaller mon module afin de le greffer àun nouveau hook !Comme on dit chez moi : ça roxe du poney Link to comment Share on other sites More sharing options...
shagshag Posted July 17, 2008 Share Posted July 17, 2008 CoolUn problème de réglé Link to comment Share on other sites More sharing options...
Julien Breux Posted July 17, 2008 Share Posted July 17, 2008 Et un petit [Resolu] dans le titre un ! Link to comment Share on other sites More sharing options...
Samuel MONTAGNE Posted July 17, 2008 Author Share Posted July 17, 2008 Exact, j'y avais pas pensé 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