<?php

/**------------------------------------------------
*
* Rooty, 2018 <rooty@rooty.me>
*
*
* This software is protected by copyright, please
* read the file COPYRIGHT.
* This program is distributed in the hope that it
* will be useful, but without any warranty; without
* even the implied warranty of merchantability or
* fitness for a particular purpose. Please
* read the file LICENCE.
*
* Fichier GroupUser.php
*
*Ce fichier contient la classe GroupUser
*
* @author Rooty <www.rooty.me|rooty@rooty.me>
* @link www.rooty.me
* @since 2004/04/14
* @version 0.2
* @package system_data
* @subpackage GroupUser
* @copyright Copyright &copy; 2009-2018, Rooty
*/

#####################################################################################################
################################# Parametrage
#####################################################################################################
/**
* declaration du system... si cette variable n'est pas définie, les fichier inclus ne marche pas...
* cette variable est déclarée sur la page d'execution du script.
*<p> if ( !defined('SYSTEM_IN') )
* {
* die("Hacking attempt");
* }</p>
*/
if ( !defined('SYSTEM_IN') )
{
 die("Hacking attempt");
}

/**
* Classe GroupUser
*
* classe de gestion des GroupUsers
*
* @package system_data
* @subpackage GroupUser
*/
class GroupUser
{

/**
* @var entier
* @access private
* @desc ID de la GroupUser
*/
var $id= null;

/**
* @var entier
* @access private
* @desc ID de l'utilisateur
*/
var $userId = null;

/**
* @var entier
* @access private
* @desc ID du groupe
*/
var $groupId = null;

/**#@-*/

	//
	// Constructor
	//
/**
* Constructeur de la classe GroupUser PHP5
*
* <p>Initialise la GroupUser</p>
* @access public
*/
	function __construct()
	{
		$this->id		=null;
		$this->userId		=null;
		$this->groupId		=null;
	}

/**
* getId: Recupere l'identifiant de la GroupUser
* @access public
* @return entier
*/
	function getId()
	{
		return $this->id;
	}

/**
* setId: affecte l'identifiant de la GroupUser
* @access public
* @return entier
*/
	function setId($id)
	{
		if(!is_numeric($id))
			return false;

		$this->id=$id;
		return true;
	}

/**
* getUserId: Recupere l'identifiant de l'utilisateur
* @access public
* @return entier
*/
	function getUserId()
	{
		return $this->userId;
	}

/**
* setUserId: affecte l'identifiant de l'utilisateur
* @access public
* @return entier
*/
	function setUserId($id)
	{
		if(!is_numeric($id))
			return false;

		$this->userId=$id;
		return true;
	}

/**
* getGroupId: Recupere l'identifiant du groupe
* @access public
* @return entier
*/
	function getGroupId()
	{
		return $this->groupId;
	}

/**
* setGroupId: affecte l'identifiant du groupe
* @access public
* @return entier
*/
	function setGroupId($id)
	{
		if(!is_numeric($id))
			return false;

		$this->groupId=$id;
		return true;
	}

/**
* doLoad: Charge le GroupUser a partir de ses éléments
* @access public
* @param entier identifiant de la GroupUser (Null si inexistant dans la source)
* @param entier identifiant de l'utilisateur
* @param entier identifiant du groupe
* @return booleen
*/
	function doLoad($id, $userId, $groupId)
	{
		if ((!Is_numeric($id)) || (!Is_numeric($userId)) || (!Is_numeric($groupId)))
		{
			$systemError=2;
			$classe="GroupUser";
			$message="Erreur d'identifiant ".$id;
			addError($systemError,$classe,$message, __line__, __file__);
		}
		$this->setId($id);
		$this->setUserId($userId);
		$this->setGroupId($groupId);
		return true;
	}

/**
* isLoaded: GroupUser chargée?
* <p>Indique si une GroupUser a été chargé dans l'objet courant (retourne vrai)<br>
* Ou si l'objet courant est vide (retourne faux)</p>
* @access public
* @return booleen
*/
	function isLoaded()
	{
		return (($this->id!=0 && (!Is_null($this->id)) && Is_numeric($this->id))? true:false);
	}
}
?>
