Valider aa1c9ce1 rédigé par marcimat's avatar marcimat
Parcourir les fichiers

L'autorisation qui détermine si une personne peut éditer les liaisons (par...

L'autorisation qui détermine si une personne peut éditer les liaisons (par exemple les mots clés d'un article) ne dépend pas uniquement de l'autorisation 'associer{objet}' tel que testé dans le charger().
Effectivement, dans les traitements, pour qu'ils soient pris en compte, l'autorisation de modifier l'objet cible (ici l'article) est utilisée également.
On ajoute donc ce test d'autorisation en plus dans le charger.

De la sorte, un rédacteur qui affiche un article dont il n'est pas l'auteur, ne voit plus des actions 'retirer ce mot' ou 'ajouter un mot clé' 
alors qu'elles ne seront pas traitées, puisqu'il ne peut pas modifier l'article.

Ferme #3223 
parent 8f786a82
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+1 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -89,7 +89,7 @@ function formulaires_editer_liens_charger_dist($a,$b,$c,$editable=true){
	
	// L'éditabilité :) est définie par un test permanent (par exemple "associermots") ET le 4ème argument
	include_spip('inc/autoriser');
	$editable = ($editable and autoriser('associer'.$table_source, $objet, $id_objet));
	$editable = ($editable and autoriser('associer'.$table_source, $objet, $id_objet) and autoriser('modifier',$objet,$id_objet));
	
	if (!$editable AND !count(objet_trouver_liens(array($objet_lien=>'*'),array(($objet_lien==$objet_source?$objet:$objet_source)=>'*'))))
		return false;