Le formulaire est affiché par défaut, cependant il est possible de restreindre cet affichage en fonction d’autorisations données.
Deux possibilités :
-* soit on ne veut pas du tout afficher le formulaire, on retourne alors
false
:
function formulaires_nom_charger_dist() {
$valeurs = array();
if (!autoriser("webmestre")) {
return false;
}
return $valeurs;
}
-* soit simplement une partie du formulaire est cachée (souvent la partie éditable) en utilisant la variable « editable », gérée alors dans le squelette du formulaire :
function formulaires_nom_charger_dist() {
$valeurs = array();
if (!autoriser("webmestre")) {
$valeurs['editable'] = false;
}
return $valeurs;
}
Exemple
Le plugin « Accès restreint » dispose d’un formulaire pour affecter des zones à un auteur ; il envoie dans l’environnement des champs à récupérer et leurs valeurs par défaut : l’identifiant de zone, l’auteur connecté et l’auteur qui sera affecté à la zone. En plus, si l’auteur n’a pas les droits suffisants, la variable « editable » est passée à faux.
function formulaires_affecter_zones_charger_dist($id_auteur){
$valeurs = array(
'zone'=>'',
'id_auteur'=>$id_auteur,
'id'=>$id_auteur
);
include_spip('inc/autoriser');
if (!autoriser('affecterzones','auteur',$id_auteur)){
$valeurs['editable'] = false;
}
return $valeurs;
}