NxTIC/build/api/module/token.php

85 lines
1.9 KiB
PHP
Raw Permalink Normal View History

<?php
namespace api\module;
use \database\core\DatabaseDriver;
use \api\core\Checker;
use \manager\sessionManager;
use \manager\ManagerError;
use \database\core\Repo;
class token{
/* SUPPRIME UN TOKEN D'ID DONNE
*
* @token_id<int> UID du token en question
*
*/
public static function remove($params){
extract($params);
/* [1] Suppression du token
=========================================================*/
$remove = new Repo('token/remove', [$token_id]);
// On renvoie une erreur si une erreur intervient pendant la suppression
if( $remove->answer() === false ) return ['ModuleError' => ManagerError::ModuleError];
/* [n] Gestion du retour quand tout est normal
=========================================================*/
return [ 'ModuleError' => ManagerError::Success ];
}
/* 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($params){
extract($params);
/* [0] Verification des INPUT
=========================================================*/
if( !Checker::run('varchar(3,50)', $name) || !Checker::run('id', $duration) )
return ['ModuleError' => ManagerError::ParamError]; // erreur de parametre
/* [1] On cree le token et recupere son id ou FAUX
=========================================================*/
$create = new Repo('token/generate', [$name, $duration]);
2016-04-11 12:07:52 +00:00
$created = $create->answer();
// Si erreur de creation
if( $created === false ) return ['ModuleError' => ManagerError::ModuleError ];
/* [2] Gestion du retour
=========================================================*/
return [
'ModuleError' => ManagerError::Success,
'id_token' => $created
];
}
}
?>