From d94cb13f21aed2e386d59e90dafafc2b4dc4b23b Mon Sep 17 00:00:00 2001 From: xdrm-brackets Date: Sun, 14 Feb 2016 15:53:59 +0100 Subject: [PATCH] - [x] [repo/cluster] getMembers - [x] Conception BDD + ameliorations - [x] Liste des tables - [x] Liste de attributs - [x] Attributs statiques - [x] utilisateur - [x] machine - [x] cluster - [x] journal - [x] Attributs dynamiques - [x] les options - [x] les addons des attributs statiques - [x] Ameliorations et genericite possibles --- automate.php | 2 ++ config/repositories.json | 4 ++- manager/repo/cluster.php | 55 ++++++++++++++++++++++++++++++++++++++++ todo.md | 27 ++++++++++---------- 4 files changed, 73 insertions(+), 15 deletions(-) diff --git a/automate.php b/automate.php index 3a3e97d..9d9ee13 100755 --- a/automate.php +++ b/automate.php @@ -268,4 +268,6 @@ return true; }//getUserClusters(); + + ?> \ No newline at end of file diff --git a/config/repositories.json b/config/repositories.json index 493c82e..d47d9ae 100755 --- a/config/repositories.json +++ b/config/repositories.json @@ -33,7 +33,9 @@ "getByName", "getMerge", - "getMembers" + "getMembers", + + "delete" ] } \ No newline at end of file diff --git a/manager/repo/cluster.php b/manager/repo/cluster.php index 4b4d1d8..0278e94 100755 --- a/manager/repo/cluster.php +++ b/manager/repo/cluster.php @@ -310,6 +310,61 @@ + /* RENVOIE LES MEMBRES D'UN GROUPE DONNE + * + * @id_cluster UID du groupe en question + * + * @return members Retourne la liste des membres du groupe + * + */ + public static function getMembers($id_cluster){ + /* [1] On recupere la liste des associations + =========================================================*/ + $get_members = Database::getPDO()->prepare("SELECT * FROM cluster_merge + WHERE id_cluster = :id_cluster + ORDER BY id_cluster_merge"); + $get_members->execute(array( + ':id_cluster' => $id_cluster + )); + + $members = Database::delNumeric( $get_members->fetchAll() ); + + /* [2] On formatte recupere les entites + =========================================================*/ + foreach($members as $i=>$member){ + + /* (1) On recupere les informations utilisateur */ + if( $member['class'] == self::USER_CLASS ){ + $get_user = userRepo::getById( $member['id_entity'] ); + + // Si on a bien recu les informations, on les ajoute + if( $get_user !== false ) + $members[$i] = array_merge($member, $get_user ); + + + /* (2) On recupere les informations machine */ + }elseif( $member['class'] == self::MACHINE_CLASS ){ + $get_machine = machineRepo::getById( $member['id_entity'] ); + + // Si on a bien recu les informations, on les ajoute + if( $get_machine !== false ) + $members[$i] = array_merge($member, $get_machine ); + } + + } + + /* [2] On verifie que le groupe n'existe plus + =========================================================*/ + return $members; + } + + + + + + + + /* SUPPRIME UN GROUPE DONNE * * @id_cluster UID du groupe en question diff --git a/todo.md b/todo.md index eda6cd4..c49b826 100755 --- a/todo.md +++ b/todo.md @@ -15,25 +15,24 @@ ############ - [ ] Prendre en compte au lieu de SERVER['HTTP_HOST'] l'hote et son dossier source - [ ] Gestion de l'erreur de chargement ou erreur de nav (page-manager) -- [.] [/users/view] Affichage basique de liste d'elements complexes (users/machines/journal, ...) - - [.] [/machines/view] Idem -- [x] Conception BDD + ameliorations - - [x] Liste des tables - - [x] Liste de attributs - - [ ] Attributs statiques - - [x] utilisateur (id, ) - - machine - - journal - - [ ] Attributs dynamiques - - les options - - les addons des attributs statiques - - - [ ] Ameliorations et genericite possibles ######## # FAIT # ######## +- [x] [repo/cluster] getMembers +- [x] Conception BDD + ameliorations + - [x] Liste des tables + - [x] Liste de attributs + - [x] Attributs statiques + - [x] utilisateur + - [x] machine + - [x] cluster + - [x] journal + - [x] Attributs dynamiques + - [x] les options + - [x] les addons des attributs statiques + - [x] Ameliorations et genericite possibles - [x] [modules/+repo/]Conflit des id_user et id_machine dans les cluster a regler - [x] [view/user] Lien "mailto" pour les mail des utilisateurs - [x] [modules/] Extension des modules aux repos