| Line 7... |
Line 7... |
| 7 |
* @package Collection
|
7 |
* @package Collection
|
| 8 |
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
8 |
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
| 9 |
* @copyright 2010 Tela-Botanica
|
9 |
* @copyright 2010 Tela-Botanica
|
| 10 |
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
|
10 |
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
|
| 11 |
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
|
11 |
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
|
| 12 |
* @version SVN: $Id: ColControleur.php 18 2010-03-23 18:14:32Z jpm $
|
12 |
* @version SVN: $Id: ColControleur.php 19 2010-03-24 18:22:25Z jpm $
|
| 13 |
*/
|
13 |
*/
|
| 14 |
abstract class ColControleur extends Controleur {
|
14 |
abstract class ColControleur extends Controleur {
|
| Line 15... |
Line 15... |
| 15 |
|
15 |
|
| 16 |
const RENDU_TETE = 'tete';
|
16 |
const RENDU_TETE = 'tete';
|
| Line 235... |
Line 235... |
| 235 |
}
|
235 |
}
|
| 236 |
$valeur = '';
|
236 |
$valeur = '';
|
| 237 |
}
|
237 |
}
|
| 238 |
// Type correspondant à une entrée de l'ontologie
|
238 |
// Type correspondant à une entrée de l'ontologie
|
| 239 |
if ($typeEstOntologie) {
|
239 |
if ($typeEstOntologie) {
|
| 240 |
$valeurTypeOntologie = '[0-9]+'.self::SEPARATEUR_TYPE_VALEUR;
|
240 |
$valeurTypeOntologie = '([0-9]+)'.self::SEPARATEUR_TYPE_VALEUR;
|
| 241 |
if (preg_match('/^'.$valeurTypeOntologie.'.+$/', $valeur)) {
|
241 |
if (preg_match('/^'.$valeurTypeOntologie.'.*$/', $valeur, $match)) {
|
| 242 |
$type = substr($valeur, 0, strripos($valeur, self::SEPARATEUR_TYPE_VALEUR));
|
242 |
$type = $match[1];
|
| 243 |
$valeurOntologie = Ontologie::getValeur($type);
|
243 |
$valeurOntologieNom = Ontologie::getValeurNom($type);
|
| 244 |
if ($valeurOntologie != '') {
|
244 |
if ($valeurOntologieNom !== false) {
|
| 245 |
$valeurOntologieNom = $valeurOntologie['nom'];
|
- |
|
| 246 |
$valeur = preg_replace('/^'.$type.'/', $valeurOntologieNom.': ', $valeur);
|
245 |
$valeur = preg_replace('/^'.$type.'/', $valeurOntologieNom.': ', $valeur);
|
| 247 |
}
|
246 |
}
|
| 248 |
}
|
247 |
}
|
| 249 |
}
|
248 |
}
|
| 250 |
// Donnée correspondant à une entrée de l'ontologie
|
249 |
// Donnée correspondant à une entrée de l'ontologie
|
| 251 |
if ($donneeEstOntologie) {
|
250 |
if ($donneeEstOntologie) {
|
| 252 |
$donneeOntologie = self::SEPARATEUR_TYPE_VALEUR.'([0-9]+)';
|
251 |
$donneeOntologie = self::SEPARATEUR_TYPE_VALEUR.'([0-9]+)';
|
| 253 |
if (preg_match('/^.+'.$donneeOntologie.'$/', $valeur, $match)) {
|
252 |
if (preg_match('/^.+'.$donneeOntologie.'$/', $valeur, $match)) {
|
| 254 |
$donnee = $match[1];
|
253 |
$donnee = $match[1];
|
| 255 |
$donnee = str_replace(self::SEPARATEUR_TYPE_VALEUR, '', $donnee);
|
254 |
$donnee = str_replace(self::SEPARATEUR_TYPE_VALEUR, '', $donnee);
|
| 256 |
$valeurOntologie = Ontologie::getValeur($donnee);
|
255 |
$valeurOntologieNom = Ontologie::getValeurNom($donnee);
|
| 257 |
if ($valeurOntologie != '') {
|
256 |
if ($valeurOntologieNom !== false) {
|
| 258 |
$valeurOntologieNom = $valeurOntologie['nom'];
|
- |
|
| 259 |
$valeur = preg_replace('/'.$donnee.'$/', $valeurOntologieNom, $valeur);
|
257 |
$valeur = preg_replace('/'.$donnee.'$/', $valeurOntologieNom, $valeur);
|
| 260 |
}
|
258 |
}
|
| 261 |
}
|
259 |
}
|
| 262 |
}
|
260 |
}
|
| Line 293... |
Line 291... |
| 293 |
$this->url->setVariableRequete('id', $id_collection);
|
291 |
$this->url->setVariableRequete('id', $id_collection);
|
| 294 |
$url = $this->url->getURL();
|
292 |
$url = $this->url->getURL();
|
| 295 |
$this->url->unsetVariablesRequete(array('module', 'action', 'id'));
|
293 |
$this->url->unsetVariablesRequete(array('module', 'action', 'id'));
|
| 296 |
return $url;
|
294 |
return $url;
|
| 297 |
}
|
295 |
}
|
| - |
|
296 |
|
| - |
|
297 |
protected function postraiterDonnees(&$tableau) {
|
| - |
|
298 |
if (count($tableau) > 0) {
|
| - |
|
299 |
foreach ($tableau as $cle => &$valeur) {
|
| - |
|
300 |
if ($valeur == '') {
|
| - |
|
301 |
$valeur = ' ';
|
| - |
|
302 |
} else if (is_string($valeur)) {
|
| - |
|
303 |
$valeur = preg_replace('/&(?!amp;)/i', '&', $valeur, -1);
|
| - |
|
304 |
} else if (is_array($valeur)) {
|
| - |
|
305 |
$this->postraiterDonnees($valeur);
|
| - |
|
306 |
}
|
| - |
|
307 |
}
|
| - |
|
308 |
}
|
| - |
|
309 |
}
|
| 298 |
}
|
310 |
}
|
| 299 |
|
311 |
|