19,7 → 19,7 |
// | License along with this library; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: bazar.class.php,v 1.2 2006-02-09 11:06:12 alexandre_tb Exp $ |
// CVS : $Id: bazar.class.php,v 1.3 2006-03-29 13:05:12 alexandre_tb Exp $ |
/** |
* |
*@package bazar |
27,7 → 27,7 |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
*@author Florian Schmitt <florian@ecole-et-nature.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.2 $ |
*@version $Revision: 1.3 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
|
41,9 → 41,15 |
// +------------------------------------------------------------------------------------------------------+ |
|
|
class Utilisateur_bazar { |
class Administrateur_bazar { |
|
var $_auth ; |
|
/** |
* Identifiant de l'utilisateur |
*/ |
|
var $_id_utilisateur ; |
|
/** |
* Vaut true si l'utilisateur est un administrateur |
57,8 → 63,9 |
* |
*/ |
|
function Utilisateur_bazar (&$AUTH) { |
function Administrateur_bazar (&$AUTH) { |
$this->_auth = $AUTH ; |
if ($AUTH->getAuth())$this->_id_utilisateur = $this->_auth->getAuthData(BAZ_CHAMPS_ID) ; |
} |
|
/** isSuperAdmin () - Renvoie true si l'utilisateur est un super administrateur |
73,7 → 80,7 |
|
// Sinon on interroge la base |
$requete = 'select bd_niveau_droit FROM bazar_droits WHERE bd_id_utilisateur='. |
$this->_auth->getAuthData(BAZ_CHAMPS_ID). |
$this->_id_utilisateur. |
' AND bd_niveau_droit=0'; |
|
$resultat = $GLOBALS['_BAZAR_']['db']->query ($requete) ; |
115,7 → 122,7 |
|
function _requeteDroit ($id_nature, $niveau) { |
$requete = 'select bd_niveau_droit FROM bazar_droits WHERE bd_id_utilisateur=' |
.$this->_auth->getAuthData(BAZ_CHAMPS_ID). |
.$this->_id_utilisateur. |
' AND bd_id_nature_offre="'.$id_nature.'" and bd_niveau_droit='.$niveau; |
|
$resultat = $GLOBALS['_BAZAR_']['db']->query ($requete) ; |
129,9 → 136,50 |
} |
} |
|
class Utilisateur_bazar extends Administrateur_bazar { |
|
function Utilisateur_bazar($id_utilisateur) { |
$this->_id_utilisateur = $id_utilisateur ; |
} |
|
function isAdmin($id_nature) { |
return $this->_requeteDroit ($id_nature, 2) ; |
} |
|
/** isSuperAdmin () - Renvoie true si l'utilisateur est un super administrateur |
* |
*/ |
function isSuperAdmin() { |
// On court-circuite si la question a déjà été posé pour ne pas refaire la requete |
if (isset ($this->_isSuperAdmin)) return $this->_isSuperAdmin ; |
|
// Sinon on interroge la base |
$requete = 'select bd_niveau_droit FROM bazar_droits WHERE bd_id_utilisateur='. |
$this->_id_utilisateur. |
' AND bd_niveau_droit=0'; |
|
$resultat = $GLOBALS['_BAZAR_']['db']->query ($requete) ; |
if (DB::isError($resultat)) { |
die ("Echec de la requete<br />".$resultat->getMessage()."<br />".$resultat->getDebugInfo()) ; |
} |
if ($resultat->numRows() != 0) { |
$this->_isSuperAdmin = true ; |
} else { |
$this->_isSuperAdmin = false ; |
} |
return $this->_isSuperAdmin; |
} |
|
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.2 2006/02/09 11:06:12 alexandre_tb |
* changement dans les id des droit |
* 0 => super administrateur |
* 1 => redacteur |
* 2 => administrateur |
* |
* Revision 1.1 2006/02/07 11:08:06 alexandre_tb |
* version initiale |
* |