Subversion Repositories eFlore/Applications.eflore-consultation

Compare Revisions

Ignore whitespace Rev 78 → Rev 79

/trunk/controleurs/aControleur.php
49,7 → 49,11
protected function setSortie($position, $contenu, $fusionner = false) {
if ($this->verifierExistenceTypeSortie($position)) {
if ($fusionner) {
$this->sortie[$position] .= $contenu;
if (isset($this->sortie[$position])) {
$this->sortie[$position] .= $contenu;
} else {
$this->sortie[$position] = $contenu;
}
} else {
$this->sortie[$position] = $contenu;
}
88,8 → 92,16
* Fusionne un tableau de sortie par défaut avec le tableau passé en paramêtre.
* @param array le tableau à fusionner
*/
private function fusionnerSortie($sortie) {
$this->sortie = array_merge($this->sortie, $sortie);
private function fusionnerSortie($nouvelleSortie) {
$sortieActuelle = $this->getSortie();
foreach ($nouvelleSortie as $position => $nouveauContenu) {
if ($nouveauContenu != '') {
$contenuPrecedent = isset($sortieActuelle[$position]) ? $sortieActuelle[$position] : null;
if ($nouveauContenu != $contenuPrecedent) {
$this->setSortie($position, $nouveauContenu, true);
}
}
}
}
 
/**
98,9 → 110,10
*/
protected function executerAction($ClasseModule, $action) {
$module = new $ClasseModule();
$sortiePrecedente = $this->getSortie();
$module->$action();
$this->fusionnerSortie($module->getSortie());
$nouvelleSortie = $module->getSortie();
$this->fusionnerSortie($nouvelleSortie);
}
//+------------------------------------------------------------------------------------------------------+