hugolin69 Posted February 26, 2018 Share Posted February 26, 2018 Bonjour, Je suis sur une plateforme 1.6.0.9, et propose paiement par CB via un système bancaire et paiement par virement. Mon souci est que plusieurs utilisateurs valident leur commande par virement, et une fois arrivés sur la page de confirmation avec l'IBAN, semblent changer d'avis, reviennent en arrière, et choisissent le paiement par CB. La page de choix de paiement, même avec un header bloquant la mise en cache, apparait de la même façon, alors que la commande a été traitée, et peuvent encore aller sur la page externe de paiement par CB. Pour l'instant, j'ai placé ces éléments dans le header, et un petit javascript dans le corps, mais je trouve ca un peu moyen, car ceci revient à modifier l'historique du navigateur, et j'aurai préféré avoir un petit ajax par exemple, qui une fois arrivé sur la page de paiement, consulte en temps réel, l'état de la commande. Je n'ai pas trouvé d'autres personnes ayant été confronté à ce problème, qui pourtant est un trou noir sur prestashop. Avez vous de meilleurs solutions à proposer ? Dans le header {if $page_name == 'order'} <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" /> <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="0" /> {/if} Sur order-payment.tpl <script type="text/javascript"> {literal} jQuery( document ).ready(function( $ ) { window.onunload = function(){}; function formatTime(t) { return t.getHours() + ':' + t.getMinutes() + ':' + t.getSeconds(); } if (window.history.state != null && window.history.state.hasOwnProperty('historic')) { if (window.history.state.historic == true) { document.body.style.display = 'none'; console.log('I was here before at ' + formatTime(window.history.state.last_visit)); window.history.replaceState({historic: false}, ''); window.location.reload(); } else { console.log('I was forced to reload, but WELCOME BACK!'); window.history.replaceState({ historic : true, last_visit: new Date() }, ''); } } else { console.log('This is my first visit to ' + window.location.pathname); window.history.replaceState({ historic : true, last_visit: new Date() }, ''); } }); {/literal} </script> 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