[spip-dev] Pipeline "autoriser"

Hello,
j'ai un besoin de restreindre l'accès à des rubriques (comme accès restreint) mais de manière plutôt dynamique (suivant des scores de jeux).

Et Fil m'a appris qu'il y avait un pipeline "autoriser" pour faire ça proprement. Tandis que le plugin Accès Restreint surcharge des fonctions d'autorisation (et donc plus moyen de modifier après ça).

Je me suis inscris dans ce pipeline et j'ai fait en gros :
function elearning_autoriser_modules($flux){
     echo "Blop blop test :";
     var_dump($flux);
}

Et ben ça retourne NULL à chaque fois qu'il y a appel.
Donc je ne sais absolument pas comment utiliser ce pipeline pour modifier par exemple les autorisations "voir" de certaines rubriques.

Par ailleurs, j'ai remarqué qu'en faisant une boucle (RUBRIQUES), il n'y a pas d'appel à autoriser() nulle part. En tout cas mon echo dans le pipeline n'y est pas. Donc je vois encore moins comment restreindre l'accès à des rubriques.

Une oreille compatissante ? :slight_smile:

Personne il connaît du tout ? C'est qui qui l'a groprammé ?

Hello,
j'ai un besoin de restreindre l'accès à des rubriques (comme accès
restreint) mais de manière plutôt dynamique (suivant des scores de jeux).

Et Fil m'a appris qu'il y avait un pipeline "autoriser" pour faire ça
proprement. Tandis que le plugin Accès Restreint surcharge des fonctions
d'autorisation (et donc plus moyen de modifier après ça).

Je me suis inscris dans ce pipeline et j'ai fait en gros :
function elearning_autoriser_modules($flux){
    echo "Blop blop test :";
    var_dump($flux);
}

Et ben ça retourne NULL à chaque fois qu'il y a appel.
Donc je ne sais absolument pas comment utiliser ce pipeline pour
modifier par exemple les autorisations "voir" de certaines rubriques.

je ne comprends même pas comment cette fonction peut être appelée et
afficher NULL ; le pipeline actuellement ne sert qu'à *charger* des
fonctions, qui doivent respecter le nommage autoriser_OBJET_ACTION()

Ce que tu voudrais c'est un pipeline sur *chaque* autorisation ; en
effet ça peut être marrant et pas forcément lent, il faut l'ajouter et
voir ce que ça donne.

Par ailleurs, j'ai remarqué qu'en faisant une boucle (RUBRIQUES), il n'y
a pas d'appel à autoriser() nulle part. En tout cas mon echo dans le
pipeline n'y est pas. Donc je vois encore moins comment restreindre
l'accès à des rubriques.

Non, c'est totalement disjoint, alors que ça pourrait (devrait ?) être
la même chose ; mais techniquement c'est autre chose car les critères
par défaut {statut=publie} sont écrits en SQL, tandis qu'autoriser est
en php.

Bref pour ton problème il vaut mieux que tu utilises des #SESSION,
avec session_set() pour poser des valeurs dans des variables
utilisateur

(je suis pas mal en retard sur ce mail je crois)

-- Fil

Fil a écrit :

(je suis pas mal en retard sur ce mail je crois)

Oui mais c'est pas grave, merci.
Ça m'éclaire quand même vu que je n'ai pas encore trouvé de solution satifaisante.