- [x] [manager/repo/]Creation des repos
- [x] [user] utilisateur - [x] [machine] machines - [x] [cluster] groupes - [ ] Gestion des groupes (utilisateurs/machines) - [x] bdd - [x] Creation d'un groupe individuel pour utilisateurs + association
This commit is contained in:
parent
eed21581ef
commit
a2234af7e7
49
automate.php
49
automate.php
|
@ -1,6 +1,11 @@
|
||||||
<?php define('__ROOT__', dirname(__FILE__) );
|
<?php define('__ROOT__', dirname(__FILE__) );
|
||||||
require_once __ROOT__.'/manager/autoloader.php';
|
require_once __ROOT__.'/manager/autoloader.php';
|
||||||
|
|
||||||
|
use \manager\ModuleRequest;
|
||||||
|
use \manager\ResourceDispatcher;
|
||||||
|
use \manager\ManagerError;
|
||||||
|
use \manager\Repo;
|
||||||
|
|
||||||
debug();
|
debug();
|
||||||
|
|
||||||
|
|
||||||
|
@ -14,13 +19,13 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
function insertUsersFromJSON(){
|
function insertUsersFromJSON(){
|
||||||
$json = \manager\ResourceDispatcher::getResource('f/json/generated_users/conf');
|
$json = ResourceDispatcher::getResource('f/json/generated_users/conf');
|
||||||
$json = json_decode( $json, true );
|
$json = json_decode( $json, true );
|
||||||
|
|
||||||
// Pour chaque entree
|
// Pour chaque entree
|
||||||
foreach( $json as $user ){
|
foreach( $json as $user ){
|
||||||
|
|
||||||
$insertRequest = \manager\Database::getPDO()->prepare("INSERT INTO user(id_user, code, username, firstname, lastname, mail, password, status)
|
$insertRequest = Database::getPDO()->prepare("INSERT INTO user(id_user, code, username, firstname, lastname, mail, password, status)
|
||||||
VALUES(
|
VALUES(
|
||||||
DEFAULT,
|
DEFAULT,
|
||||||
:code,
|
:code,
|
||||||
|
@ -59,13 +64,13 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
function insertMachinesFromJSON(){
|
function insertMachinesFromJSON(){
|
||||||
$json = \manager\ResourceDispatcher::getResource('f/json/generated_machines/conf');
|
$json = ResourceDispatcher::getResource('f/json/generated_machines/conf');
|
||||||
$json = json_decode( $json, true );
|
$json = json_decode( $json, true );
|
||||||
|
|
||||||
// Pour chaque entree
|
// Pour chaque entree
|
||||||
foreach( $json as $machine ){
|
foreach( $json as $machine ){
|
||||||
|
|
||||||
$insertRequest = \manager\Database::getPDO()->prepare("INSERT INTO machine(id_machine, code, name)
|
$insertRequest = Database::getPDO()->prepare("INSERT INTO machine(id_machine, code, name)
|
||||||
VALUES(
|
VALUES(
|
||||||
DEFAULT,
|
DEFAULT,
|
||||||
:code,
|
:code,
|
||||||
|
@ -102,10 +107,10 @@
|
||||||
function selectUsers(){
|
function selectUsers(){
|
||||||
|
|
||||||
// Creation de la requete
|
// Creation de la requete
|
||||||
$requete = new manager\ModuleRequest('userDefault/getAll');
|
$requete = new ModuleRequest('userDefault/getAll');
|
||||||
$answer = $requete->dispatch();
|
$answer = $requete->dispatch();
|
||||||
|
|
||||||
var_dump( \manager\ManagerError::explicit($answer->error) );
|
var_dump( ManagerError::explicit($answer->error) );
|
||||||
var_dump( $answer->get('users') );
|
var_dump( $answer->get('users') );
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
@ -126,10 +131,10 @@
|
||||||
function selectMachines(){
|
function selectMachines(){
|
||||||
|
|
||||||
// Creation de la requete
|
// Creation de la requete
|
||||||
$requete = new manager\ModuleRequest('machineDefault/getAll');
|
$requete = new ModuleRequest('machineDefault/getAll');
|
||||||
$answer = $requete->dispatch();
|
$answer = $requete->dispatch();
|
||||||
|
|
||||||
var_dump( \manager\ManagerError::explicit($answer->error) );
|
var_dump( ManagerError::explicit($answer->error) );
|
||||||
var_dump( $answer->get('machines') );
|
var_dump( $answer->get('machines') );
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
@ -152,12 +157,12 @@
|
||||||
function displayUsers(){
|
function displayUsers(){
|
||||||
|
|
||||||
// Creation de la requete
|
// Creation de la requete
|
||||||
$request = new \manager\ModuleRequest('userDefault/getAll');
|
$request = new ModuleRequest('userDefault/getAll');
|
||||||
$answer = $request->dispatch();
|
$answer = $request->dispatch();
|
||||||
|
|
||||||
// Debug error
|
// Debug error
|
||||||
if( $answer->error != \manager\ManagerError::Success )
|
if( $answer->error != ManagerError::Success )
|
||||||
var_dump( \manager\ManagerError::explicit($answer->error) );
|
var_dump( ManagerError::explicit($answer->error) );
|
||||||
|
|
||||||
// display result
|
// display result
|
||||||
var_dump( $answer->getAll() );
|
var_dump( $answer->getAll() );
|
||||||
|
@ -182,9 +187,9 @@
|
||||||
function testModuleDispatcher(){
|
function testModuleDispatcher(){
|
||||||
|
|
||||||
// Creation d'une requete en objet
|
// Creation d'une requete en objet
|
||||||
$req1 = new manager\ModuleRequest('firstModule/returnvar', array('id_user' => 10, 'code' => '11-22-33-44') );
|
$req1 = new ModuleRequest('firstModule/returnvar', array('id_user' => 10, 'code' => '11-22-33-44') );
|
||||||
// Creation d'une requete a partir d'un json en <String>
|
// Creation d'une requete a partir d'un json en <String>
|
||||||
$req2 = manager\ModuleRequest::fromString('{"path": "firstModule/returnvar", "data": {"id_user":10, "code":"11-22-33-44"}}');
|
$req2 = ModuleRequest::fromString('{"path": "firstModule/returnvar", "data": {"id_user":10, "code":"11-22-33-44"}}');
|
||||||
|
|
||||||
var_dump( $req1->dispatch() );
|
var_dump( $req1->dispatch() );
|
||||||
|
|
||||||
|
@ -204,12 +209,12 @@
|
||||||
function testRepoDispatcher(){
|
function testRepoDispatcher(){
|
||||||
|
|
||||||
// Creation d'une requete en objet
|
// Creation d'une requete en objet
|
||||||
$req1 = new manager\Repo('user/getById', array('19'));
|
$req1 = new Repo('user/getById', array('19'));
|
||||||
// $req1 = new manager\Repo('user/getByCode', array('92-55-B9-B3'));
|
// $req1 = new Repo('user/getByCode', array('92-55-B9-B3'));
|
||||||
var_dump( $req1->answer() );
|
var_dump( $req1->answer() );
|
||||||
|
|
||||||
if( $req1->error != manager\ManagerError::Success )
|
if( $req1->error != ManagerError::Success )
|
||||||
var_dump( manager\ManagerError::explicit($req1->error) );
|
var_dump( ManagerError::explicit($req1->error) );
|
||||||
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
@ -230,17 +235,15 @@
|
||||||
function insertUsersComposite(){
|
function insertUsersComposite(){
|
||||||
|
|
||||||
// Creation de la requete
|
// Creation de la requete
|
||||||
$request = new \manager\ModuleRequest('userDefault/create', array('92-55-B9-B3', 'b', 'bla', 'bla', 'bla@test.com', 'sadas', '1') );
|
$request = new ModuleRequest('userDefault/create', array('92-55-B9-B1', 'b', 'bla', 'bla', 'bla@test.com', 'sadas', '1') );
|
||||||
$answer = $request->dispatch();
|
$answer = $request->dispatch();
|
||||||
// Debug error
|
// Debug error
|
||||||
var_dump( $answer->error );
|
if( $answer->error != ManagerError::Success )
|
||||||
var_dump( \manager\ManagerError::explicit($answer->error) );
|
var_dump( ManagerError::explicit($answer->error) );
|
||||||
|
|
||||||
var_dump( $answer->getAll() );
|
var_dump( $answer->getAll() );
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
}//insertUsersComposite();
|
}insertUsersComposite();
|
||||||
|
|
||||||
|
|
||||||
?>
|
?>
|
|
@ -21,13 +21,15 @@
|
||||||
"getGroup"
|
"getGroup"
|
||||||
],
|
],
|
||||||
|
|
||||||
"group" :[
|
"cluster" :[
|
||||||
"create",
|
"create",
|
||||||
"link",
|
"link",
|
||||||
"unlink",
|
"unlink",
|
||||||
|
|
||||||
"getAll",
|
"getAll",
|
||||||
"getById",
|
"getById",
|
||||||
|
"getByName",
|
||||||
|
"getMerge",
|
||||||
|
|
||||||
"getMembers"
|
"getMembers"
|
||||||
]
|
]
|
||||||
|
|
|
@ -72,7 +72,7 @@
|
||||||
|
|
||||||
/* [3] Creation du groupe de meme nom que l'username
|
/* [3] Creation du groupe de meme nom que l'username
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
$create_group = new Repo('group/create', array($username) );
|
$create_group = new Repo('cluster/create', array($username) );
|
||||||
$id_group = $create_group->answer();
|
$id_group = $create_group->answer();
|
||||||
|
|
||||||
// Si une erreur est retournee, on retourne une erreur
|
// Si une erreur est retournee, on retourne une erreur
|
||||||
|
@ -84,7 +84,7 @@
|
||||||
|
|
||||||
/* [4] Association au groupe
|
/* [4] Association au groupe
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
$assoc_goup = new Repo('group/link', array($id_user, $id_group));
|
$assoc_goup = new Repo('cluster/link', array($id_group, $id_user));
|
||||||
$id_assoc = $assoc_goup->answer();
|
$id_assoc = $assoc_goup->answer();
|
||||||
|
|
||||||
// Si une erreur est retournee, on retourne une erreur
|
// Si une erreur est retournee, on retourne une erreur
|
||||||
|
|
|
@ -0,0 +1,286 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace manager\repo;
|
||||||
|
use \manager\Database;
|
||||||
|
use \manager\repo\machine as machineRepo;
|
||||||
|
use \manager\repo\user as userRepo;
|
||||||
|
|
||||||
|
class cluster{
|
||||||
|
|
||||||
|
/* CREATION D'UN GROUPE
|
||||||
|
*
|
||||||
|
* @name<String> Nom du groupe
|
||||||
|
*
|
||||||
|
* @return id_user<int> Renvoie l'UID du groupe cree
|
||||||
|
* Renvoie FALSE si une erreur occure
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function create($name){
|
||||||
|
/* [1] Verification de l'unicite de name
|
||||||
|
=========================================================*/
|
||||||
|
$check_unique = ( self::getByName($name) === false );
|
||||||
|
|
||||||
|
// Si un groupe a deja ce nom, on renvoie une erreur
|
||||||
|
if( !$check_unique )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
|
||||||
|
/* [2] Creation du groupe
|
||||||
|
=========================================================*/
|
||||||
|
$insert_user = Database::getPDO()->prepare("INSERT INTO cluster(id_cluster, name)
|
||||||
|
VALUES(DEFAULT, :name)");
|
||||||
|
$insert_user->execute(array(
|
||||||
|
':name' => $name
|
||||||
|
));
|
||||||
|
|
||||||
|
/* [3] On retourne l'id_group ou FALSE si erreur
|
||||||
|
=========================================================*/
|
||||||
|
$check_group = self::getByName($name);
|
||||||
|
|
||||||
|
// Si n'existe pas on retourne FALSE
|
||||||
|
if( $check_group === false )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// Sinon, on retourne son id
|
||||||
|
return $check_group['id_cluster'];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ASSOCIATION D'UN(E) UTILISATEUR/MACHINE A UN GROUPE
|
||||||
|
*
|
||||||
|
* @id_cluster<int> UID du groupe
|
||||||
|
* @id_entity<int> UID de la machine ou de l'utilisateur
|
||||||
|
*
|
||||||
|
* @return association<int> Renvoie l'UID de l'association cree
|
||||||
|
* Renvoie FALSE si une erreur occure
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function link($id_cluster, $id_entity){
|
||||||
|
/* [1] Verification de l'existence du groupe
|
||||||
|
=========================================================*/
|
||||||
|
$group_check = self::getById($id_cluster);
|
||||||
|
|
||||||
|
// Si le groupe n'existe pas, on retourne ue erreur
|
||||||
|
if( $group_check === false )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* [2] Verification de l'existente de l'entite
|
||||||
|
=========================================================*/
|
||||||
|
// On verifie si c'est une machine
|
||||||
|
$machine_check = machineRepo::getById($id_entity);
|
||||||
|
$is_machine = ( $machine_check !== FALSE );
|
||||||
|
|
||||||
|
// On verifie si c'est un utilisateur
|
||||||
|
$user_check = userRepo::getById($id_entity);
|
||||||
|
$is_user = ( $machine_check !== FALSE );
|
||||||
|
|
||||||
|
// Si aucune entite existante, on retourne une erreur
|
||||||
|
if( !$is_machine && !$is_user )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* [3] On cree l'association
|
||||||
|
=========================================================*/
|
||||||
|
$link_entity = Database::getPDO()->prepare("INSERT INTO cluster_merge(id_cluster_merge, id_cluster, id_entity)
|
||||||
|
VALUES(DEFAULT, :id_cluster, :id_entity)");
|
||||||
|
$link_entity->execute(array(
|
||||||
|
':id_cluster' => $id_cluster,
|
||||||
|
':id_entity' => $id_entity
|
||||||
|
));
|
||||||
|
|
||||||
|
/* [3] On retourne l'id_cluster_merge ou FALSE si erreur
|
||||||
|
=========================================================*/
|
||||||
|
$check_cluster_merge = self::getMerge($id_cluster, $id_entity);
|
||||||
|
|
||||||
|
// Si n'existe pas on retourne FALSE
|
||||||
|
if( $check_cluster_merge === false )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// Sinon, on retourne son id
|
||||||
|
return $check_cluster_merge['id_cluster_merge'];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* RENVOIE LA LISTE DE TOUS LES GROUPES
|
||||||
|
*
|
||||||
|
* @return groups<Array> Liste des groupes de la BDD
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function getAll(){
|
||||||
|
// On ecrit la requete
|
||||||
|
$request = Database::getPDO()->query("SELECT * FROM cluster ORDER BY name");
|
||||||
|
|
||||||
|
// On recupere le resultat
|
||||||
|
$answer = $request->fetchAll();
|
||||||
|
|
||||||
|
// On retourne en supprimant les indices numeriques
|
||||||
|
return Database::delNumeric( $answer );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* RENVOIE LE GROUPE D'ID DONNE
|
||||||
|
*
|
||||||
|
* @id<int> UID du groupe en question
|
||||||
|
*
|
||||||
|
* @return group<Array> Renvoie le groupe d'id donne si existe
|
||||||
|
* @return error<Boolean> Retourne FALSE si aucun resultat
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function getById($id){
|
||||||
|
// On ecrit la requete
|
||||||
|
$request = Database::getPDO()->prepare("SELECT * FROM cluster
|
||||||
|
WHERE id_cluster = :id");
|
||||||
|
|
||||||
|
// On execute la requete
|
||||||
|
$request->execute(array(
|
||||||
|
':id' => $id
|
||||||
|
));
|
||||||
|
|
||||||
|
// On recupere 1 seul groupe
|
||||||
|
$answer = $request->fetch();
|
||||||
|
|
||||||
|
// Gestion d'erreur -> aucun resultat
|
||||||
|
if( $answer === false )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// On retourne en supprimant les indices numeriques
|
||||||
|
return Database::delNumeric( $answer, true );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* RENVOIE LE GROUPE DE NOM DONNE
|
||||||
|
*
|
||||||
|
* @name<String> Nom du groupe en question
|
||||||
|
*
|
||||||
|
* @return groupe<Array> Renvoie le groupe de nom donne si existe
|
||||||
|
* @return error<Boolean> Retourne FALSE si aucun resultat
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function getByName($name){
|
||||||
|
// On ecrit la requete
|
||||||
|
$request = Database::getPDO()->prepare("SELECT * FROM cluster
|
||||||
|
WHERE name = :name");
|
||||||
|
|
||||||
|
|
||||||
|
// On execute la requete
|
||||||
|
$request->execute(array(
|
||||||
|
':name' => $name
|
||||||
|
));
|
||||||
|
|
||||||
|
// On recupere 1 seul groupe
|
||||||
|
$answer = $request->fetch();
|
||||||
|
|
||||||
|
// Gestion d'erreur -> aucun resultat
|
||||||
|
if( $answer === false )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// On retourne en supprimant les indices numeriques
|
||||||
|
return Database::delNumeric( $answer, true );
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* RENVOIE L'ID D'UNE ASSOCIATION D'UN(E) UTILISATEUR/MACHINE A UN GROUPE
|
||||||
|
*
|
||||||
|
* @id_cluster<int> UID du groupe
|
||||||
|
* @id_entity<int> UID de la machine ou de l'utilisateur
|
||||||
|
*
|
||||||
|
* @return association<int> Renvoie l'UID de l'association cree
|
||||||
|
* Renvoie FALSE si une erreur occure
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function getMerge($id_cluster, $id_entity){
|
||||||
|
// On ecrit la requete
|
||||||
|
$request = Database::getPDO()->prepare("SELECT * FROM cluster_merge
|
||||||
|
WHERE id_cluster = :id_cluster
|
||||||
|
AND id_entity = :id_entity");
|
||||||
|
|
||||||
|
// On execute la requete
|
||||||
|
$request->execute(array(
|
||||||
|
':id_cluster' => $id_cluster,
|
||||||
|
':id_entity' => $id_entity
|
||||||
|
));
|
||||||
|
|
||||||
|
// On recupere 1 seule relation
|
||||||
|
$answer = $request->fetch();
|
||||||
|
|
||||||
|
// Gestion d'erreur -> aucun resultat
|
||||||
|
if( $answer === false )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// On retourne en supprimant les indices numeriques
|
||||||
|
return Database::delNumeric( $answer, true );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* SUPPRIME UN GROUPE DONNE
|
||||||
|
*
|
||||||
|
* @id_cluster<int> UID du groupe en question
|
||||||
|
*
|
||||||
|
* @return status<Boolean> Retourne si oui ou non le groupe a bien ete supprime
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function delete($id_cluster){
|
||||||
|
/* [1] On redige/execute la requete
|
||||||
|
=========================================================*/
|
||||||
|
$delete_group = Database::getPDO()->prepare("DELETE FROM cluster WHERE id_cluster = :id_cluster");
|
||||||
|
$delete_group->execute(array(
|
||||||
|
':id_cluster' => $id_cluster
|
||||||
|
));
|
||||||
|
|
||||||
|
|
||||||
|
/* [2] On verifie que le groupe n'existe plus
|
||||||
|
=========================================================*/
|
||||||
|
return ( self::getById($id_group) === false );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
?>
|
|
@ -0,0 +1,188 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace manager\repo;
|
||||||
|
use \manager\Database;
|
||||||
|
use \manager\repo\cluster as clusterRepo;
|
||||||
|
|
||||||
|
class machine{
|
||||||
|
|
||||||
|
/* CREATION D'UNE MACHINE
|
||||||
|
*
|
||||||
|
* @name<String> Nom du groupe
|
||||||
|
*
|
||||||
|
* @return id_user<int> Renvoie l'UID du groupe cree
|
||||||
|
* Renvoie FALSE si une erreur occure
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function create($name){
|
||||||
|
/* [1] Verification de l'unicite de name
|
||||||
|
=========================================================*/
|
||||||
|
$check_unique = ( self::getByName($name) === false );
|
||||||
|
|
||||||
|
// Si un groupe a deja ce nom, on renvoie une erreur
|
||||||
|
if( !$check_unique )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
|
||||||
|
/* [2] Creation du groupe
|
||||||
|
=========================================================*/
|
||||||
|
$insert_user = Database::getPDO()->prepare("INSERT INTO cluster(id_cluster, name)
|
||||||
|
VALUES(DEFAULT, :name)");
|
||||||
|
$insert_user->execute(array(
|
||||||
|
':name' => $name
|
||||||
|
));
|
||||||
|
|
||||||
|
/* [3] On retourne l'id_group ou FALSE si erreur
|
||||||
|
=========================================================*/
|
||||||
|
$check_group = self::getByName($name);
|
||||||
|
|
||||||
|
// Si n'existe pas on retourne FALSE
|
||||||
|
if( $check_group === false )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// Sinon, on retourne son id
|
||||||
|
return $check_group['id_cluster'];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* RENVOIE LA LISTE DE TOUTES LES MACHINES
|
||||||
|
*
|
||||||
|
* @return machine<Array> Liste des machines de la BDD
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function getAll(){
|
||||||
|
// On ecrit la requete
|
||||||
|
$request = Database::getPDO()->query("SELECT * FROM machine ORDER BY id_machine");
|
||||||
|
|
||||||
|
// On recupere le resultat
|
||||||
|
$answer = $request->fetchAll();
|
||||||
|
|
||||||
|
// On retourne en supprimant les indices numeriques
|
||||||
|
return Database::delNumeric( $answer );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* RENVOIE LA MACHINE D'ID DONNE
|
||||||
|
*
|
||||||
|
* @id<int> Id de la machine en question
|
||||||
|
*
|
||||||
|
* @return machine<Array> Renvoie la machine d'id donne si existe
|
||||||
|
* @return error<Boolean> Retourne FALSE si aucun resultat
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function getById($id){
|
||||||
|
// On ecrit la requete
|
||||||
|
$request = Database::getPDO()->prepare("SELECT * FROM machine
|
||||||
|
WHERE id_machine = :id");
|
||||||
|
|
||||||
|
// On execute la requete
|
||||||
|
$request->execute(array(
|
||||||
|
':id' => $id
|
||||||
|
));
|
||||||
|
|
||||||
|
// On recupere 1 seule machine
|
||||||
|
$answer = $request->fetch();
|
||||||
|
|
||||||
|
// Gestion d'erreur -> aucun resultat
|
||||||
|
if( $answer === false )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// On retourne en supprimant les indices numeriques
|
||||||
|
return Database::delNumeric( $answer, true );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* RENVOIE LA MACHINE DE NOM DONNE
|
||||||
|
*
|
||||||
|
* @name<String> Nom du groupe en question
|
||||||
|
*
|
||||||
|
* @return groupe<Array> Renvoie le groupe de nom donne si existe
|
||||||
|
* @return error<Boolean> Retourne FALSE si aucun resultat
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function getByName($name){
|
||||||
|
// On ecrit la requete
|
||||||
|
$request = Database::getPDO()->prepare("SELECT * FROM cluster
|
||||||
|
WHERE name = :name");
|
||||||
|
|
||||||
|
|
||||||
|
// On execute la requete
|
||||||
|
$request->execute(array(
|
||||||
|
':name' => $name
|
||||||
|
));
|
||||||
|
|
||||||
|
// On recupere 1 seul groupe
|
||||||
|
$answer = $request->fetch();
|
||||||
|
|
||||||
|
// Gestion d'erreur -> aucun resultat
|
||||||
|
if( $answer === false )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// On retourne en supprimant les indices numeriques
|
||||||
|
return Database::delNumeric( $answer, true );
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* SUPPRIME UNE MACHINE DONNE
|
||||||
|
*
|
||||||
|
* @id_machine<int> UID de la machine en question
|
||||||
|
*
|
||||||
|
* @return status<Boolean> Retourne si oui ou non la machine a bien ete supprime
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function delete($id_machine){
|
||||||
|
/* [1] On redige/execute la requete
|
||||||
|
=========================================================*/
|
||||||
|
$delete_machine = Database::getPDO()->prepare("DELETE FROM machine WHERE id_machine = :id_machine");
|
||||||
|
$delete_machine->execute(array(
|
||||||
|
':id_machine' => $id_machine
|
||||||
|
));
|
||||||
|
|
||||||
|
|
||||||
|
/* [2] On verifie que la machine n'existe plus
|
||||||
|
=========================================================*/
|
||||||
|
return ( self::getById($id_machine) === false );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
?>
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
namespace manager\repo;
|
namespace manager\repo;
|
||||||
use \manager\Database;
|
use \manager\Database;
|
||||||
|
use \manager\repo\cluster as clusterRepo;
|
||||||
|
|
||||||
class user{
|
class user{
|
||||||
|
|
||||||
|
@ -15,16 +16,44 @@
|
||||||
* @password<String> Mot de passe de l'utilisateur
|
* @password<String> Mot de passe de l'utilisateur
|
||||||
* @status<String> Status de l'utilisateur
|
* @status<String> Status de l'utilisateur
|
||||||
*
|
*
|
||||||
* @return nomRetour<typeRetour> Description du retour
|
* @return id_user<int> Renvoie l'UID de l'utilisateur cree
|
||||||
|
* Renvoie FALSE si une erreur occure
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public static function create($code, $username, $firstname, $lastname, $mail, $password, $status){
|
public static function create($code, $username, $firstname, $lastname, $mail, $password, $status){
|
||||||
/* [1] Creation de l'utilisateur (unicite de l'username)
|
/* [1] Verification de l'unicite de code+username
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
$check_unique = ( self::getByCode($code) == false );
|
$check_unique = ( self::getByCode($code) == false );
|
||||||
$check_unique = $check_unique && ( self::getByUsername($username) == false );
|
$check_unique = $check_unique && ( self::getByUsername($username) == false );
|
||||||
|
|
||||||
var_dump($check_unique);
|
// Si un utilisateur a deja ce code ou cet username, on renvoie une erreur
|
||||||
|
if( !$check_unique )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
/* [2] Creation de l'utilisateur
|
||||||
|
=========================================================*/
|
||||||
|
$insert_user = Database::getPDO()->prepare("INSERT INTO user(id_user, code, username, firstname, lastname, mail, password, status)
|
||||||
|
VALUES(DEFAULT, :code, :username, :firstname, :lastname, :mail, :password, :status)");
|
||||||
|
$insert_user->execute(array(
|
||||||
|
':code' => $code,
|
||||||
|
':username' => $username,
|
||||||
|
':firstname' => $firstname,
|
||||||
|
':lastname' => $lastname,
|
||||||
|
':mail' => $mail,
|
||||||
|
':password' => $password,
|
||||||
|
':status' => $status
|
||||||
|
));
|
||||||
|
|
||||||
|
/* [3] On retourne l'id_user ou FALSE si erreur
|
||||||
|
=========================================================*/
|
||||||
|
$check_user = self::getByCode($code);
|
||||||
|
|
||||||
|
// Si n'existe pas on retourne FALSE
|
||||||
|
if( $check_user === false )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// Sinon, on retourne son id
|
||||||
|
return $check_user['id_user'];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -79,7 +108,7 @@
|
||||||
$answer = $request->fetch();
|
$answer = $request->fetch();
|
||||||
|
|
||||||
// Gestion d'erreur -> aucun resultat
|
// Gestion d'erreur -> aucun resultat
|
||||||
if( $answer == null )
|
if( $answer === false )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
// On retourne en supprimant les indices numeriques
|
// On retourne en supprimant les indices numeriques
|
||||||
|
@ -115,7 +144,7 @@
|
||||||
$answer = $request->fetch();
|
$answer = $request->fetch();
|
||||||
|
|
||||||
// Gestion d'erreur -> aucun resultat
|
// Gestion d'erreur -> aucun resultat
|
||||||
if( $answer == null )
|
if( $answer === false )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
// On retourne en supprimant les indices numeriques
|
// On retourne en supprimant les indices numeriques
|
||||||
|
@ -153,7 +182,7 @@
|
||||||
$answer = $request->fetch();
|
$answer = $request->fetch();
|
||||||
|
|
||||||
// Gestion d'erreur -> aucun resultat
|
// Gestion d'erreur -> aucun resultat
|
||||||
if( $answer == null )
|
if( $answer === false )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
// On retourne en supprimant les indices numeriques
|
// On retourne en supprimant les indices numeriques
|
||||||
|
|
6
todo.md
6
todo.md
|
@ -15,7 +15,7 @@
|
||||||
############
|
############
|
||||||
- [ ] Gestion des groupes (utilisateurs/machines)
|
- [ ] Gestion des groupes (utilisateurs/machines)
|
||||||
- [x] bdd
|
- [x] bdd
|
||||||
- [ ] Creation d'un groupe individuel pour utilisateurs
|
- [x] Creation d'un groupe individuel pour utilisateurs + association
|
||||||
- [ ] Creation d'un groupe individuel pour machines
|
- [ ] Creation d'un groupe individuel pour machines
|
||||||
- [ ] Creation d'une liaison entre 2 groupes (groupeUtilisateur, groupeMachine)
|
- [ ] Creation d'une liaison entre 2 groupes (groupeUtilisateur, groupeMachine)
|
||||||
- [ ] Prendre en compte au lieu de SERVER['HTTP_HOST'] l'hote et son dossier source
|
- [ ] Prendre en compte au lieu de SERVER['HTTP_HOST'] l'hote et son dossier source
|
||||||
|
@ -39,6 +39,10 @@
|
||||||
########
|
########
|
||||||
# FAIT #
|
# FAIT #
|
||||||
########
|
########
|
||||||
|
- [x] [manager/repo/]Creation des repos
|
||||||
|
- [x] [user] utilisateur
|
||||||
|
- [x] [machine] machines
|
||||||
|
- [x] [cluster] groupes
|
||||||
- [x] [view/][view] Ajout de "use CLASS;"
|
- [x] [view/][view] Ajout de "use CLASS;"
|
||||||
- [x] Ajout de "use CLASS;" dans les fichiers pour simplifier la lisibilite
|
- [x] Ajout de "use CLASS;" dans les fichiers pour simplifier la lisibilite
|
||||||
- [x] [phpunit/sessionManager] test unitaires du manager de session php
|
- [x] [phpunit/sessionManager] test unitaires du manager de session php
|
||||||
|
|
Loading…
Reference in New Issue