Subversion Repositories Applications.gtt

Compare Revisions

Ignore whitespace Rev 123 → Rev 124

/trunk/bibliotheque/noyau/ControlleurFrontal.class.php
4,11 → 4,13
 
private $url_action;
private $url_format;
private $url_sortie;
 
public function __construct($action, $format)
public function __construct($action, $format, $sortie)
{
$this->url_action = $action;
$this->url_format = $format;
$this->url_sortie = $sortie;
}
public function getRegistre()
68,14 → 70,40
$this->chargerActionGenerique(&$tab_info_url['tab_actions']);
$Action->setSuivant($tab_info_url['tab_actions']);
$Action->demarrer();
$aso_principal['principal'] = $this->rendre();
//echo '<pre>'.print_r($aso_principal, true).'</pre>';
$aso_principal['principal']['titre'] = $this->getRegistre()->getTitre();
$this->getRegistre()->setEspaces(array());
$this->getRegistre()->setDonnees(array());
$this->getRegistre()->ajouterEspace('Principal', 'principal');
$this->getRegistre()->ajouterDonnee('principal', $aso_principal['principal']);
return $this->rendre();
if ($this->url_format == 'html') {
$aso_principal['principal'] = $this->rendre();
//echo '<pre>'.print_r($aso_principal, true).'</pre>';
$aso_principal['principal']['titre'] = $this->getRegistre()->getTitre();
$this->getRegistre()->setEspaces(array());
$this->getRegistre()->setDonnees(array());
$this->getRegistre()->ajouterEspace('Principal', 'principal');
$this->getRegistre()->ajouterDonnee('principal', $aso_principal['principal']);
}
$sortie = $this->rendre();
 
// Gestion de la sortie
//header('Pragma: public');
//header('Expires: 0');
//header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
//header('Cache-Control: private', false);
switch ($this->url_sortie) {
case 'html' :
echo $sortie;
break;
case 'csv' :
header('Content-Disposition: inline' );
header('Content-Type: text/plain');
header('Content-Length: '.strlen($sortie));
echo $sortie;
break;
case 'csvt' :
header('Content-Type: text/csv');
header('Content-Disposition: attachment; filename="'.str_replace(' ', '_', $this->getRegistre()->getTitre()).'.csv";' );
header('Content-Length: '.strlen($sortie));
echo $sortie;
break;
}
exit();
} else {
$m = "Le fichier $fichier_action contenant l'action est introuvable!";
trigger_error($m, E_USER_ERROR);
93,35 → 121,41
$squelette = $this->getRegistre()->getSquelettes($espace_de_nom);
}
$fichier_squelette = GTT_CHEMIN_PRESENTATION.$squelette.'.tpl.'.$this->url_format;
$squelette_erreur = $fichier_squelette;
if (file_exists($fichier_squelette)) {
$bool_squelette_erreur = false;
ob_start();
extract($GLOBALS['_GTT_']['i18n']['general'], EXTR_PREFIX_ALL, 'i18n_general');
extract($this->getRegistre()->getDonnees($espace_de_nom));
 
include_once $fichier_squelette;
// RĂ©partition dans des zones
switch($espace_de_nom) {
case 'principal' :
$contenu_principal .= ob_get_contents();
break;
case 'zone_calendrier' :
$aso_contenu['zone_calendrier'] .= ob_get_contents();
break;
case 'identification' :
$aso_contenu['zone_identification'] .= ob_get_contents();
break;
case 'zone_menu' :
$aso_contenu['zone_menu'] .= ob_get_contents();
break;
default:
$aso_contenu['zone_contenu'] .= ob_get_contents();
}
if ($this->url_format == 'html') {
// RĂ©partition dans des zones
switch($espace_de_nom) {
case 'principal' :
$contenu_principal .= ob_get_contents();
break;
case 'zone_calendrier' :
$aso_contenu['zone_calendrier'] .= ob_get_contents();
break;
case 'identification' :
$aso_contenu['zone_identification'] .= ob_get_contents();
break;
case 'zone_menu' :
$aso_contenu['zone_menu'] .= ob_get_contents();
break;
default:
$aso_contenu['zone_contenu'] .= ob_get_contents();
}
} else {
$contenu_principal = ob_get_contents();
}
ob_end_clean();
} else {
trigger_error("Absence du fichier de squelette : $fichier_squelette", E_USER_ERROR);
}
}
}
if ($bool_squelette_erreur) {
trigger_error("Absence du fichier de squelette : $squelette_erreur", E_USER_ERROR);
}
if (!is_null($contenu_principal)) {
return $contenu_principal;
}