id_article ?

Pour des raisons de cahier des charges, je réalise (j'essaye de...) un
plugin ressemblant à access_restreint avec des contrainte importantes :

- L'authentification doit se faire sur une base PostGreSQL extérieure,
via un formulaire tout ce qu'il y a de classique (login, mdp, "j'ai
perdu") [impossible d'utiliser spip_auteurs]
- les articles protégés par un mot clé (par exemple prive ou private),
- le plugin doit gérer l'affichage d'un bouton authentification/déconnexion
- a priori en attendant une éventuelle évolution du cahier des charges,
seuls des articles doivent être protégés (pas des rubriques).

Je dois - autant que faire se peut - travailler par surcharge du code
php (ie, pas de modification de squelette !) [contrainte forte !]

Mon premier pb est de retrouver simplement l'id de l'article. Je ne
connais pas assez les pipelines pour savoir lequel va me donner cet id.

Ensuite, je pense que c'est avec generer_url que je doit pouvoir travailler.

Francois

Le 22.04.17 à 09:30, Francois Sauterey a écrit :

Pour des raisons de cahier des charges, je réalise (j'essaye de...) un
plugin ressemblant à access_restreint avec des contrainte importantes :

- L'authentification doit se faire sur une base PostGreSQL extérieure,
via un formulaire tout ce qu'il y a de classique (login, mdp, "j'ai
perdu") [impossible d'utiliser spip_auteurs]
- les articles protégés par un mot clé (par exemple prive ou private),
- le plugin doit gérer l'affichage d'un bouton authentification/déconnexion
- a priori en attendant une éventuelle évolution du cahier des charges,
seuls des articles doivent être protégés (pas des rubriques).

Je dois - autant que faire se peut - travailler par surcharge du code
php (ie, pas de modification de squelette !) [contrainte forte !]

Mon premier pb est de retrouver simplement l'id de l'article. Je ne
connais pas assez les pipelines pour savoir lequel va me donner cet id.

Ensuite, je pense que c'est avec generer_url que je doit pouvoir travailler.

Francois

ca va être chaud de faire cela en pur php, car bon, il faudra bien que tu affiche un message si tu n'est pas authentifié.
La question n'est pas de retrouvé l'id article via un pipeline, mais de trouver la pipeline qui va te permettre de gérer ou non l'affichage de ton squelette.
  pre_boucle va te permettre de modifier la requete sql correspondant à une boucle. A priori cela me semble le plus pertinent. Mais par contre la syntaxe à utiliser à l'intérieur est un peu complexe, car tu manipule des objets-php "interne" à SPIP. Tu peux regarder du côté de exclure_secteur pour voir un exemple.

--
Maïeul