Carnet Wiki

AutorisationsDansSpip

Version 5 — March 2012 YannX

Les fonction et balise d’autorisations sont très utiles,... quand on sait quel paramètre donner dans les squelettes d’appel !

Pour cela, une solution est d’examiner les sources définissant les fonctions d’autorisation :
-  en SPIP v2 stable à ce jour, il faut examiner ./ecrire/inc/autoriser.php, et ./ecrire/inc/utils.php
-  pour les plugins, vous pourrez rechercher les lignes contenant function autorise....
-  l’autre solution consiste à en regarder les usages : cherchez les fichiers avec autoriser(' pour commencer..

Récapitulons les paramètres de la fonction :
function autoriser_dist($faire, $type='', $id=0, $qui = NULL, $opt = NULL)
API pour une fonction generique d’autorisation :

  • $qui est :
    • vide (on prend alors visiteur_session)
    • un id_auteur (on regarde dans la base)
    • qui est traduit par autoriser_dist en un tableau auteur $ qui complet, y compris [restreint]
  • $faire est une action (’modifier’, ’publier’...)
  • $type est un type d’objet ou nom de table (’article’)
  • $id est l’id de l’objet sur lequel on veut agir
  • $opt (inutilise pour le moment) = options sous forme de tableau associatif
    // (par exemple pour preciser si l’autorisation concerne tel ou tel champ)

La première question porte sur la liste des actions controlées : le paramètre du faire !

On trouve aussi des autorisations génériques (se reporter à l’ordre de recherche des fonctions..) :

    • autoriser_webmestre
    • autoriser_defaut = autoriser_configurer : les Admins non restreints
    • autoriser_ecrire : pour autoriser l’accès à l’espace privé
    • autoriser_previsualiser
    • autoriser_dater
    • autoriser_ok et autoriser_niet
    • autoriser_voir (dépend du $type )
  • pour le traitement des rubriques
    • autoriser_rubrique_publierdans = autoriser_rubrique_modifier
    • autoriser_rubrique_creerrubriquedans
    • autoriser_rubrique_editermots
  • pour le traitement des articles
    • autoriser_article_modifier :=autoriser_rubrique_publierdans
    • autoriser_article_editermots = autoriser_rubrique_editermots
  • ensuite la plupart des autorisations vont dépendre aussi du $type
    • autoriser_voir (dépend du $type )
  • pour les auteurs, on trouvera d’autres fonctionnalités
    • autoriser_auteur_modifier : prend divers cas...
    • avec une fonction liste_rubriques_auteur (gestion de spip_auteurs_rubriques en SPIP2)

On commence une récapitulation des actions :
-  dans utils :

  • previsualiser :
  • debug :
    -  dans autoriser :
  • verifier
  • voir
  • modifier
  • publierdans
  • editermots

Retour à la version courante

Toutes les versions