Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 1696 → Rev 1793

/trunk/services/bibliotheque/GestionBdd.php
File deleted
\ No newline at end of file
/trunk/services/bibliotheque/Masque.php
11,14 → 11,14
* @version $Id: Bdd.php 403 2012-02-22 14:35:20Z gduche $
*/
class Masque {
 
const prefixe = 'masque.';
const masqueGeneral = 'masque';
 
private $masquesPossibles;
private $parametres;
private $masque;
 
/**
* Constructeur de la classe Masque
* @param $masquesPossibles la liste des masques autorisés séparé par des ','
33,12 → 33,12
$this->parametres = $parametres;
$this->chargerMasque();
}
 
/**
* Parcourir le tableau Paramètres pour trouver tous les champs masque
*/
public function chargerMasque() {
if ($this->parametres != null) {
if ($this->parametres != null) {
foreach ($this->parametres as $id => $parametre) {
if (strpos($id, self::prefixe) === 0 || $id == self::masqueGeneral) {
if (in_array(str_replace(self::prefixe, '', $id), $this->masquesPossibles)) {
48,7 → 48,7
}
}
}
 
/**
* Retourner les masques sous forme de chaine
* @return String la chaine de caractère sous la forme masque=valeur&masque2=valeur*/
63,7 → 63,7
return '';
}
}
 
/**
* Récupérer tout ou partie du masque
* @param String $id (optionnel) l'idenfiant du masque
76,5 → 76,4
return $this->masque;
}
}
}
?>
}
/trunk/services/bibliotheque/ReponseHttp.php
1,18 → 1,19
<?php
/**
* Classe créant la réponse HTTP pour les services de DEL.
*
* Vérifie qu'aucune erreur n'a été générée. Si une erreur existe, retourne le contenu de l'erreur.
* Encodage en entrée : utf8
* Encodage en sortie : utf8
*
* @category DEL
* @package Commun
* @version 0.1
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
* @copyright 1999-2014 Tela Botanica (accueil@tela-botanica.org)
* Classe créant la réponse HTTP pour les services de DEL.
*
* Vérifie qu'aucune erreur n'a été générée. Si une erreur existe, retourne le contenu de l'erreur.
*
* @category DEL
* @package Services
* @subpackage Bibliotheque
* @version 0.1
* @author Mathias CHOUET <mathias@tela-botanica.org>
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @author Aurelien PERONNET <aurelien@tela-botanica.org>
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
* @copyright 1999-2014 Tela Botanica <accueil@tela-botanica.org>
*/
class ReponseHttp {
 
75,5 → 76,4
}
}
 
}
?>
}
/trunk/services/bibliotheque/Navigation.php
1,14 → 1,17
<?php
/**
* Navigation gère les url de navigation en fonction d'un départ et d'une limite
 
* @category php 5.2
* @package del
* @author Grégoire Duché <gregoire@tela-botanica.org>
* @copyright Copyright (c) 2012, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version $Id: Bdd.php 403 2012-02-22 14:35:20Z gduche $
* Navigation gère les url de navigation en fonction d'un départ et d'une limite
*
* @category DEL
* @package Services
* @subpackage Bibliotheque
* @version 0.1
* @author Mathias CHOUET <mathias@tela-botanica.org>
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @author Aurelien PERONNET <aurelien@tela-botanica.org>
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
* @copyright 1999-2014 Tela Botanica <accueil@tela-botanica.org>
*/
class Navigation {
 
71,14 → 74,13
* @param $parametresAdditionnels le tableau contenant les parametres => valeurs additionnels
* */
private function obtenirUrlNavigation($depart, $limite) {
$parametres = $this->parametres;
$parametres['navigation.depart'] = $depart;
$parametres['navigation.limite'] = $limite;
 
$parametres = $this->parametres;
$parametres['navigation.depart'] = $depart;
$parametres['navigation.limite'] = $limite;
 
$this->urlNavigation->setRequete($parametres);
$url = $this->urlNavigation->getURL();
return $url;
$this->urlNavigation->setRequete($parametres);
$url = $this->urlNavigation->getURL();
return $url;
}
 
/**
101,7 → 103,6
* Récupérer le lien pour afficher les images suivantes en fonction des paramètres
* */
public function recupererHrefSuivant() {
 
$departActuel = $this->getDepart();
$limite = $this->getLimite();
$departSuivant = $departActuel + $limite;
126,6 → 127,4
public function setTotal($total) {
$this->total = $total;
}
 
}
?>
}
/trunk/services/bibliotheque/Outils.php
1,4 → 1,22
<?php
/**
* Classe contenant des méthodes utilitaires.
*
* Mettre les méthodes utilitaires dans cette classe, de temps en temps, si plusieurs méthodes ont une
* intéraction entre elles ou peuvent être regroupées. Les rassembler dans une nouvelle classe et mettre à
* jour le code.
*
* @category DEL
* @package Services
* @subpackage Bibliotheque
* @version 0.1
* @author Mathias CHOUET <mathias@tela-botanica.org>
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @author Aurelien PERONNET <aurelien@tela-botanica.org>
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
* @copyright 1999-2014 Tela Botanica <accueil@tela-botanica.org>
*/
class Outils {
 
public static function recupererTableauConfig($parametres) {
17,5 → 35,4
}
return $tableau;
}
}
?>
}
/trunk/services/bibliotheque/Conteneur.php
1,15 → 1,17
<?php
/**
* Le conteneur encapsule les classe Masque, Navigation et GestionBdd
* Il gère leur instanciation, ainsi que la récupération des paramètres depuis l'url ou
* Le conteneur encapsule l'instanciation des classes ainsi que la récupération des paramètres depuis l'url ou
* les fichiers de configuration
*
* @category DEL
* @package Commun
* @author Grégoire Duché <gregoire@tela-botanica.org>
* @copyright Copyright (c) 2012, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @package Bibliotheque
* @version 0.1
* @author Mathias CHOUET <mathias@tela-botanica.org>
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @author Aurelien PERONNET <aurelien@tela-botanica.org>
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
* @copyright 1999-2014 Tela Botanica <accueil@tela-botanica.org>
*/
//TODO : initialiser tous les objets dans le conteneur
//TODO : créer un tableau de partage
20,6 → 22,7
protected $masque;
protected $gestionBdd;
protected $sansLimite = false;
protected $partages = array();
 
/**
* Constructeur de la classe
69,6 → 72,8
$this->parametres[$cle] = $valeur;
}
 
//--------------------------------------------------------------------------------------------------------
// Ci-dessous méthode à revoir !
/**
* Charger la configuration depuis le fichier
* @param String $chemin le chemin relatif depuis le dossier configurations du fichier
82,7 → 87,7
}
Config::charger($cheminConfigurations.DS.$chemin);
 
if ($this->masque = $this->creerMasque()) {
if ($this->masque = new Masque(Config::get('masques_possibles'), $this->parametres)) {
$this->masque->chargerMasque();
} else {
$message = 'Erreur lors de la création du Masque';
90,7 → 95,7
throw new Exception($message, $code);
}
 
if ($this->navigation = $this->creerNavigation()) {
if ($this->navigation = new Navigation($this->parametres)) {
$this->navigation->chargerUrl();
} else {
$message = 'Erreur lors de la création de la Navigation';
98,34 → 103,10
throw new Exception($message, $code);
}
 
$this->creerGestionBdd($this->navigation, Config::get('schemaBdd'));
$this->gestionBdd = new GestionBdd($this->navigation, Config::get('schemaBdd'));
}
 
/**
* Créer l'objet Masque en fonction des configurations
* */
private function creerMasque() {
$this->masque = new Masque(Config::get('masques_possibles'), $this->parametres);
return $this->masque;
 
}
 
/**
* Créer l'objet navigation avec les paramètres
* */
private function creerNavigation() {
return ($this->navigation = new Navigation($this->parametres));
}
 
/**
* Créer l'objet Gestion BDD
* */
private function creerGestionBdd($navigation, $schemaBdd) {
$this->gestionBdd = new GestionBdd($navigation, $schemaBdd);
}
 
 
/**
* Changer la valeur de sans limite pour ne pas l'afficher dans l'entete
* */
public function setSansLimite() {
133,13 → 114,6
}
 
/**
* Récupérer l'objet GestionBdd
* */
public function getGestionBdd() {
return $this->gestionBdd;
}
 
/**
* Récupérer l'objet Navigation
* */
public function getNavigation() {
179,19 → 153,28
 
return $entete;
}
//--------------------------------------------------------------------------------------------------------
// Ci-dessous méthode ok !
 
public function getBdd() {
if (!isset($this->partages['Bdd'])){
$this->partages['Bdd'] = new Bdd();
}
return $this->partages['Bdd'];
}
 
public function getRestClient() {
if (!isset($this->restClient)) {
$this->restClient = new RestClient();
if (!isset($this->partages['restClient'])){
$this->partages['restClient'] = new RestClient();
}
return $this->restClient;
return $this->partages['restClient'];
}
 
public function getControleAcces() {
if (!isset($this->controleAcces)) {
$this->controleAcces = new ControleAcces($this);
if (!isset($this->partages['controleAcces'])) {
$this->partages['controleAcces'] = new ControleAcces($this);
}
return $this->controleAcces;
return $this->partages['controleAcces'];
}
}
?>
/trunk/services/bibliotheque/GestionUtilisateur.php
2,19 → 2,17
class GestionUtilisateur {
 
private $conteneur;
private $gestionBdd;
private $bdd;
 
public function __construct(Conteneur $conteneur = null) {
$this->conteneur = $conteneur == null ? new Conteneur() : $conteneur;
$this->conteneur->chargerConfiguration('config_utilisateurs.ini');
$this->gestionBdd = $conteneur->getGestionBdd();
$this->bdd = $this->gestionBdd->getBdd();
$this->bdd = $this->conteneur->getBdd();
$this->demarrerSession();
}
 
private function demarrerSession() {
if(session_id() == '') {
if (session_id() == '') {
// modifier ce test lors du passage en php 5.4
session_start();
}
87,5 → 85,4
unset($_COOKIE['del_courriel']);
unset($_COOKIE['del_mot_de_passe']);
}
}
?>
}
/trunk/services/bibliotheque/ControleAcces.php
17,13 → 17,11
class ControleAcces {
 
private $conteneur;
private $gestionBdd;
private $bdd;
 
public function __construct($conteneur) {
$this->conteneur = $conteneur;
$this->gestionBdd = $conteneur->getGestionBdd();
$this->bdd = $this->gestionBdd->getBdd();
$this->bdd = $this->conteneur->getBdd();
}
 
public function controlerIpAutorisees() {
/trunk/services/bibliotheque/EnteteHttp.php
1,7 → 1,20
<?php
/**
* Classe contenant le contenu par défaut de l'entête d'une réponse http par défaut.
*
* @category DEL
* @package Services
* @subpackage Bibliotheque
* @version 0.1
* @author Mathias CHOUET <mathias@tela-botanica.org>
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @author Aurelien PERONNET <aurelien@tela-botanica.org>
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
* @copyright 1999-2014 Tela Botanica <accueil@tela-botanica.org>
*/
class EnteteHttp {
public $code = RestServeur::HTTP_CODE_OK;
public $encodage = 'utf-8';
public $mime = 'application/json';
}
?>
}
/trunk/services/bibliotheque/ResultatService.php
1,7 → 1,20
<?php
/**
* Classe contenant seulement le résultat d'un service.
*
* @category DEL
* @package Services
* @subpackage Bibliotheque
* @version 0.1
* @author Mathias CHOUET <mathias@tela-botanica.org>
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @author Aurelien PERONNET <aurelien@tela-botanica.org>
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
* @copyright 1999-2014 Tela Botanica <accueil@tela-botanica.org>
*/
class ResultatService {
public $mime = 'application/json';
public $encodage = 'utf-8';
public $corps = '';
}
?>
}