opencart:modules
                Differences
This shows you the differences between two versions of the page.
| opencart:modules [2016/02/02 18:59] – created leo | opencart:modules [2016/02/04 15:03] (current) – leo | ||
|---|---|---|---|
| Line 14: | Line 14: | ||
| ^ |catalog/ | ^ |catalog/ | ||
| - | ===modèles basiques=== | + | =====modèles basiques===== | 
| - | ==vue== | + | ====admin==== | 
| - | < | + | ===controleur=== | 
| - | <?php echo $header; ?> | + | < | 
| + | class ControllerModuleBasicModule extends Controller { /* nom module à modifier */ | ||
| + | /* | ||
| + | 1. déclaration et assignation $error pour la gestion des erreurs | ||
| + | 2. fonction par défaut | ||
| + | 2.1. chargement du fichier de langage | ||
| + |     2.2.  assignements d' | ||
| + | 2.3. chargement du modèle de sauvegarde des données utilisé par les modules | ||
| + | 2.4. si envoie de données et bonne validation de celles-ci | ||
| + | 2.4.1. sauvegarde des données | ||
| + | 2.4.2. assignement du message de succès $success | ||
| + | 2.4.3. redirection vers la liste des modules | ||
| + | 2.5. assignement de variables générales | ||
| + | 2.5.1 langage | ||
| + | 2.5.2. positions | ||
| + | 2.5.3. layouts | ||
| + | 2.5.4. boutons | ||
| + | 2.5.5. spécifiques au module | ||
| + |     2.6.  assignement de la variable d' | ||
| + | 2.7. assignement de la variable de code erreur $error_code | ||
| + | 2.8. assignement de la variable $breadcrumbs et construction | ||
| + | 2.9. assignement des URL | ||
| + |       2.9.1.  | ||
| + |       2.9.2.  | ||
| + | 2.10. assignation des champs du formulaire depuis POST ou à défaut depuis BDD | ||
| + | 2.11. assignation des champs de paramétrage du module tels que layout, position, status & order, depuis POST ou à défaut depuis BDD | ||
| + |     2.12. chargement du modèle design/ | ||
| + | 2.13. assignement de la variable $layouts listants les layouts disponibles | ||
| + | 2.14. chargement du template | ||
| + |     2.15. ajout de modules enfant (header/ | ||
| + | 2.16. rendu du module | ||
| + | 3. fonction de validation | ||
| + | 3.1. vérification des permissions | ||
| + | 3.2. vérification si les champs sont bien renseignés et assignation du code erreur le cas échéant | ||
| + | 3.3. retour booléen (false si erreur) | ||
| + | */ | ||
| + | |||
| + | /* 1. déclaration et assignation $error pour la gestion des erreurs */ | ||
| + | private $error = array(); | ||
| + | /* 2. fonction par défaut */ | ||
| + | public function index() { | ||
| + |   /*  2.1.  chargement du fichier de langage  | ||
| + |     $this-> | ||
| + |     /*  2.2.  assignements du titre du module d' | ||
| + |     $this-> | ||
| + | /* 2.3. chargement du modèle de sauvegarde des données utilisé par les modules */ | ||
| + |     $this-> | ||
| + | /* 2.4. si envoie de données et bonne validation de celles-ci */ | ||
| + |       if (($this-> | ||
| + | /* 2.4.1. sauvegarde des données */ | ||
| + |         $this-> | ||
| + | /* 2.4.2. assignement du message de succès $success */ | ||
| + |         $this-> | ||
| + | /* 2.4.3. redirection vers la liste des modules */ | ||
| + |         $this-> | ||
| + | } | ||
| + | /* 2.5. assignement de variables générales */ | ||
| + | /* 2.5.1 langage */ | ||
| + |       $this-> | ||
| + | |||
| + |       $this-> | ||
| + |       $this-> | ||
| + | /* 2.5.2. positions */ | ||
| + |       $this-> | ||
| + |   		$this-> | ||
| + |   		$this-> | ||
| + |   		$this-> | ||
| + | /* 2.5.3. layouts */ | ||
| + |       $this-> | ||
| + |       $this-> | ||
| + |       $this-> | ||
| + |       $this-> | ||
| + | /* 2.5.4. boutons */ | ||
| + |       $this-> | ||
| + |       $this-> | ||
| + |       $this-> | ||
| + |       $this-> | ||
| + | /* 2.5.5. spécifiques au module */ | ||
| + |       $this-> | ||
| + |     /*  2.6.  assignement de la variable d' | ||
| + |     if (isset($this-> | ||
| + |       $this-> | ||
| + | } else { | ||
| + |       $this-> | ||
| + | } | ||
| + | /* 2.7. assignement de la variable de code erreur $error_code */ | ||
| + |     if (isset($this-> | ||
| + |         $this-> | ||
| + | } else { | ||
| + |         $this-> | ||
| + | } | ||
| + | /* 2.8. assignement de la variable $breadcrumbs et construction */ | ||
| + |     $this-> | ||
| + | |||
| + |     $this-> | ||
| + |         ' | ||
| + |         ' | ||
| + |         ' | ||
| + | ); | ||
| + | |||
| + |     $this-> | ||
| + |         ' | ||
| + |         ' | ||
| + |         ' | ||
| + | ); | ||
| + | |||
| + |     $this-> | ||
| + |         ' | ||
| + |         ' | ||
| + |         ' | ||
| + | ); | ||
| + | /* 2.9. assignement des URL */ | ||
| + |       /*  2.9.1.  | ||
| + |     $this-> | ||
| + |       /*  2.9.2.  | ||
| + |     $this-> | ||
| + | /* 2.10. assignation des champs du formulaire depuis POST ou à défaut depuis BDD */ | ||
| + |     if (isset($this-> | ||
| + |         $this-> | ||
| + | } else { | ||
| + |         $this-> | ||
| + | } | ||
| + | /* 2.11. assignation des champs de paramétrage du module tels que layout, position, status & order, depuis POST ou à défaut depuis BDD */ | ||
| + |     $this-> | ||
| + | |||
| + |     if (isset($this-> | ||
| + |         $this-> | ||
| + |     } elseif ($this-> | ||
| + |         $this-> | ||
| + | } | ||
| + |     /*  2.12. chargement du modèle design/ | ||
| + |     $this-> | ||
| + | /* 2.13. assignement de la variable $layouts listants les layouts disponibles */ | ||
| + |     $this-> | ||
| + | /* 2.14. chargement du template */ | ||
| + |     $this-> | ||
| + |     /*  2.15. ajout de modules enfant (header/ | ||
| + |     $this-> | ||
| + |         ' | ||
| + |         ' | ||
| + | ); | ||
| + | /* 2.16. rendu du module */ | ||
| + |     $this-> | ||
| + | } | ||
| + | |||
| + | /* 3. fonction de validation */ | ||
| + | protected function validate() { | ||
| + | /* | ||
| + | 3.1. vérification des permissions | ||
| + | */ | ||
| + |     if (!$this-> | ||
| + |         $this-> | ||
| + | } | ||
| + | /* | ||
| + | 3.2. vérification si les champs sont bien renseignés et assignation du code erreur le cas échéant | ||
| + | */ | ||
| + |     if (!$this-> | ||
| + |         $this-> | ||
| + | } | ||
| + | /* | ||
| + | 3.3. retour booléen (false si erreur) | ||
| + | */ | ||
| + |     if (!$this-> | ||
| + | return true; | ||
| + | } else { | ||
| + | return false; | ||
| + | } | ||
| + | } | ||
| + | |||
| + | } | ||
| + | ?> | ||
| + | </ | ||
| + | ===vue=== | ||
| + | < | ||
| <div id=" | <div id=" | ||
| + | |||
| + | <!-- | ||
| + | BREADCRUMBS | ||
| + | --> | ||
|   <div class=" |   <div class=" | ||
| + | <?php foreach ($breadcrumbs as $breadcrumb) { ?> | ||
| + |       <?php echo $breadcrumb[' | ||
| + | <?php } ?> | ||
| + |   </ | ||
| + | |||
| + | <!-- | ||
| + | WARNINGS | ||
| + | --> | ||
| + | <?php if ($error_warning) { ?> | ||
| + |       <div class=" | ||
| + | <?php } ?> | ||
| + | |||
| + | <!-- | ||
| + | HEADER : titre + boutons sauvegarder et modifier | ||
| + | --> | ||
| + |   <div class=" | ||
| + |     <div class=" | ||
| + |       < | ||
| + |       <div class=" | ||
| + |     </ | ||
| + |   </ | ||
| + | |||
| + | <!-- | ||
| + | CONTENU : formulaire | ||
| + | --> | ||
| + | |||
| + |   <div class=" | ||
| + |     <form action="<? | ||
| + | <!-- | ||
| + | champ texte | ||
| + | --> | ||
| + | <table class=" | ||
| + | <tr> | ||
| + |     < | ||
| + |     < | ||
| + | <?php if ($error_code) { ?> | ||
| + |       <span class=" | ||
| + |       <?php } ?></ | ||
| + | </tr> | ||
| + | </ | ||
| + | <!-- | ||
| + | Paramètres du module : layout, position, status, ordre | ||
| + | --> | ||
| + |       <table id=" | ||
| + |         < | ||
| + | <tr> | ||
| + |             <td class=" | ||
| + |             <td class=" | ||
| + |             <td class=" | ||
| + |             <td class=" | ||
| + |             < | ||
| + | </tr> | ||
| + |         </ | ||
| + | <?php $module_row = 0; ?> | ||
| + | <?php foreach ($modules as $module) { ?> | ||
| + |         <tbody id=" | ||
| + | <tr> | ||
| + |             <td class=" | ||
| + | <?php foreach ($layouts as $layout) { ?> | ||
| + |                 <?php if ($layout[' | ||
| + |                 <option value="<? | ||
| + | <?php } else { ?> | ||
| + |                 <option value="<? | ||
| + | <?php } ?> | ||
| + | <?php } ?> | ||
| + |               </ | ||
| + |             <td class=" | ||
| + |                 <?php if ($module[' | ||
| + |                 <option value=" | ||
| + | <?php } else { ?> | ||
| + |                 <option value=" | ||
| + | <?php } ?> | ||
| + |                 <?php if ($module[' | ||
| + |                 <option value=" | ||
| + | <?php } else { ?> | ||
| + |                 <option value=" | ||
| + | <?php } ?> | ||
| + |                 <?php if ($module[' | ||
| + |                 <option value=" | ||
| + | <?php } else { ?> | ||
| + |                 <option value=" | ||
| + | <?php } ?> | ||
| + |                 <?php if ($module[' | ||
| + |                 <option value=" | ||
| + | <?php } else { ?> | ||
| + |                 <option value=" | ||
| + | <?php } ?> | ||
| + |               </ | ||
| + |             <td class=" | ||
| + |                 <?php if ($module[' | ||
| + |                 <option value=" | ||
| + |                 <option value=" | ||
| + | <?php } else { ?> | ||
| + |                 <option value=" | ||
| + |                 <option value=" | ||
| + | <?php } ?> | ||
| + |               </ | ||
| + |             <td class=" | ||
| + |             <td class=" | ||
| + | </tr> | ||
| + |         </ | ||
| + |         <?php $module_row++; | ||
| + | <?php } ?> | ||
| + |         < | ||
| + | <tr> | ||
| + |             <td colspan=" | ||
| + |             <td class=" | ||
| + | </tr> | ||
| + |         </ | ||
| + |       </ | ||
| + | |||
| + |     </ | ||
|   </ |   </ | ||
| </ | </ | ||
| + | |||
| + | <!-- | ||
| + | JAVASCRIPT : gestion des paramètres du module | ||
| + | --> | ||
| + | <script type=" | ||
| + | var module_row = <?php echo $module_row; | ||
| + | |||
| + | function addModule() { | ||
| + |     html  = '< | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + | <?php foreach ($layouts as $layout) { ?> | ||
| + |     html += '  | ||
| + | <?php } ?> | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + |     html += '  | ||
| + |     html += '</ | ||
| + | |||
| + |     $('# | ||
| + | |||
| + |     module_row++; | ||
| + | } | ||
| + | </ | ||
| <?php echo $footer; ?> | <?php echo $footer; ?> | ||
| </ | </ | ||
| - | ==controleur== | + | ===fichiers de langue=== | 
| - | < | + | < | 
| - | class ControllerModuleNomModule extends Controller { | + | |
| - | // class ControllerModule<NomModuleCamelCaseSansUnderscores> | + | |
| - |   private  | + | /* Minimal elements */ | 
| - |    | + | |
| - | // fonction par default | + | // Heading | 
| - | } | + | $_[' | 
| - | + | // Text | |
| - |    | + | $_[' | 
| - | // autre fonction, ici validation | + | $_[' | 
| - |    | + | $_[' | 
| - | + | $_[' | |
| - | } | + | $_[' | 
| + | $_[' | ||
| + | //   | ||
| + | $_[' | ||
| + | $_[' | ||
| + | $_[' | ||
| + | $_[' | ||
| + | // Errors | ||
| + | $_[' | ||
| + | |||
| + | /* Custom Inputs */ | ||
| + | // Text | ||
| + | // Inputs | ||
| + | $_[' | ||
| + | // Errors | ||
| + | $_[' | ||
| + | ?> | ||
| </ | </ | ||
| - | ==fichier de langue== | ||
| - | < | ||
| - | <?php | ||
| - | // titre | + | < | 
| - | $_[' | + | |
| - | // Élément textuels, labels... | + | /* Minimal elements */ | 
| - | $_[' | + | |
| - | // Inputs | + | //   | 
| - | $_['entry_element' | + | $_[' | 
| + | // Text | ||
| + | $_[' | ||
| + | $_[' | ||
| + | $_[' | ||
| + | $_[' | ||
| + | $_[' | ||
| + | $_[' | ||
| + | //   | ||
| + | $_['entry_layout' | ||
| + | $_[' | ||
| + | $_[' | ||
| + | $_[' | ||
| + | // Errors | ||
| + | $_[' | ||
| - | // Messages d'erreur | + | /* Custom Inputs */ | 
| - | $_['error_element' | + | // Text | 
| + | // Inputs | ||
| + | $_['entry_text_field' | ||
| + | // Errors | ||
| + | $_['error_text_field' | ||
| + | ?> | ||
| + | </ | ||
| + | ====catalog==== | ||
| + | ===controleur=== | ||
| + | < | ||
| + | class ControllerModuleBasicModule extends Controller { /* nom module à modifier */ | ||
| + | public function index() { | ||
| + | /* optionnel : fichier de langage | ||
| + |     $this-> | ||
| + | // récupération des éléments de langue | ||
| + |     $this-> | ||
| + | */ | ||
| + | /* récupération de la valeur enregistrée */ | ||
| + |     $this-> | ||
| + | |||
| + | /* chemin de la vue */ | ||
| + |     $this-> | ||
| + | |||
| + | /* rendu */ | ||
| + |     $this-> | ||
| + | } | ||
| + | } | ||
| ?> | ?> | ||
| </ | </ | ||
| + | ===vue=== | ||
| + | < | ||
| + | ===fichiers de langue (optionnels)=== | ||
| + | < | ||
| + | // optional language file | ||
| + | ?></ | ||
opencart/modules.1454435945.txt.gz · Last modified: 2016/02/02 18:59 by leo