Les autorisations par défaut de SPIP sont écrites dans le fichier ecrire/inc/autoriser.php
Lorsque l’on demande à SPIP une autorisation autoriser($faire, $type)
, SPIP part à la recherche d’une fonction pour traiter l’autorisation demandée. Il recherche dans cet ordre une fonction nommée :
-
autoriser_$type_$faire
, -
autoriser_$type
, -
autoriser_$faire
, -
autoriser_defaut
, - puis la même chose avec le suffixe
_dist
.
Réécriture du paramètre ’type’
Le paramètre type
subit deux transformations avant d’être utilisé pour trouver les fonctions d’autorisations :
- Il passe par la fonction
objet_type
, qui trouve le type d’objet à partir du nom d’objet ou de table. Typiquement, ça passe du nom de table avec un ’s’ (pluriel) au nom d’objet sans ’s’. On peut désactiver cela en commençant rajoutant un souligné ’_’ au début du type lors de l’appel. - Tous les caractères soulignés ’_’ sont supprimés pour le calcul des noms de fonction d’autorisation spécialisée.