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": {
|
"login": {
|
||||||
"description": "Connexion avec un login (identifiant ou adresse mail) et un mot de passe.",
|
"description": "Connexion avec un login (identifiant ou adresse mail) et un mot de passe.",
|
||||||
"permissions": [],
|
"permissions": [],
|
||||||
|
@ -14,6 +14,13 @@
|
||||||
"description": "Deconnexion",
|
"description": "Deconnexion",
|
||||||
"permissions": [],
|
"permissions": [],
|
||||||
"parameters": {}
|
"parameters": {}
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
"getById": {
|
||||||
|
"description": "Retourne les informations d'un utilisateur d'id donne.",
|
||||||
|
"permissions": ["admin"],
|
||||||
|
"parameters": { "id_user" : "id" }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,11 @@
|
||||||
{
|
{
|
||||||
|
|
||||||
"users": [
|
"user": [
|
||||||
"login"
|
"login",
|
||||||
|
"getById",
|
||||||
|
"getAll",
|
||||||
|
"create",
|
||||||
|
"remove"
|
||||||
],
|
],
|
||||||
|
|
||||||
"Personnes": [
|
"Personnes": [
|
||||||
|
|
|
@ -40,7 +40,7 @@
|
||||||
|
|
||||||
// Si les parametres de connection, on essaie de connecter
|
// Si les parametres de connection, on essaie de connecter
|
||||||
if( $login_vars ){
|
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();
|
$login_ans = $login->dispatch();
|
||||||
|
|
||||||
// Si aucune erreur, on dit qu'on vient de se connecter
|
// Si aucune erreur, on dit qu'on vient de se connecter
|
||||||
|
@ -56,7 +56,7 @@
|
||||||
|
|
||||||
// Si on se deconnecte
|
// Si on se deconnecte
|
||||||
if( $logout_vars ){
|
if( $logout_vars ){
|
||||||
$logout = new ModuleRequest('users/logout');
|
$logout = new ModuleRequest('user/logout');
|
||||||
$logout_ans = $logout->dispatch();
|
$logout_ans = $logout->dispatch();
|
||||||
|
|
||||||
// Si aucune erreur, on dit qu'on vient de se deconnecter
|
// 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
|
// Si variable n'existe pas, on cree un tableau vide
|
||||||
$params = $post;
|
$params = $post;
|
||||||
|
|
||||||
// On retire le @path de @params
|
// On retire le @path de @params
|
||||||
unset($params['path']);
|
unset($params['path']);
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
use \manager\Repo;
|
use \manager\Repo;
|
||||||
|
|
||||||
class users{
|
class user{
|
||||||
|
|
||||||
|
|
||||||
/* VERIFICATION DES LOGINS D'UN UTILISATEUR
|
/* VERIFICATION DES LOGINS D'UN UTILISATEUR
|
||||||
|
@ -20,7 +20,7 @@
|
||||||
public static function login($login, $password){
|
public static function login($login, $password){
|
||||||
/* [1] On verifie les logins
|
/* [1] On verifie les logins
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
$check = new Repo('users/login', array($login, $password));
|
$check = new Repo('user/login', array($login, $password));
|
||||||
$user = $check->answer();
|
$user = $check->answer();
|
||||||
|
|
||||||
// Si le login/password est incorrect, on retourne une erreur
|
// Si le login/password est incorrect, on retourne une erreur
|
||||||
|
@ -54,13 +54,44 @@
|
||||||
$_SESSION['permission'] = array();
|
$_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] "login",
|
||||||
// [x] "logout",
|
// [x] "logout",
|
||||||
// [ ] "getById",
|
// [x] "getById",
|
||||||
// [ ] "getAll",
|
// [ ] "getAll",
|
||||||
|
|
||||||
// [ ] "create",
|
// [ ] "create",
|
||||||
// [ ] "edit",
|
|
||||||
// [ ] "remove",
|
// [ ] "remove",
|
||||||
|
|
||||||
}
|
}
|
|
@ -85,12 +85,7 @@
|
||||||
if( !Database::check('sha1', $token) ) return false;
|
if( !Database::check('sha1', $token) ) return false;
|
||||||
|
|
||||||
|
|
||||||
/* [1] Verification du token local
|
/* [1] Verification dans la base de donnees
|
||||||
=========================================================*/
|
|
||||||
if( substr($_SESSION['session_token'], 0, 40) == $token ) return true;
|
|
||||||
|
|
||||||
|
|
||||||
/* [2] Verification dans la base de donnees
|
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
$check = Database::getPDO()->prepare("SELECT id_token, permission
|
$check = Database::getPDO()->prepare("SELECT id_token, permission
|
||||||
FROM api_token
|
FROM api_token
|
||||||
|
@ -104,7 +99,7 @@
|
||||||
if( $token_info === false ) return false;
|
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']) );
|
return explode( ',', str_replace(' ', '', $token_info['permission']) );
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
namespace manager\repo;
|
namespace manager\repo;
|
||||||
use \manager\Database;
|
use \manager\Database;
|
||||||
|
|
||||||
class users{
|
class user{
|
||||||
|
|
||||||
|
|
||||||
/* VERIFICATION DU LOGIN/PASSWORD D'UN UTILISATEUR
|
/* VERIFICATION DU LOGIN/PASSWORD D'UN UTILISATEUR
|
||||||
|
@ -43,10 +43,41 @@
|
||||||
|
|
||||||
|
|
||||||
// On retourne le resultat
|
// 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