XHTML.net

Technology talks by Loïc d’Anterroches

News, articles, PHP, scripts, XHTML/CSS, …

  1. Home
  2. PHP: Hypertext Preprocessor
  3. Pluf - Framework en PHP5

Système de préconditions pour les vues dans Pluf

The 2008-01-31 at 12:19 by Loïc d'Anterroches filed under Pluf - Framework en PHP5.

Supposons qu’avec Pluf, vous avez 10 vues et que toutes les vues demandent à ce que l’utilisateur soit enregistré pour voir ces vues. Aujourd’hui, dans le code vous avez 10 fois quelque chose du genre :

class maclass
{
    function mavue($request, $match)
    {
        if ($request->user->isAnonymous()) {
            return new Pluf_HTTP_Response_RedirectToLogin($request);
        }
        ....
    }
}

Maintenant vous pouvez enlever le bloque if, prendre la liste des vues et ajouter pour chaque vue :

$ctl[ = array('regex' => '#^/whatever/$#',
               'priority' => 4,
               'base' => '/index.php',
               'precond' => 'Pluf_Precondition::loginRequired',
               'model' => 'maclass',
               'method' => 'mavue');

precond est soit une unique précondition, soit un tableau avec une liste de préconditions. Une précondition est une méthode statique qui retourne soit true en cas de succès soit objet de type Pluf_HTTP_Response ou dérivé en cas d’erreur. C’est tout simple et c’est rudement efficace. Encore un petit truc pour éviter d’écrire plusieurs fois la même chose dans votre code.

Comments from readers

Voice your ideas

It is painless and I try not to kill electrons in the process.


Your email is required but will not be shared nor displayed.


Do you think your comment will force me to write even better stuff next time? If so, you simply rock.


Logo of Plume CMS