Le 5 novembre 2008, Pxxo 5.5

ExplicitMode

Le paramètre ExplicitMode fait son apparition. Ce paramètre permet d'envoyer automatiquement ou non les variables de classes du widget. Si il vaut false (sa valeur par défaut) alors les variables de classes seront envoyés au template "comme avant". Si il vaut true alors il faudra utiliser $this->View.

Par défaut, tous les widgets fils héritent de la valeur ExplicitMode du widget courant.

Exemple :

classe

 
...
function index() 
{
 $this->View->truc = 'bidule';
}
...

template

<h1>
     <?php echo $this->truc ?>
</h1>

Nouvelle méthode : reconstruct

Cette méthode permet d'exécuter à nouveau un objet sans avoir à le recréer (cad faire new). Démonstration :

Avant :

for($z = 0; $z < 100; $z++) {
    $p = array('indice' => $z);
    $o = new monwidget($p);    
    $o->main();
    $o->dump();
}

Après :

$o = null
for($z = 0; $z < 100; $z++) {
    $p = array('indice' => $z);
    if (is_null($o)) 
        $o = new monwidget($p);    
    else 
        $o->reconstruct($p);
    $o->main();
    $o->dump();
}

La méthode reconstruct prend comme deuxième paramètre un booléen qui si il est positionné à false permet de ne pas changer de ClassID entre deux appels consécutifs. L'intérêt de de cette méthode est d'économiser un peu de CPU…

Bug fix : addCookie

La méthode addCookie de la classe Pxxo_Response ne fonctionnait pas correctement sous IE. Lorsqu'un cookie permanent était posé, le cookie expirait à la fin de la session sous IE alors que sous FF cela fonctionnait.

Optimisation des performances

Plusieurs méthodes ont été réécrites suite à une étude du code avec le profiler Xdebug. Le détail de l'opération : http://www.touv.fr/spip.php?article149

Paramètres sensibles à casse

Le nom des paramètres génériques en entrée de widget sont maintenant sensible à la case.

 
$p = array ('theme' => 'blue');
$o = new mon_widget($p);
 
// doit maintenant s'écrire 
 
$p = array ('Theme' => 'blue');
$o = new mon_widget($p);

modification des E/S pour stackWidget

La méthode stackWidget ne renvoi plus rien.

Avant

$ob = $p->stackWidget($o);
echo $ob->get();

Après

$p->stackWidget($o);
$ob = $o->getBuffer();
echo $ob->get();

Allègement des sources

Les fichiers de traduction de Zend_Locale ont été retiré car elles sont inutilisées par Pxxo. Cette opération allège les sources de Pxxo de 6Mo. (disponible en version 5.5.1)

Bug fix : addCookie et setRedirect

Dans la classe Pxxo_Response, la méthode addCookie ne faisait rien lorsqu'elle était appelée en même temps qu'un setRedirect. (disponible en version 5.5.2)

fr/release/5.5.txt · Dernière modification: 2012/01/14 00:12 (édition externe)
 
 

©2003-2012 Pxxo

Partenaires : INIST-CNRS | Sourcesup | Web2.0 chat server | Jeux gratuits