diff --git a/config/modules.json b/config/modules.json index e11fcde..03e662f 100755 --- a/config/modules.json +++ b/config/modules.json @@ -18,7 +18,7 @@ "getById": { - "description": "Retourne les informations d'un utilisateur d'id donne.", + "description": "Retourne les informations d'un utilisateur.", "permissions": ["admin"], "parameters": { "id_user": { "description": "UID de l'utilisateur recherche.", "type": "id" } @@ -43,6 +43,15 @@ "reference" : { "description": "UID d'une personne d'un sondage, peut etre vide.", "type": "text" }, "permissions": { "description": "Liste des permissions de l'utilisateur.", "type": "text" } } + }, + + + "remove": { + "description": "Suppression d'un utilisateur.", + "permissions": ["admin"], + "parameters": { + "id_user": { "description": "UID de l'utilisateur", "type": "id" } + } } }, diff --git a/manager/module/token.php b/manager/module/token.php index 2141293..6f96a38 100755 --- a/manager/module/token.php +++ b/manager/module/token.php @@ -16,8 +16,6 @@ * * @id_token UID du token en question * - * @return status Retourne l'etat de la suppression (VRAI -> fait/FAUX -> erreur) - * */ public static function remove($id_token){ /* [1] Suppression du token diff --git a/manager/module/user.php b/manager/module/user.php index 38145f5..606e256 100755 --- a/manager/module/user.php +++ b/manager/module/user.php @@ -120,7 +120,7 @@ - /* CREE UN UTILISATEUR + /* CREATION D'UN UTILISATEUR * * @login Login (identifiant) de l'utilisateur * @password Password de l'utilisateur @@ -154,12 +154,49 @@ ); } + + + + + /* SUPPRESSION D'UN UTILISATEUR + * + * @id_user UID de l'utilisateur en question + * + */ + public static function remove($id_user){ + /* [1] On verifie que l'utilisateur existe + =========================================================*/ + $exists = new Repo('user/getById', array($id_user)); + $exists_status = $exists->answer(); + + // Si l'utilisateur n'existe pas, on retourne une erreur + if( $exists_status === false ) return array( 'ModuleError' => ManagerError::ModuleError ); + + /* [2] Suppression de l'utilisateur + =========================================================*/ + $remove = new Repo('user/remove', array($id_user)); + $remove_status = $remove->answer(); + + + /* [3] On verifie que l'utilisateur est bien supprime + =========================================================*/ + $removed = new Repo('user/getById', array($id_user)); + $removed_status = $removed->answer(); + + // Si l'utilisateur n'existe pas, on retourne une erreur + if( $removed_status !== false ) return array( 'ModuleError' => ManagerError::ModuleError ); + + + /* [4] Gestion du retour + =========================================================*/ + return array( 'ModuleError' => ManagerError::Success ); + } + // [x] "login", // [x] "logout", // [x] "getById", - // [ ] "getAll", - - // [ ] "create", + // [x] "getAll", + // [x] "create", // [ ] "remove", } diff --git a/manager/repo/user.php b/manager/repo/user.php index 6b32bec..b7e04d0 100755 --- a/manager/repo/user.php +++ b/manager/repo/user.php @@ -211,6 +211,26 @@ return $id_user['id_user']; } + + + + + + + + + /* SUPRESSION D'UN UTILISATEUR D'ID DONNE + * + * @id_user UID de l'utilisateur en question + * + */ + public static function remove($id_user){ + /* [1] On effectue la suppression + =========================================================*/ + $getUser = Database::getPDO()->prepare("DELETE FROM users WHERE id_user = :id_user"); + $getUser->execute(array( ':id_user' => $id_user )); + } + } diff --git a/view/js/settings.js b/view/js/settings.js index c451fe1..77c79bb 100644 --- a/view/js/settings.js +++ b/view/js/settings.js @@ -169,12 +169,11 @@ for( var i = 0 ; i < USERS.remove.buttons.length ; i++ ){ /* (2.2) On lance la suppression */ var request = { // on ecrit la requete 'path': 'user/remove', - 'user_id': user_id + 'id_user': user_id }; // On lance la requete api.send(request, function(answer){ - console.log(answer); // Si la suppression effectuee, on recharge la page if( answer.ModuleError == 0 ) reload(); diff --git a/view/settings.php b/view/settings.php index a1baa08..f5b46cb 100755 --- a/view/settings.php +++ b/view/settings.php @@ -137,7 +137,6 @@ if( permission('admin') ){ echo "
"; echo "".$user['login'].""; echo "".$user['mail'].""; - echo "".implode(", ", $user['permission']).""; echo "
"; echo "";