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