22emilie22 Posted February 10, 2014 Share Posted February 10, 2014 bonjour à toutes et à tous. Je me permets de venir vers vous à la recherche d'une info concernant le fichier OrderController qui se trouve dans Controllers > Front > OrderController.php Je reprends le développement d'une adapation du code source, mais je butte sur un problème. En fait je voudrais savoir à quel moment le fichier orderController.php est appelé, le précédent développeur à ajouter une nouvelle méthode à la classe permettant de générer un fichier json à partir du catalogue et dans ce fichier dans la function initContent() il me semble que le fichier doit être généré ? Dans mon fichier OrderController class OrderControllerCore extends ParentOrderController { ... // dans la construction de cette classe il y a une fonction homemade qui à pour but de générer un fichier json pour une utilisation de panier virtuel avec tout mon catalogue public function generateBDCCache($collection_id = 0) { $tabzor = array(); ... // construction d'un fichier json à partir d'un tableau file_put_contents('cache_bdc_'.$collection_id.'.php', json_encode($tabzor)); } ... } // puis après j'ai l'appel à la génération de ce fichier public function initContent() { global $isVirtualCart; parent::initContent(); if (Tools::getValue('bdc') == 1) { $this->generateBDCCache(11); $this->generateBDCCache(12); $this->generateBDCCache(13); } $tabzor = json_decode(file_get_contents('cache_bdc_69.php'),true); ... } Ce que je ne saisi pas c'est à quel moment est appelé initContent ? A quel moment se fait donc la construction de mon fichier json ?? Je suis désolée je sais que ce n'est pas très clair, mais je n'arrive pas à comprendre à quel moment mon fichier json peut être généré. Merci beaucoup si vous pouvez m'aiguiller un tout petit peu Emilie. Link to comment Share on other sites More sharing options...
Prestaspirit Posted February 10, 2014 Share Posted February 10, 2014 Bonjour, C'est pourtant clair init comme initialisation content comme contenu cette méthode est donc appelé à l'initialisation du contenu, pour être plus précis elle est appelé après le constructeur, après la méthode init et avant toutes les autres méthodes de votre controller, c'est une méthode qui est appelé automatiquement par le controller principal. En espérant vous avoir aidé Link to comment Share on other sites More sharing options...
22emilie22 Posted February 10, 2014 Author Share Posted February 10, 2014 Bonjour et merci beaucoup pour votre réactivité. En fait ça me parait à peu près clair et ce que vous me dites confirme mes interrogations. Il y a quelque chose qui m'échappe alors. Au chargement de la page index.php de ma boutique, l'action $this->generateBDCCache(11); devrait appeler ma fonction public function generateBDCCache($collection_id = 0) { $tabzor = array(); ... // construction d'un fichier json à partir d'un tableau file_put_contents('cache_bdc_'.$collection_id.'.php', json_encode($tabzor)); } et ainsi généré un fichier JSON cache_bdc_11.php. Or il ne se passe rien, d'ailleurs le date de mise à jour de ce fichier est le 6 janvier 2014. J'ai l'impression que ces fichiers ne sont jamais généré. Auriez-vous un idée de ce qu'il peut se passer ? Merci d'avance. Emilie. Link to comment Share on other sites More sharing options...
Vinum Posted February 10, 2014 Share Posted February 10, 2014 Bonjour, L'appel de votre fonction se fait dans le ordercontroller qui n'est appelé que lorsqu'une commande est générée.Le ordercontroller n'est donc pas appelé au chargement de votre boutique. Vous avez un fichier qui a été créé le 6 janvier vraisemblablement parce qu'une commande a été créée ce jour là. Depuis vous ne devez pas avoir eu de commande. Voila pourquoi votre function generateBDCCache n'a pas été appelé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