problème d'appel ajax en asynchrone

Programmation, discussions et suggestions pour l'amélioration de OpenCart

problème d'appel ajax en asynchrone

Messagepar gem56 » 15 Mai 2013, 15:58

Suite à mes modifs (voir mes post précédents), je me suis retrouvé deux fois (sur environ 60 commandes) avec des commandes en doubles.

Après inspection des sources originales (version 1.5.4.1 et 1.5.5.1), je me rends compte que tous les appels ajax d'opencart sont en asynchrone (sauf qq'uns interne à jquery ou au ckeditor) et que ça génère à certains endroits des effets de bords (non détectés par la communauté ?!)

Un exemple facile, dans le module de payment à la livraison (duquel j'étais parti pour faire mon module de choix de dépot) cod.php et cod.tpl

Si vous tracez les appels à catalog_controler_payment_cod->confirm et catalog_model_payment_cod->confirm et que vous cliquez "nerveusement" deux fois sur le bouton "confirmer commande" de l'étape 6 finale, les deux methodes confirm (controler et model) sont appelé 2 fois !!!!

Il faut dans le fichier catalog/view/theme/xxx/template/default/payment/cod.tpl ajouter l'option "async: false"

Tout nouvel utilisateur d'opencart, ce genre de découverte ne me rassure pas (pour moi, qu'il n'y ai aucun appel ajax synchrone dans opencart, ça me semble pas normal, je découvre cet effet de bord grace à deux clients nerveux, ça va m'obliger à regarder l'ensemble des templates en détail)

Le fait aussi, que personne dans la communauté, s'inquietent non plus de l'absence de transactions SQL, ne me rassure pas non plus ! (en 2013, pas de transactions et du MyIsam)
OpenCart v1.5.4.1-FR
vQmod v2.3.2
PHP v5.3 - Linux
gem56
 
Messages: 14
Inscrit le: 09 Mars 2013, 20:24

Retour vers Développement

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité

cron
Copyright © 2009-2013 OpenCart France - Tous droits réservés