New file |
0,0 → 1,554 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2005 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Herbier. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar 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. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: hb_herbier.class.php,v 1.1 2005-11-23 10:32:32 jp_milcent Exp $ |
/** |
* Classe H_Herbier |
* |
* Classe permettant de récupérer les données concernant les organisations de la base de données. |
* |
*@package Herbier |
*@subpackage Classes |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@clapas.org> |
//Autres auteurs : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
*@copyright Tela-Botanica 2000-2005 |
*@version $Revision: 1.1 $ $Date: 2005-11-23 10:32:32 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
|
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
|
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** |
* class H_Herbier() |
* |
* class H_Herbier contient les méthodes communes aux différentes classes de l'application Herbier. |
* @package herbiers |
*/ |
class H_Herbier { |
// +--------------------------------------------------------------------------------------------------+ |
// ATTRIBUTS |
/** @var integer le nombre représentant l'action courante de l'application.*/ |
var $action; |
/** @var string url de base de l'application d'administration d'Herbier.*/ |
var $url_base; |
/** @var string url avec l'action configurable via sprintf.*/ |
var $url_action; |
/** @var string url avec l'action et l'id organisation configurable via sprintf.*/ |
var $url_action_org; |
/** @var string url avec l'action, l'id organisation et l'id equipe configurable via sprintf.*/ |
var $url_action_org_equipe; |
/** @var string url avec l'action, l'id organisation et l'id collection configurable via sprintf.*/ |
var $url_action_org_coll; |
/** @var string url avec l'action, l'id organisation et l'id note configurable via sprintf.*/ |
var $url_action_org_note; |
/** @var string url avec l'action, l'id organisation, l'id collection et l'id note configurable via sprintf.*/ |
var $url_action_org_coll_note; |
/** @var string url avec l'action et l'id correspondant configurable via sprintf.*/ |
var $url_action_cor; |
/** @var string url avec l'action et l'id rédacteur configurable via sprintf.*/ |
var $url_action_red; |
/** @var string url avec l'action et l'id utilisateur configurable via sprintf.*/ |
var $url_action_utilisateur; |
/** @var array le tableau contenant une liste d'objet utilisateur ayant des droits dans l'administration de Herbier.*/ |
var $utilisateur_liste; |
/** @var H_Utilisateur l'objet H_Utilisateur correspondant à l'utilisateur actuel de Herbier.*/ |
var $utilisateur; |
/** @var H_Utilisateur un objet H_Utilisateur de type correspondant actuel de Herbier.*/ |
var $correspondant; |
/** @var H_Utilisateur un objet H_Utilisateur de type rédacteur actuel de Herbier.*/ |
var $redacteur; |
/** @var H_Organisation un objet H_Organisation correspondant à l'organisation courante de l'utilisateur actuel.*/ |
var $organisation; |
/** @var H_equipe l'objet de type H_equipe courant appartenant à l'organisation courante.*/ |
var $equipe; |
/** @var H_collection l'objet de type H_collection courant appartenant à l'organisation courante.*/ |
var $collection; |
/** @var H_indic l'objet de type H_indic courant appartenant à la collection courante.*/ |
var $note; |
// +--------------------------------------------------------------------------------------------------+ |
// CONSTRUCTEUR |
/** |
* Constructeur de H_Herbier |
* |
* @param integer l'identifiant de l'utilisateur courant des herbiers. |
* @return void |
* @access public |
*/ |
function H_Herbier($id_utilisateur = null) |
{ |
// Ajout de l'action courante |
if (isset($_REQUEST['action'])) { |
$this->setAction($_REQUEST['action']); |
} |
|
$this->utilisateur_liste = array(); |
// Ajout des urls courantes |
if (defined('HB_URL_COURANTE_ADMIN')) { |
$this->setUrlBase(HB_URL_COURANTE_ADMIN); |
} |
if (defined('HB_URL_COURANTE_ADMIN_ACTION')) { |
$this->setUrlAction(HB_URL_COURANTE_ADMIN_ACTION); |
} |
if (defined('HB_URL_COURANTE_ADMIN_ACTION_UTILISATEUR')) { |
$this->setUrlActionUtilisateur(HB_URL_COURANTE_ADMIN_ACTION_UTILISATEUR); |
} |
if (defined('HB_URL_COURANTE_ADMIN_ACTION_ORGANISATION')) { |
$this->setUrlActionOrg(HB_URL_COURANTE_ADMIN_ACTION_ORGANISATION); |
} |
if (defined('HB_URL_COURANTE_ADMIN_ACTION_ORG_EQUIPE')) { |
$this->setUrlActionOrgEquipe(HB_URL_COURANTE_ADMIN_ACTION_ORG_EQUIPE); |
} |
if (defined('HB_URL_COURANTE_ADMIN_ACTION_ORG_COLL')) { |
$this->setUrlActionOrgColl(HB_URL_COURANTE_ADMIN_ACTION_ORG_COLL); |
} |
if (defined('HB_URL_COURANTE_ADMIN_ACTION_ORG_NOTE')) { |
$this->setUrlActionOrgNote(HB_URL_COURANTE_ADMIN_ACTION_ORG_NOTE); |
} |
if (defined('HB_URL_COURANTE_ADMIN_ACTION_ORG_COLL_NOTE')) { |
$this->setUrlActionOrgCollNote(HB_URL_COURANTE_ADMIN_ACTION_ORG_COLL_NOTE); |
} |
if (defined('HB_URL_COURANTE_ADMIN_ACTION_COR')) { |
$this->setUrlActionCor(HB_URL_COURANTE_ADMIN_ACTION_COR); |
} |
if (defined('HB_URL_COURANTE_ADMIN_ACTION_RED')) { |
$this->setUrlActionRed(HB_URL_COURANTE_ADMIN_ACTION_RED); |
} |
// Ajout de l'utilisateur courant |
if (!is_null($id_utilisateur)) { |
$un_utilisateur = new H_Utilisateur($id_utilisateur); |
$this->setUtilisateur($un_utilisateur); |
} |
|
// Ajout de l'organisation courante |
if (isset($_REQUEST['id_org'])) { |
$une_organisation = new H_organisation($_REQUEST['id_org']); |
$this->setOrganisation($une_organisation); |
} |
|
// Ajout du membre de l'équipe courant |
if (isset($_REQUEST['id_equipe'])) { |
$une_equipe = new H_equipe($_REQUEST['id_equipe']); |
$this->setEquipe($une_equipe); |
} |
|
// Ajout de la collection courante |
if (isset($_REQUEST['id_coll'])) { |
$une_collection = new H_collection($_REQUEST['id_coll']); |
$this->setCollection($une_collection); |
} |
|
// Ajout de la collection courante |
if (isset($_REQUEST['id_note'])) { |
$une_note = new H_indic($_REQUEST['id_note']); |
$this->setNote($une_note); |
} |
|
// Ajout du correspondant |
if (isset($_REQUEST['id_cor'])) { |
$un_correspondant = new H_Utilisateur($_REQUEST['id_cor']); |
$this->setCorrespondant($un_correspondant); |
} |
|
// Ajout du rédacteur |
if (isset($_REQUEST['id_red'])) { |
$un_redacteur = new H_Utilisateur($_REQUEST['id_red']); |
$this->setRedacteur($un_redacteur); |
} |
} |
// +--------------------------------------------------------------------------------------------------+ |
// ACCESSEURS |
/** Accesseur setAction() - Ajoute l'action courante. |
* |
* @param integer le nombre représentant l'action courante de l'application. |
* @return void |
* @access public |
*/ |
function setAction($id_action) |
{ |
$this->action = $id_action; |
} |
/** Accesseur getAction() - Retourne l'action courante. |
* |
* @return integer le numéro de l'action courante de l'application. |
* @access public |
*/ |
function getAction() |
{ |
return $this->action; |
} |
/** Accesseur setUrlBase() - Ajoute l'url de base courante. |
* |
* @param string l'url de base courante de l'application. |
* @return void |
* @access public |
*/ |
function setUrlBase($url) |
{ |
$this->url_base = $url; |
} |
/** Accesseur getUrlBase() - Retourne l'url de base courante. |
* |
* @return string l'url de base courante de l'application. |
* @access public |
*/ |
function getUrlBase() |
{ |
return $this->url_base; |
} |
/** Accesseur setUrlAction() - Ajoute l'url avec l'action configurable. |
* |
* @param string l'url avec l'action configurable via sprintf. |
* @return void |
* @access public |
*/ |
function setUrlAction($url) |
{ |
$this->url_action = $url; |
} |
/** Accesseur getUrlAction() - Retourne l'url avec l'action configurable. |
* |
* @return string l'url avec l'action configurable via sprintf. |
* @access public |
*/ |
function getUrlAction() |
{ |
return $this->url_action; |
} |
/** Accesseur setUrlActionCor() - Ajoute l'url avec l'action et l'id correspondant configurable. |
* |
* @param string l'url avec l'action et l'id correspondant configurable via sprintf. |
* @return void |
* @access public |
*/ |
function setUrlActionCor($url) |
{ |
$this->url_action_cor = $url; |
} |
/** Accesseur getUrlActionCor() - Retourne l'url avec l'action et l'id correspondant configurable. |
* |
* @return string l'url avec l'action et l'id correspondant configurable via sprintf. |
* @access public |
*/ |
function getUrlActionCor() |
{ |
return $this->url_action_cor; |
} |
/** Accesseur setUrlActionRed() - Ajoute l'url avec l'action et l'id rédacteur configurable. |
* |
* @param string l'url avec l'action et l'id rédacteur configurable via sprintf. |
* @return void |
* @access public |
*/ |
function setUrlActionRed($url) |
{ |
$this->url_action_red = $url; |
} |
/** Accesseur getUrlActionRed() - Retourne l'url avec l'action et l'id rédacteur configurable. |
* |
* @return string l'url avec l'action et l'id rédacteur configurable via sprintf. |
* @access public |
*/ |
function getUrlActionRed() |
{ |
return $this->url_action_red; |
} |
/** Accesseur setUrlActionOrg() - Ajoute l'url avec l'action et l'id organisation configurable. |
* |
* @param string l'url avec l'action et l'id organisation configurable via sprintf. |
* @return void |
* @access public |
*/ |
function setUrlActionOrg($url) |
{ |
$this->url_action_org = $url; |
} |
/** Accesseur getUrlActionOrg() - Retourne l'url avec l'action et l'id organisation configurable. |
* |
* @return string l'url avec l'action et l'id organisation configurable via sprintf. |
* @access public |
*/ |
function getUrlActionOrg() |
{ |
return $this->url_action_org; |
} |
/** Accesseur setUrlActionOrgEquipe() - Ajoute l'url avec l'action, l'id organisation et l'id equipe configurable. |
* |
* @param string l'url avec l'action, l'id organisation et l'id equipe configurable via sprintf. |
* @return void |
* @access public |
*/ |
function setUrlActionOrgEquipe($url) |
{ |
$this->url_action_org_equipe = $url; |
} |
/** Accesseur getUrlActionOrgEquipe() - Retourne l'url avec l'action, l'id organisation et l'id equipe configurable. |
* |
* @return string l'url avec l'action, l'id organisation et l'id equipe configurable via sprintf. |
* @access public |
*/ |
function getUrlActionOrgEquipe() |
{ |
return $this->url_action_org_equipe; |
} |
/** Accesseur setUrlActionOrgColl() - Ajoute l'url avec l'action, l'id organisation et l'id collection configurable. |
* |
* @param string l'url avec l'action, l'id organisation et l'id collection configurable via sprintf. |
* @return void |
* @access public |
*/ |
function setUrlActionOrgColl($url) |
{ |
$this->url_action_org_coll = $url; |
} |
/** Accesseur getUrlActionOrgColl() - Retourne l'url avec l'action, l'id organisation et l'id collection configurable. |
* |
* @return string l'url avec l'action, l'id organisation et l'id collection configurable via sprintf. |
* @access public |
*/ |
function getUrlActionOrgColl() |
{ |
return $this->url_action_org_coll; |
} |
/** Accesseur setUrlActionOrgNote() - Ajoute l'url avec action, id organisation et id note configurable. |
* |
* @param string l'url avec l'action, l'id organisation et id note configurable via sprintf. |
* @return void |
* @access public |
*/ |
function setUrlActionOrgNote($url) |
{ |
$this->url_action_org_note = $url; |
} |
/** Accesseur getUrlActionOrgNote() - Retourne l'url avec l'action, l'id organisation et id note configurable. |
* |
* @return string l'url avec l'action, l'id organisation et l'id note configurable via sprintf. |
* @access public |
*/ |
function getUrlActionOrgNote() |
{ |
return $this->url_action_org_note; |
} |
/** Accesseur setUrlActionOrgCollNote() - Ajoute l'url avec action, id organisation, id collection et id note configurable. |
* |
* @param string l'url avec l'action, l'id organisation, l'id collection et id note configurable via sprintf. |
* @return void |
* @access public |
*/ |
function setUrlActionOrgCollNote($url) |
{ |
$this->url_action_org_coll_note = $url; |
} |
/** Accesseur getUrlActionOrgCollNote() - Retourne l'url avec l'action, l'id organisation, l'id collection et id note configurable. |
* |
* @return string l'url avec l'action, l'id organisation, l'id collection et l'id note configurable via sprintf. |
* @access public |
*/ |
function getUrlActionOrgCollNote() |
{ |
return $this->url_action_org_coll_note; |
} |
/** Accesseur setUrlActionUtilisateur() - Ajoute l'url avec l'action et l'id utilisateur configurable. |
* |
* @param string l'url avec l'action et l'id utilisateur configurable via sprintf. |
* @return void |
* @access public |
*/ |
function setUrlActionUtilisateur($url) |
{ |
$this->url_action_utilisateur = $url; |
} |
/** Accesseur getUrlActionUtilisateur() - Retourne l'url avec l'action et l'id utilisateur configurable. |
* |
* @return string l'url avec l'action et l'id utilisateur configurable via sprintf. |
* @access public |
*/ |
function getUrlActionUtilisateur() |
{ |
return $this->url_action_utilisateur; |
} |
/** Accesseur setUtilisateur() - Ajoute l'utilisateur courant. |
* |
* @param H_Utilisateur l'objet l'utilisateur courant. |
* @return void |
* @access public |
*/ |
function setUtilisateur(&$un_utilisateur) |
{ |
$this->utilisateur =& $un_utilisateur; |
} |
/** Accesseur getUtilisateur() - Retourne l'utilisateur courant. |
* |
* @return H_Utilisateur l'objet l'utilisateur courant. |
* @access public |
*/ |
function getUtilisateur() |
{ |
return $this->utilisateur; |
} |
/** Accesseur setCorrespondant() - Ajoute le correspondant courant. |
* |
* @param H_Utilisateur l'objet correspondant courant. |
* @return void |
* @access public |
*/ |
function setCorrespondant(&$un_correspondant) |
{ |
$this->correspondant =& $un_correspondant; |
} |
/** Accesseur getCorrespondant() - Retourne le correspondant courant. |
* |
* @return H_Utilisateur l'objet correspondant courant. |
* @access public |
*/ |
function getCorrespondant() |
{ |
return $this->correspondant; |
} |
/** Accesseur setRedacteur() - Ajoute le rédacteur courant. |
* |
* @param H_Utilisateur l'objet rédacteur courant. |
* @return void |
* @access public |
*/ |
function setRedacteur(&$un_redacteur) |
{ |
$this->redacteur =& $un_redacteur; |
} |
/** Accesseur getRedacteur() - Retourne le rédacteur courant. |
* |
* @return H_Utilisateur l'objet rédacteur courant. |
* @access public |
*/ |
function getRedacteur() |
{ |
return $this->redacteur; |
} |
/** Accesseur setOrganisation() - Ajoute l'organisation de l'utilisateur. |
* |
* @param H_Organisation l'objet organisation correspondant à l'utilisateur. |
* @return void |
* @access public |
*/ |
function setOrganisation(&$une_organisation) |
{ |
$this->organisation =& $une_organisation; |
} |
/** Accesseur getOrganisation() - Retourne l'organisation courante. |
* |
* @return H_Organisation l'objet organisation courant de l'utilisateur. |
* @access public |
*/ |
function getOrganisation() |
{ |
return $this->organisation; |
} |
/** Accesseur setEquipe() - Ajoute l'équipe courante. |
* |
* @param H_equipe l'objet équipe correspondant à l'organisation courante. |
* @return void |
* @access public |
*/ |
function setEquipe(&$une_equipe) |
{ |
$this->equipe =& $une_equipe; |
} |
/** Accesseur setCollection() - Ajoute une collection. |
* |
* @param H_collection l'objet collection courant. |
* @return void |
* @access public |
*/ |
function setCollection(&$une_collection) |
{ |
$this->collection =& $une_collection; |
} |
/** Accesseur getCollection() - Retourne une collection. |
* |
* @return H_collection l'objet collection courant. |
* @access public |
*/ |
function getCollection() |
{ |
return $this->collection; |
} |
/** Accesseur setNote() - Ajoute une note. |
* |
* @param H_indic l'objet note (H_indic) courant. |
* @return void |
* @access public |
*/ |
function setNote(&$une_note) |
{ |
$this->note =& $une_note; |
} |
|
// +--------------------------------------------------------------------------------------------------+ |
// MÉTHODES |
/** |
* Méthode remplacerEsperluette() - Remplace les & en & |
* |
* Permet de remplacer les & en & dans les données extraites de la |
* base de données. |
* |
* @param object l'objet dans lequel il faut ramplacer les & des attributs. |
* @return mixed l'objet avec les & remplacés en & ou si erreur FALSE. |
* @access public |
*/ |
function remplacerEsperluette(&$objet) |
{ |
// Remplacement des & en & avant renvoi des données |
if (is_object($objet)) { |
foreach (get_object_vars($objet) as $cle => $valeur) { |
$objet->$cle = str_replace(' & ', ' & ', $valeur); |
} |
return $objet; |
} |
return FALSE; |
} |
} |
|
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
|
|
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.2 2005/04/06 13:29:17 jpm |
* Ajout et modifications des objets représentant la base de données Herbier. |
* |
* Revision 1.1 2005/03/08 14:13:21 jpm |
* Ajout des classes d'accès à la base de données. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |