che2a Posted August 8, 2014 Share Posted August 8, 2014 Bonjour, Je commence à étudier prestashop, je suivi l'exemple de la doc pour le premier module. Le formulaire de configuration ne s'affiche pas, j'ai essayé avec displayForm() et renderForm() Je n'ai pas trouvé de solution. Je suis sous MAMP en local Merci de votre aide. Mon code : public function getContent() { $output = null; if (Tools::isSubmit('submit'.$this->name)) { $my_module_name = strval(Tools::getValue('MYMODULE_NAME')); if (!$my_module_name || empty($my_module_name) || !Validate::isGenericName($my_module_name)) $output.= $this->displayError($this->l('Invalid configuration value')); else { Configuration::updateValue('MYMODULE_NAME', $my_module_name); $output .= $this->displayConfirmation($this->l('Setting updated')); } } return $output.$this->renderForm(); } public function renderForm() { // Get default language $default_lang = (int)Configuration::get('PS_LANG_DEFAULT'); // Init fields from array $fields_form[0]['form'] = array( 'legend' => array( 'title' => $this->l('Settings'), ), 'input' => array( 'type' => 'text', 'label' => $this->l('Configuration value'), 'name' => 'MYMODULE_NAME', 'size' => 20, 'required' => true ), 'submit' => array ( 'title' => $this->l('Save'), 'class' => 'button', ) ); $helper = new HelperForm(); // Module, token and currentIndex $helper->module = $this; $helper->name_controller = $this->name; $helper->token = Tools::getAdminTokenLite('AdminModules'); $helper->currentIndex = AdminController::$currentIndex.'&configure='.$this->name; // Language $helper->default_form_language = $default_lang; $helper->allow_employee_form_lang = $default_lang; // Title and tooblar $helper->title = $this->displayName; $helper->show_toolbar = true; $helper->toolbar_scroll = true; $helper->submit_action = 'submit'.$this->name; $helper->toolbar_btn = array( 'save' => array( 'desc' => $this->l('Save'), 'href' => AdminController::$currentIndex.'&configure='.$this->name.'&save'.$this->name. '&token='.Tools::getAdminTokenLite('AdminModules'), ), 'back' => array( 'href' => AdminController::$currentIndex.'&token='.Tools::getAdminTokenLite('AdminModules'), 'desc' => $this->l('Back to list') ) ); // Load current value $helper->fields_value['MYMODULE_NAME'] = Configuration::get('MYMODULE_NAME'); return $helper->generateForm($fields_form); } Link to comment Share on other sites More sharing options...
Fernand WAFO Posted August 8, 2014 Share Posted August 8, 2014 Bonjour, Je n'ai pas regarder votre code, mais il faut activer l'affichage des erreurs, désactiver le cache et activer la recompilation. Cela pourra t'aider à voir le problème toi-même. Cdt, 1 Link to comment Share on other sites More sharing options...
EISEAL Posted August 8, 2014 Share Posted August 8, 2014 Salut, Dans ta fonction renderForm(), tu as mis : 'input' => array( 'type' => 'text', 'label' => $this->l('Configuration value'), 'name' => 'MYMODULE_NAME', 'size' => 20, 'required' => true ), Mais il faut mettre : 'input' => array( array( 'type' => 'text', 'label' => $this->l('Configuration value'), 'name' => 'MYMODULE_NAME', 'size' => 20, 'required' => true )), Ca devait être mieux 1 Link to comment Share on other sites More sharing options...
che2a Posted August 8, 2014 Author Share Posted August 8, 2014 Super ! Merci à vous ! Je vais pouvoir continuer 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