Gestion des modules autorisés, gestion en BDD à faire
This commit is contained in:
parent
4140936396
commit
6458f831aa
|
@ -84,8 +84,9 @@
|
|||
|
||||
// On met à jour les informations
|
||||
$_SESSION['WAREHOUSE'] = [
|
||||
'id' => (int) $checkRoot->answer()[0]['id_warehouse'],
|
||||
'name' => $checkRoot->answer()[0]['name']
|
||||
'id' => (int) $checkRoot->answer()[0]['id_warehouse'],
|
||||
'name' => $checkRoot->answer()[0]['name'],
|
||||
'modules' => ['upload', 'method']
|
||||
];
|
||||
}
|
||||
|
||||
|
|
|
@ -23,58 +23,61 @@
|
|||
|
||||
/* ModuleRequest */
|
||||
|
||||
// Le module n'est pas activé
|
||||
const DisabledModule = 4;
|
||||
|
||||
// Le @path n'est pas renseigne
|
||||
const MissingPath = 4;
|
||||
const MissingPath = 5;
|
||||
|
||||
// Verification de la coherence du chemin (existe dans la conf)
|
||||
const WrongPathModule = 5;
|
||||
const WrongPathModule = 6;
|
||||
|
||||
// Module non specifie dans la conf
|
||||
const UnknownModule = 6;
|
||||
const UnknownModule = 7;
|
||||
|
||||
// Methode non specifie pour ce Module dans la conf
|
||||
const UnknownMethod = 7;
|
||||
const UnknownMethod = 8;
|
||||
|
||||
// Methode inamorcable
|
||||
const UncallableMethod = 8;
|
||||
const UncallableMethod = 9;
|
||||
|
||||
// Erreur de parametre(s)
|
||||
const ParamError = 9;
|
||||
const ParamError = 10;
|
||||
|
||||
// Erreur dans le traitement
|
||||
const ModuleError = 10;
|
||||
const ModuleError = 11;
|
||||
|
||||
/* Repo */
|
||||
|
||||
// Verification de la coherence du chemin (existe dans la conf)
|
||||
const WrongPathRepo = 11;
|
||||
const WrongPathRepo = 12;
|
||||
|
||||
// Module non specifie dans la conf
|
||||
const UnknownRepo = 12;
|
||||
const UnknownRepo = 13;
|
||||
|
||||
// Erreur dans le traitement
|
||||
const RepoError = 13;
|
||||
const RepoError = 14;
|
||||
|
||||
/* Database */
|
||||
|
||||
// Erreur lors de la creation d'un objet PDO (connection)
|
||||
const PDOConnection = 14;
|
||||
const PDOConnection = 15;
|
||||
|
||||
/* API token */
|
||||
// Token inexistant ou faux
|
||||
const TokenError = 15;
|
||||
const TokenError = 16;
|
||||
|
||||
const PermissionError = 16;
|
||||
const PermissionError = 17;
|
||||
|
||||
/* Erreur d'UPLOAD */
|
||||
const UploadError = 17;
|
||||
const UploadError = 18;
|
||||
|
||||
// Mauvais format de fichier
|
||||
const FormatError = 18;
|
||||
const FormatError = 19;
|
||||
|
||||
/* Erreur de contenu */
|
||||
// Aucune donnée trouvée
|
||||
const NoMatchFound = 19;
|
||||
const NoMatchFound = 20;
|
||||
|
||||
/* Erreur au niveau javascript */
|
||||
//const JavascriptError = 20; // -> géré en js
|
||||
|
@ -95,6 +98,7 @@
|
|||
|
||||
case self::InvalidFlags: return "Les spécifications (drapeaux) sont incorrects."; break;
|
||||
case self::UnreachableResource: return "La ressource n'existe pas (404)."; break;
|
||||
case self::DisabledModule: return "Vous n'avez pas accès au module demandé."; break;
|
||||
case self::MissingPath: return "Le chemin de délégation n'a pas été renseigné."; break;
|
||||
case self::WrongPathModule: return "Le chemin de délégation est incorrect ('nomModule/nomMethode')."; break;
|
||||
case self::WrongPathRepo: return "Le chemin de délégation est incorrect ('nomRepo/nomMethode')."; break;
|
||||
|
|
|
@ -333,7 +333,18 @@
|
|||
return false; // On retourne FALSE, si erreur
|
||||
}
|
||||
|
||||
/* [3] Verification de l'existence de la methode (conf)
|
||||
|
||||
/* [3] On vérifie que le module est autorisé
|
||||
=========================================================*/
|
||||
// Si le module n'est pas autorisé
|
||||
// et qu'il ne finit pas par "Default"
|
||||
if( !in_array($module, $_SESSION['WAREHOUSE']['modules']) && !preg_match('/^(\w+)Default$/', $module) ){
|
||||
$this->error = ManagerError::DisabledModule;
|
||||
return false; // On retourne FALSE, si erreur
|
||||
}
|
||||
|
||||
|
||||
/* [4] Verification de l'existence de la methode (conf)
|
||||
=========================================================*/
|
||||
if( array_key_exists($method, $this->modules[$module]) === false ){ // Si la methode n'est pas specifie dans la conf
|
||||
$this->error = ManagerError::UnknownMethod;
|
||||
|
@ -342,7 +353,7 @@
|
|||
|
||||
|
||||
|
||||
/* [4] Enregistrement du chemin et renvoi de SUCCESS
|
||||
/* [5] Enregistrement du chemin et renvoi de SUCCESS
|
||||
=========================================================*/
|
||||
$this->path = [
|
||||
'module' => $module,
|
||||
|
|
Loading…
Reference in New Issue