404NotFound_ Posted April 25, 2024 Share Posted April 25, 2024 Bonjour tout le monde, voilà j'ai fini de développé depuis quelques jour un module qui utilise l'API Google Maps pour autocompléter les adresse, il est 100% fonctionnel en local et sur un site de test également, sous le thème de base "classic" Je l'ai donc installer directement via le BO avec le dossier de mon module en .zip et je l'ai configuré. Et à ma grande surprise, il ne fonctionne pas. Et je remarque que sur l'enregistrement de mes script, seul l'appel à l'API fonctionne, pas pas l'appel à mon fichier JS de mon module, je vous partage l'extrait ci-dessous : public function hookActionFrontControllerSetMedia() { // Vérifier si nous sommes sur la page de commande ou de l'adresse $currentUrl = $_SERVER['REQUEST_URI']; if (strpos($currentUrl, '/commande') !== false || strpos($currentUrl, '/adresse') !== false) { $this->context->controller->registerJavascript( 'module-googleadressautocomplete', 'modules/' . $this->name . '/views/js/googleadressautocomplete.js', array('position' => 'bottom', 'priority' => 10) ); $countries = Configuration::get('GOOGLEADRESSAUTOCOMPLETE_COUNTRIES'); Media::addJsDef(array('autocompleteCountries' => explode(',', $countries))); $apiKey = Configuration::get('GOOGLEADRESSAUTOCOMPLETE_APIKEY'); $this->context->controller->registerJavascript( 'google_maps_api', 'https://maps.googleapis.com/maps/api/js?key=' . $apiKey . '&callback=initAutocomplete&libraries=places', array('server' => 'remote', 'position' => 'bottom', 'priority' => 20) ); } } la seconde partie est bien prises en compte et fonctionne, le script du lien de l'API est bien charger sur ma page, mais le premier bout de code qui veut injecter mon fichier javascript de mon module n'est pas récupérer sur le site. Comment est-ce possible ? Je m'arrache les cheveux depuis hier après-midi. Si quelqu'un à déjà eu le cas, ce serais cool, merci à vous et bonne journée ! Link to comment Share on other sites More sharing options...
Mediacom87 Posted April 25, 2024 Share Posted April 25, 2024 Il y a 2 heures, dydy59 a dit : if (strpos($currentUrl, '/commande') !== false || strpos($currentUrl, '/adresse') !== false) { Bonjour, je n'ai pas regardé plus, mais ce genre de test est foireux dans le sens où, qu'arrive-t-il si vous ajoutez une langue à la boutique ? Il est préférable de tester l'instance de l'objet chargé ou le pagename ou le phpself, enfin, quelque chose d'unique et stable. Link to comment Share on other sites More sharing options...
404NotFound_ Posted April 25, 2024 Author Share Posted April 25, 2024 6 minutes ago, Mediacom87 said: Bonjour, je n'ai pas regardé plus, mais ce genre de test est foireux dans le sens où, qu'arrive-t-il si vous ajoutez une langue à la boutique ? Il est préférable de tester l'instance de l'objet chargé ou le pagename ou le phpself, enfin, quelque chose d'unique et stable. J'ai testé en local et je penses que ça pourrait foirée, mais j'ai tester sans cette condition et même problème... 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