109 lines
2.8 KiB
PHP
109 lines
2.8 KiB
PHP
|
<?php
|
||
|
|
||
|
namespace manager\module;
|
||
|
use \manager\Database;
|
||
|
use \manager\sessionManager;
|
||
|
use \manager\ManagerError;
|
||
|
use \manager\Repo;
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
class token{
|
||
|
|
||
|
|
||
|
/* SUPPRIME UN TOKEN D'ID DONNE
|
||
|
*
|
||
|
* @id_token<int> UID du token en question
|
||
|
*
|
||
|
* @return status<bool> Retourne l'etat de la suppression (VRAI -> fait/FAUX -> erreur)
|
||
|
*
|
||
|
*/
|
||
|
public static function remove($id_token){
|
||
|
/* [0] Verification des INPUT
|
||
|
=========================================================*/
|
||
|
if( !Database::check('id', $id_token) ) return array('ModuleError' => ManagerError::ParamError);
|
||
|
|
||
|
|
||
|
/* [1] Verification de l'existance du token
|
||
|
=========================================================*/
|
||
|
$token_exists = new Repo('token/getById', array($id_token));
|
||
|
|
||
|
// On renvoie une erreur si le token n'existe pas
|
||
|
if( $token_exists->answer() == false ) return array('ModuleError' => ManagerError::Success, 'status' => false);
|
||
|
|
||
|
|
||
|
/* [2] Suppression du token
|
||
|
=========================================================*/
|
||
|
$token_exists = new Repo('token/getById', array($id_token));
|
||
|
|
||
|
|
||
|
/* [3] On verifie que le token soit supprime
|
||
|
=========================================================*/
|
||
|
$token_removed = new Repo('token/getById', array($id_token));
|
||
|
|
||
|
// On renvoie une erreur si le token existe encore
|
||
|
if( $token_removed->answer() !== false ) return array('ModuleError' => ManagerError::Success, 'status' => false);
|
||
|
|
||
|
|
||
|
/* [n] Gestion du retour quand tout est normal
|
||
|
=========================================================*/
|
||
|
return array(
|
||
|
'ModuleError' => ManagerError::Success,
|
||
|
'status' => true
|
||
|
);
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
/* GENERE UN NOUVEAU TOKEN DE NOM ET EXPIRATION SPECIFIEE
|
||
|
*
|
||
|
* @name<String> Nom attribue au token
|
||
|
* @duration<int> Duree du token en jours
|
||
|
*
|
||
|
* @return id_token<int> Renvoie l'id du token cree
|
||
|
* @return FALSE Renvoie FALSE si erreur
|
||
|
*
|
||
|
*/
|
||
|
public static function generate($name, $duration){
|
||
|
/* [0] Verification des INPUT
|
||
|
=========================================================*/
|
||
|
if( !Database::check('varchar(50)', $name) || !Database::check('int', $duration) )
|
||
|
return array('ModuleError' => ManagerError::ParamError); // erreur de parametre
|
||
|
|
||
|
|
||
|
/* [1] On cree le token et recupere son id ou FAUX
|
||
|
=========================================================*/
|
||
|
$create = new Repo('token/generate', array($name, $duration));
|
||
|
$created = $create->answer();
|
||
|
|
||
|
|
||
|
// Si erreur de creation
|
||
|
if( $created === false ) return array('ModuleError' => ManagerError::ModuleError );
|
||
|
|
||
|
|
||
|
/* [2] Gestion du retour
|
||
|
=========================================================*/
|
||
|
return array(
|
||
|
'ModuleError' => ManagerError::Success,
|
||
|
'id_token' => $created
|
||
|
);
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
?>
|