Correction nom de repo+module 'users' > 'user'. Correction token local plus utile (car même session php/js)
This commit is contained in:
parent
d6eef611b4
commit
fae96b0fe5
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
|
||||
"users": {
|
||||
"user": {
|
||||
"login": {
|
||||
"description": "Connexion avec un login (identifiant ou adresse mail) et un mot de passe.",
|
||||
"permissions": [],
|
||||
|
@ -14,6 +14,13 @@
|
|||
"description": "Deconnexion",
|
||||
"permissions": [],
|
||||
"parameters": {}
|
||||
},
|
||||
|
||||
|
||||
"getById": {
|
||||
"description": "Retourne les informations d'un utilisateur d'id donne.",
|
||||
"permissions": ["admin"],
|
||||
"parameters": { "id_user" : "id" }
|
||||
}
|
||||
},
|
||||
|
||||
|
|
|
@ -1,7 +1,11 @@
|
|||
{
|
||||
|
||||
"users": [
|
||||
"login"
|
||||
"user": [
|
||||
"login",
|
||||
"getById",
|
||||
"getAll",
|
||||
"create",
|
||||
"remove"
|
||||
],
|
||||
|
||||
"Personnes": [
|
||||
|
|
|
@ -40,7 +40,7 @@
|
|||
|
||||
// Si les parametres de connection, on essaie de connecter
|
||||
if( $login_vars ){
|
||||
$login = new ModuleRequest('users/login', array( 'login' => $_POST['login'], 'password' => $_POST['password'] ));
|
||||
$login = new ModuleRequest('user/login', array( 'login' => $_POST['login'], 'password' => $_POST['password'] ));
|
||||
$login_ans = $login->dispatch();
|
||||
|
||||
// Si aucune erreur, on dit qu'on vient de se connecter
|
||||
|
@ -56,7 +56,7 @@
|
|||
|
||||
// Si on se deconnecte
|
||||
if( $logout_vars ){
|
||||
$logout = new ModuleRequest('users/logout');
|
||||
$logout = new ModuleRequest('user/logout');
|
||||
$logout_ans = $logout->dispatch();
|
||||
|
||||
// Si aucune erreur, on dit qu'on vient de se deconnecter
|
||||
|
|
|
@ -194,6 +194,7 @@
|
|||
=========================================================*/
|
||||
// Si variable n'existe pas, on cree un tableau vide
|
||||
$params = $post;
|
||||
|
||||
// On retire le @path de @params
|
||||
unset($params['path']);
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
use \manager\ManagerError;
|
||||
use \manager\Repo;
|
||||
|
||||
class users{
|
||||
class user{
|
||||
|
||||
|
||||
/* VERIFICATION DES LOGINS D'UN UTILISATEUR
|
||||
|
@ -20,7 +20,7 @@
|
|||
public static function login($login, $password){
|
||||
/* [1] On verifie les logins
|
||||
=========================================================*/
|
||||
$check = new Repo('users/login', array($login, $password));
|
||||
$check = new Repo('user/login', array($login, $password));
|
||||
$user = $check->answer();
|
||||
|
||||
// Si le login/password est incorrect, on retourne une erreur
|
||||
|
@ -54,13 +54,44 @@
|
|||
$_SESSION['permission'] = array();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* RETOURNE L'UTILISATEUR D'ID DONNE
|
||||
*
|
||||
* @id_user<int> UID de l'utilisateur en question
|
||||
*
|
||||
* @return user<Array> Tableau contenant les informations de l'utilisateur
|
||||
*
|
||||
*/
|
||||
public static function getById($user_id){
|
||||
/* [1] On recupere les donnees de l'utilisateur
|
||||
=========================================================*/
|
||||
$getUser = new Repo('user/getById', array($user_id));
|
||||
$user_data = $getUser->answer();
|
||||
|
||||
// Si aucun utilisateur n'est trouve
|
||||
if( $user_data === false ) return array('ModuleError' => ManagerError::ModuleError);
|
||||
|
||||
|
||||
/* [2] On met les permissions au bon format (string -> array)
|
||||
=========================================================*/
|
||||
$user_data['permission'] = explode( ',', str_replace(' ', '', $user_data['permission']) );
|
||||
|
||||
/* [3] Gestion du retour
|
||||
=========================================================*/
|
||||
return array(
|
||||
'ModuleError' => ManagerError::Success,
|
||||
'user' => $user_data
|
||||
);
|
||||
}
|
||||
|
||||
// [x] "login",
|
||||
// [x] "logout",
|
||||
// [ ] "getById",
|
||||
// [x] "getById",
|
||||
// [ ] "getAll",
|
||||
|
||||
// [ ] "create",
|
||||
// [ ] "edit",
|
||||
// [ ] "remove",
|
||||
|
||||
}
|
|
@ -85,12 +85,7 @@
|
|||
if( !Database::check('sha1', $token) ) return false;
|
||||
|
||||
|
||||
/* [1] Verification du token local
|
||||
=========================================================*/
|
||||
if( substr($_SESSION['session_token'], 0, 40) == $token ) return true;
|
||||
|
||||
|
||||
/* [2] Verification dans la base de donnees
|
||||
/* [1] Verification dans la base de donnees
|
||||
=========================================================*/
|
||||
$check = Database::getPDO()->prepare("SELECT id_token, permission
|
||||
FROM api_token
|
||||
|
@ -104,7 +99,7 @@
|
|||
if( $token_info === false ) return false;
|
||||
|
||||
|
||||
/* [3] On retourne le resultat (les permissions du token)
|
||||
/* [2] On retourne le resultat (les permissions du token)
|
||||
=========================================================*/
|
||||
return explode( ',', str_replace(' ', '', $token_info['permission']) );
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
namespace manager\repo;
|
||||
use \manager\Database;
|
||||
|
||||
class users{
|
||||
class user{
|
||||
|
||||
|
||||
/* VERIFICATION DU LOGIN/PASSWORD D'UN UTILISATEUR
|
||||
|
@ -43,10 +43,41 @@
|
|||
|
||||
|
||||
// On retourne le resultat
|
||||
return $result;
|
||||
return Database::delNumeric( $result );
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* RETOURNE LES DONNEES D'UN UTILISATEUR D'ID DONNE
|
||||
*
|
||||
* @id_user<int> UID de l'utilisateur en question
|
||||
*
|
||||
* @return user<Array> Tableau contenant les donnees de l'utilisateur s'il existe sinon retourne FALSE
|
||||
*
|
||||
*/
|
||||
public static function getById($id_user){
|
||||
/* [1] On effectue la requete
|
||||
=========================================================*/
|
||||
$getUser = Database::getPDO()->prepare("SELECT id_user, login, mail, permission
|
||||
FROM users
|
||||
WHERE id_user = :id_user");
|
||||
$getUser->execute(array( ':id_user' => $id_user ));
|
||||
|
||||
|
||||
/* [2] On recupere le resultat de la requete
|
||||
=========================================================*/
|
||||
$userData = $getUser->fetch();
|
||||
|
||||
// Si l'utilisateur n'existe pas, on retourne FALSE
|
||||
if( $userData === false ) return false;
|
||||
|
||||
/* [3] Gestion du retour
|
||||
=========================================================*/
|
||||
return Database::delNumeric( $userData );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue