82 lines
2.1 KiB
PHP
82 lines
2.1 KiB
PHP
<?php
|
|
|
|
namespace manager\repo;
|
|
use \manager\Database;
|
|
use \manager\Checker;
|
|
use \manager\sessionManager;
|
|
|
|
class relation extends parentRepo{
|
|
|
|
protected static function table_name(){ static $table_name = 'relations'; return $table_name; }
|
|
|
|
|
|
/* CREATION D'UNE RELATION ENTRE @A ET @B DE TYPE @category
|
|
*
|
|
* @A<int> UID du sujet A
|
|
* @B<int> UID du sujet B
|
|
* @category<int> UID de la categorie en question
|
|
*
|
|
* @return status<Boolean> On retourne TRUE si tout s'est bien passé, sinon FALSE si erreur
|
|
*
|
|
*/
|
|
public static function create($A, $B, $category){
|
|
/* [0] Vérification des INPUT
|
|
=========================================================*/
|
|
$checkInput = Checker::run('id', $A);
|
|
$checkInput = $checkInput && Checker::run('id', $B);
|
|
$checkInput = $checkInput && Checker::run('id', $category);
|
|
|
|
// Si erreur de type de paramètre, on retourne FALSE
|
|
if( !$checkInput )
|
|
return false;
|
|
|
|
|
|
|
|
/* [1] On vérifie que la relation n'existe pas déja
|
|
=========================================================*/
|
|
$exists = self::getById($A, $B, $category);
|
|
|
|
// Si la relation existe, on retourne TRUE
|
|
if( is_array($exists) && count($exists) > 0 )
|
|
return true;
|
|
|
|
|
|
/* [2] Création de la relation
|
|
=========================================================*/
|
|
$create_relation = Database::getPDO()->prepare("INSERT INTO relations(idPersonneA, idPersonneB, idCategorie)
|
|
VALUES(:A, :B, :category)");
|
|
$create_rel_status = $create_relation->execute( array(
|
|
':A' => $A,
|
|
':B' => $B,
|
|
':category' => $category
|
|
));
|
|
|
|
|
|
// Si erreur de requête -> FALSE
|
|
if( $create_rel_status === false )
|
|
return false;
|
|
|
|
|
|
/* [3] On vérifie que la relation est crée
|
|
=========================================================*/
|
|
$get_relation = self::getById($A, $B, $category);
|
|
|
|
// Si la relation n'existe pas, on renvoie une erreur
|
|
if( !is_array($get_relation) || is_array($get_relation) && count($get_relation) == 0 )
|
|
return false;
|
|
|
|
|
|
// Si tout s'est bien passé, on retourne TRUE
|
|
return true;
|
|
}
|
|
|
|
|
|
public static function remove(){
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
?>
|