Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
etudiants:2014:beaugrand:doku [2014/11/17 12:10] – créée charly | etudiants:2014:beaugrand:doku [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | Diagramme | + | ====== DokuMission ====== |
+ | ===== Contexte ===== | ||
+ | ==== Développement ==== | ||
+ | Il s'agit d' | ||
+ | |||
+ | ==== Outils de développement ==== | ||
+ | * PHP/Mysql | ||
+ | * Doctrine pour le mappage relationnel/ | ||
+ | * CodeIgniter pour la mise en place MVC | ||
+ | |||
+ | ===== Travail fourni (Thème)===== | ||
+ | ==== Document ==== | ||
+ | |||
+ | |< 80% >| | ||
+ | ^ Libelle^Document^ | ||
+ | | Scénarii |{{: | ||
+ | | Base de donnée |{{: | ||
+ | | Application | {{: | ||
+ | | Application pour la classe | ||
+ | |||
+ | **Pour la classe**: {{: | ||
+ | ==== Diagramme de cas d' | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ==== Modéle MVC ==== | ||
+ | |||
+ | === Modéle === | ||
+ | |||
+ | Pour pouvoir travailler sur les thèmes, il a fallu agir sur 4 classes métier: | ||
+ | - Domaine | ||
+ | - Thème | ||
+ | - Document | ||
+ | - Utilisateur | ||
+ | |||
+ | * Un utilisateur est associé à des documents s'il en possède. | ||
+ | * Un utilisateur peut travailler dans un ou plusieurs domaines. | ||
+ | * Les documents sont identifiés dans des thèmes. | ||
+ | * Un thème appartient à un domaine. | ||
+ | * Un thème peut posséder un thème parent. | ||
+ | * Un thème appartient à un utilisateur. | ||
+ | |||
+ | |||
+ | === Vue === | ||
+ | |||
+ | Pour la gestion des thèmes, 3 vues sont utilisées: | ||
+ | * v_theme (Vue générale, liste les thèmes triés + formulaire d' | ||
+ | |||
+ | * v_confirmdeletetheme (La vue s' | ||
+ | {{: | ||
+ | |||
+ | * v_formdeletetheme (Avant suppression, | ||
+ | {{: | ||
+ | |||
+ | === Contrôleur === | ||
+ | |||
+ | La gestion des thèmes est effectuée dans Gtheme. Le contrôleur possède plusieurs méthode pour optimiser la mise en place des fonctionnalités. | ||
+ | |||
+ | |||
+ | |< 80% >| | ||
+ | ^ Méthodes^Description^ | ||
+ | | < | ||
+ | | < | ||
+ | | < | ||
+ | | < | ||
+ | | < | ||
+ | |< | ||
+ | | < | ||
+ | | < | ||
+ | | < | ||
+ | | < | ||
+ | |< | ||
+ | | < | ||
+ | |||
+ | |||
+ | === Librairie === | ||
+ | Appelée dans le constructeur : // | ||
+ | Utilisation de la librairie **ModelUtils**, | ||
+ | * cleanPost (nettoie les variables) | ||
+ | * ifempty (Reçoit un tableau pour vérifier chaque contenu, si vide, retourne false) | ||
+ | |||
+ | <sxh php; | ||
+ | <?php | ||
+ | /** | ||
+ | * Récupére un array puis vérifie si une variable est vide | ||
+ | * @param $params | ||
+ | * @return boolean | ||
+ | */ | ||
+ | public function ifempty($params=array()){ | ||
+ | $checked=true; | ||
+ | foreach ($params as $param){ | ||
+ | if($checked==true){ | ||
+ | if(empty($param)){ | ||
+ | $checked=false; | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | return $checked; | ||
+ | } | ||
+ | </ | ||
+ | ===== Requêtes doctrine utilisées ===== | ||
+ | |||
+ | Les méthodes doctrine sont appelées de la manière suivante : // | ||
+ | |||
+ | Pour un //Select multiple//: | ||
+ | |||
+ | <sxh php; | ||
+ | <?php | ||
+ | //Création de la requête paramétrée | ||
+ | $queryDomaine = $this-> | ||
+ | // | ||
+ | $queryDomaine-> | ||
+ | // | ||
+ | $domaine = $queryDomaine-> | ||
+ | </ | ||
+ | |||
+ | Pour un //Select// (une seul ligne) : | ||
+ | |||
+ | <sxh php; | ||
+ | <?php | ||
+ | | ||
+ | | ||
+ | // | ||
+ | | ||
+ | </ | ||
+ | |||
+ | Pour un //Update et Insert// : | ||
+ | |||
+ | <sxh php; | ||
+ | <?php | ||
+ | //Envoi d'une instance | ||
+ | $this-> | ||
+ | //Execution de la requête | ||
+ | $this-> | ||
+ | </ | ||
+ | ===== Jsutils ===== | ||
+ | |||
+ | __Liste des méthodes utilisées :__ | ||
+ | - // | ||
+ | - // | ||
+ | - //click// Lors d'un clique sur un élément on appelle une autre méthode | ||
+ | - //show// Affiche l' | ||
+ | - //hide// Cache l' | ||
+ | - //get// Effectue une redirection | ||
+ | - // | ||
+ | - //compile// Ajoute la portion de code écrite vers la vue |