Flo_180 Posted May 27, 2013 Share Posted May 27, 2013 Bonjour, Merci de prendre du temps pour lire mon Post. Je n'ai toujours pas réussi à comprendre la marche à suivre pour installer un nouveau contrôleur lors de l'installation d'un module. Pour faire simple : Faut il le déplacer manuellement dans le dossier correspondant ( controllers/front/ ou controllers/admin) et mettre à jour manuellement le cache de l'index des tables Ou utiliser la fonction installOverride classique (ce qui me semble détourné l'utilisation de cette fonction). Mais voilà : La fonction ci-dessous ne prend en compte que la surcharge d'élément déjà existant. Alors que dois je faire pour créer de nouveaux contrôleur ? public function installOverrides() { if (!is_dir($this->getLocalPath().'override')) return true; $result = true; foreach (Tools::scandir($this->getLocalPath().'override', 'php', '', true) as $file) { $class = basename($file, '.php'); if (Autoload::getInstance()->getClassPath($class.'Core')) $result &= $this->addOverride($class); } return $result; } Merci à vous ! Bonne journée Link to comment Share on other sites More sharing options...
J. Danse Posted May 27, 2013 Share Posted May 27, 2013 Voici un exemple de code à placer dans la méthode install() du module: // Install Tabs $parent_tab = new Tab(); $parent_tab->name = 'Main Tab Example'; $parent_tab->class_name = 'AdminMainExample'; $parent_tab->id_parent = 0; // Home tab $parent_tab->module = $this->name; $parent_tab->add(); $tab = new Tab(); $tab->name = 'Tab Example'; $tab->class_name = 'AdminExample'; $tab->id_parent = $parent_tab->id; $tab->module = $this->name; $tab->add(); Et mon controller se situe dans /controllers/admin/ et se nomme AdminExampleController.php Link to comment Share on other sites More sharing options...
Flo_180 Posted May 27, 2013 Author Share Posted May 27, 2013 Merci pour ta réponse, Elle répond au problème de l'adminController mais pas du frontController me semble t-il, As tu une solution ? Merci. Link to comment Share on other sites More sharing options...
J. Danse Posted May 27, 2013 Share Posted May 27, 2013 Toutes mes excuses, je n'ai pas fait attention au /front ;-) Pour celui-ci, il doit être placé dans /controllers/front/ du module et se nomme (par exemple) default.php (si le controller est de cette trempe MonModuleDefaultModuleFrontController). Avec, éventuellement, la possibilité de rajouter l'URL Rewriting au moment de l'installation (attention à ce code, cela dit !): // Add Rewriting URL $meta = new Meta(); $meta->page = 'module-monmodule-default'; $meta->url_rewrite = 'monmodulerewrite'; $meta->add(); Link to comment Share on other sites More sharing options...
Flo_180 Posted May 27, 2013 Author Share Posted May 27, 2013 (edited) Merci pour les explications et les bouts de code Mais tant que tu es ici autant en profité lol, Avec, éventuellement, la possibilité de rajouter l'URL Rewriting au moment de l'installation (attention à ce code, cela dit !): // Add Rewriting URL $meta = new Meta(); $meta->page = 'module-monmodule-default'; $meta->url_rewrite = 'monmodulerewrite'; $meta->add(); Tu me donnes cet avertissement parce que l'url_rewriting' est surchargé par le hookModuleRoute non ? Merci. Edited May 27, 2013 by Flo_180 (see edit history) Link to comment Share on other sites More sharing options...
J. Danse Posted May 27, 2013 Share Posted May 27, 2013 Non, seulement parce que dans mon exemple d'illustration je l'avais commenté et donc il devait y avoir une raison pour Plus sérieusement, je sais que ce code fonctionne à l'installation mais ça me posait problème pour le retrait en automatique ;-) Link to comment Share on other sites More sharing options...
Flo_180 Posted May 27, 2013 Author Share Posted May 27, 2013 D'accord Merci et bonne fin de journée. 1 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