ciautoriser : plugin « Pipeline pour autoriser »

Le plugin « ciautoriser » offre un véritable pipeline qui permet à plusieurs plugins de modifier la même autorisation.

Si un plugin doit intervenir sur les autorisations de voir les rubriques, il peut charger, via le pipeline « autoriser », sa propre fonction « autoriser_rubrique_voir ».

Si un second plugin doit également intervenir, de manière différente, sur les autorisations de voir les rubriques, il peut charger, via le pipeline « autoriser », sa propre fonction « autoriser_rubrique_voir ».

Toutefois, la fonction « autoriser_rubrique_voir » figurera dans les deux plugins et PHP considère comme erreur fatale le fait de déclarer deux fois la même fonction.

On peut vérifier l’existence de la fonction préalablement, mais dans ce cas une seule fonction « autoriser_rubrique_voir » pourra être utilisée et l’un des plugin restera sans effet sur les autorisations de voir les rubriques.

L’objectif du plugin "ciautoriser" est d’offrir un véritable pipeline qui permette à plusieurs plugins de modifier la même autorisation.

Compatibilité

CIAUTORISER version 1.5 est compatible avec SPIP 2.1, SPIP 3.0, 3.1, 3.2, 4.0, 4.1.
CIAUTORISER version 1.5 est compatible avec PHP 5 et PHP 7.0, 7.1, 7.2, 7.3, 7.4, 8.0, 8.1.

Il surcharge les fonctions d’autorisation. Aussi, ce dernier est incompatible avec les plugins qui surchargent les fonctions d’autorisation.

Installation

Le plugin s’installe comme tous les plugins, cf. http://www.spip.net/fr_article3396.html

Paramétrage

Le plugin ne nécessite pas de paramétrage.

Utilisation

Consulter l’étude d’architecture qui est jointe au présent article.

Illustration

A titre d’illustration, le plugin "cirv : rédacteur valideur", qui offre la possibilité d’autoriser certains rédacteurs à publier leurs propres articles, et le plugin « cirv : rédacteur restreint », qui étend aux rédacteurs la notion d’administrateurs restreints, utilisent tous les deux le plugin ’ciautoriser’.

Ils sont téléchargeables à l’adresse suivante (ils incluent chacun le plugin ciautoriser) :

cirv : plugin « rédacteur valideur »

cirr : plugin « rédacteur restreint »

Version successives du plugin

La version 1.21 du 03/06/2014 contourne un bug de SPIP.

La version 1.5 du 15/06/2022 apporte la compatibilité avec PHP 8.0 et 8.1, ainsi que la compatibilité avec SPIP 4.1