AnsweredAssumed Answered

Fonction removePermission

Question asked by antho_c on Jul 17, 2015
Bonjour,

Suite à un changement de fonctionnement au niveau des groupes, je dois mettre à jour de manière groupée les droits de groupes sur mes nodes. J'ai réalisé un script javascript pour parcourir mes dossiers et sous dossiers et appliquer les droits. J'arrive sans problème à utiliser la fonction setPermission de la manière suivante :

<blockcode>
node.setPermission("permission", "GROUP_nomdugroupe");
</blockcode>

Seulement pour la partie removePermission, je voudrais supprimer toutes les permissions de tous les groupes sur tous mes dossiers. J'ai donc essayé de l'utiliser sans passer de paramètre utilisateur ou groupe, tel que c'est expliqué dans la documentation :

<blockcode>
node.removePermission("permission");
</blockcode>

Seulement cela ne fonctionne pas. J'ai donc utilisé l'astuce suivante en désespoir de cause :

<blockcode>
var permissions = ["Collaborator", "Contributor", "Consumer", "Editor", "Coordinator", "Read"];
var groups = ["GROUP_groupe1", "GROUP_groupe2", "GROUP_groupe3", "GROUP_groupe4", "GROUP_groupe5"];
      
for(var z= 0; z < permissions.length; z++)
{
   for(var w= 0; w < groups.length; w++)
   {
      node.removePermission(permissions[z],groups[w]);
   }
}
</blockcode>

Et cela fonctionne sans problème

Y a t'il un problème avec mon utilisation de removePermission ? Peut être ai je mal compris mais pour moi le fait de ne pas passer de paramètre d'utilisateur ou de groupe supprime TOUTES les permissions du type passé en paramètre pour TOUS les groupes et TOUS les users qui ont des droits sur le node.

Quelqu'un pourrait il m'éclairer sur le sujet ?

D'avance merci.

Anthony

Outcomes