Autoriser ou non l’affichage du formulaire

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;
}

Auteur Matthieu Marcillaud Publié le : Mis à jour : 08/01/12

Traductions : English, français