Rev 880 | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?phpclass NomDecorateur implements NomResponsabilite {protected $nom = null;protected $nomFormate = array();private $detailsHrefTpl = null;protected $correspondances = array('id' => 'Id','nom_sci' => 'Intitule','href' => 'Href','auteur' => 'Auteur','annee' => 'Annee','biblio_origine' => 'Biblio','nom_addendum' => 'Addendum','notes' => 'Notes','homonyme' => 'Homonyme');public function __construct(NomDO $nomADecorer, $detailsHrefTpl) {$this->nom = $nomADecorer;$this->detailsHrefTpl = $detailsHrefTpl;$this->initialiserNomFormate();}public function traiterChampsRetour(Array $champsRetour) {foreach ($champsRetour as $champ) {if (array_key_exists($champ, $this->correspondances)) {$methodesAExecuter = explode(',', $this->correspondances[$champ]);foreach ($methodesAExecuter as $methodeNom) {$methodeAjouter = 'ajouter'.$methodeNom;if (method_exists($this, $methodeAjouter)) {$this->$methodeAjouter();}}}}}public function ajouterId() {$this->nomFormate['id'] = (int) $this->nom->getTag('num_nom');}public function ajouterIntitule() {$this->nomFormate['nom_sci'] = $this->nom->getTag('nom_sci');}public function ajouterHref() {if ($this->nom->verifierTag('num_nom')) {$href = sprintf($this->detailsHrefTpl, $this->nom->getTag('num_nom'));$this->nomFormate['href'] = $href;}}public function ajouterAuteur() {if ($this->nom->verifierTag('auteur')) {$this->nomFormate['auteur'] = $this->nom->getTag('auteur');}}public function ajouterAnnee() {if ($this->nom->verifierTag('annee')) {$this->nomFormate['annee'] = $this->nom->getTag('annee');}}public function ajouterBiblio() {if ($this->nom->verifierTag('biblio_origine')) {$this->nomFormate['biblio_origine'] = $this->nom->getTag('biblio_origine');}}public function ajouterAddendum() {if ($this->nom->verifierTag('nom_addendum')) {$this->nomFormate['nom_addendum'] = $this->nom->getTag('nom_addendum');}}public function ajouterNotes() {if ($this->nom->verifierTag('notes')) {$this->nomFormate['notes'] = $this->nom->getTag('notes');}}public function ajouterHomonyme() {if ($this->nom->verifierTag('homonyme') && $this->nom->getTag('homonyme') == 1) {$this->nomFormate['homonyme'] = true;}}public function initialiserNomFormate() {$this->nomFormate = array();}public function getNomFormate() {return $this->nomFormate;}}?>