Correction de la gestion de l'API quand on est pas connecté et qu'il n'y a pas de permission nécessaire.

This commit is contained in:
xdrm-brackets 2016-04-15 21:25:51 +02:00
parent 88c6fa5e02
commit 15979f0054
2 changed files with 5 additions and 10 deletions

View File

@ -75,7 +75,9 @@
/* [3] Verification des droits /* [3] Verification des droits
=========================================================*/ =========================================================*/
if( !$this->checkPermission($token) ){ // Si on a pas les droits if( !$this->checkPermission($token) ){ // Si on a pas les droits
$this->error = ManagerError::PermissionError;
// Si on a un token -> erreur de token, sinon erreur de permission
$this->error = ($token===null) ? ManagerError::PermissionError : ManagerError::TokenError;
return false; return false;
} }
@ -177,13 +179,6 @@
public static function fromPost($post){ public static function fromPost($post){
/* [0] Verification de l'authentification /* [0] Verification de l'authentification
=========================================================*/ =========================================================*/
/* (1) Si le token n'est pas dans le header ET qu'on est pas connecte */
if( !isset($_SERVER['PHP_AUTH_DIGEST']) && !connected() ){
$tmp = new ModuleRequest();
$tmp->error = ManagerError::TokenError;
return $tmp;
}
// On definit le token // On definit le token
$token = isset($_SERVER['PHP_AUTH_DIGEST']) ? $_SERVER['PHP_AUTH_DIGEST'] : null; $token = isset($_SERVER['PHP_AUTH_DIGEST']) ? $_SERVER['PHP_AUTH_DIGEST'] : null;
@ -300,7 +295,6 @@
$local_permissions = $_SESSION['permission']; $local_permissions = $_SESSION['permission'];
/* [4] Verification des droits parmi les permissions donnees /* [4] Verification des droits parmi les permissions donnees
=========================================================*/ =========================================================*/
/* (1) On recupere la liste des permissions possibles */ /* (1) On recupere la liste des permissions possibles */
@ -337,7 +331,7 @@
$method = $this->modules[$this->path['module']][$this->path['method']]; $method = $this->modules[$this->path['module']][$this->path['method']];
// Si le nombre de parametre en entree et requis est different // Si le nombre de parametre en entree est insuffisant
if( count($method['parameters']) > count($params) ) return false; if( count($method['parameters']) > count($params) ) return false;

View File

@ -78,6 +78,7 @@ SOCIOGRAM.sigma = new sigma({renderer: { container: SOCIOGRAM.container, 'type':
/* (1) On recupere les informations via l'API */ /* (1) On recupere les informations via l'API */
api.send(SOCIOGRAM.request, function(response){ api.send(SOCIOGRAM.request, function(response){
console.log( response );
// Si erreur, on quitte // Si erreur, on quitte
if( response.ModuleError != 0 ) return; if( response.ModuleError != 0 ) return;