it-swarm.com.de

Überprüfen Sie, ob der Benutzer einen Knoten mit einer bestimmten ID bearbeiten kann

Ich muss eine Funktion oder einen Weg kennen, um herauszufinden, ob ein Benutzer einen bestimmten Knoten bearbeiten kann.

Zum Beispiel habe ich die nid 200 und der Benutzer foo hat sich angemeldet. Ich möchte überprüfen, ob er Node/200 bearbeiten kann.

Vielen Dank

8
lumio

Sie können dazu node_access verwenden:

$node = node_load(123);
$account = user_load(456);

if (node_access("update", $node, $account) === TRUE) {
  do_something_awesome();
}

Wenn Sie sich die Quelle für node_access Anschauen, werden Sie sehen, dass das Argument $node Auch ein $nid Sein kann. Auf diese Weise wird der Pfad für die Bearbeitungsseiten überprüft (siehe den Eintrag 'node /% node/edit' in node_menu ).

12
mpdonadio