Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 23-05-2013 15:09:58

el3ctr0n
Nouveau membre
Date d'inscription: 15-02-2013
Messages: 4

EventManager et getResponse()->setContent()

Bonjour,

Je viens vers vous car je butte sur un problème.

Je cherche à réalisé une classe de debug perso qui suivant certains paramètres affiche ou non à la fin de mon rendu un code html supplémentaire pour y afficher mes infos de debuggage

Seulement je n'arrive à pas manipuler le rendu final de mon application.
J'ai essayé de réaliser cette fonctionnalité de la manière suivante mais cela ne fait rien, pourtant j'arrive bien dans la fonction onRender()

Code:

public function load($eventManager)
{
    $eventManager->attach('render',array($this,'onRender'),null,10000);
        
}
public function onRender($e)
{
    if($this->actif) $e->getResponse()->setContent($e->getResponse()->getContent()."\n".$this->getDebugPannel());    
}

Pouvez vous m'aider ?

Merci.

Dernière modification par el3ctr0n (23-05-2013 15:10:38)

Hors ligne

 

#2 24-05-2013 09:07:44

flobrflo
Membre
Lieu: Marseille
Date d'inscription: 26-04-2013
Messages: 376

Re: EventManager et getResponse()->setContent()

As tu essayé de passer par un ViewModel pour afficher tes infos?

Hors ligne

 

#3 28-05-2013 14:58:55

blanchonvincent
Membre
Lieu: Sophia Antipolis
Date d'inscription: 18-11-2009
Messages: 45
Site web

Re: EventManager et getResponse()->setContent()

J'ai bien une petite idée.

Tu t'ajoute sur une priorité de 10000, du coup le rendu par défaut qui a une priorité basse :

https://github.com/zendframework/zf2/bl … gy.php#L50

passe derrière toi et remplace ton contenu :

https://github.com/zendframework/zf2/bl … y.php#L125

Essaye de stopper l'évènement avec $e->stopPropagation(true); juste à la fin de "onRender" pour voir

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages