Il modulo trust permette ad un utente di concedere ad un secondo utente la possibilità di modificare i suoi nodi, per semplificare il lavoro di gruppo nei casi in cui solo il proprietario di un nodo può aggiornarlo.

Questo "travaso" di permessi è effettuato dall'unica funzione del modulo:

function trust_get_trust ($user, $node) {

  $node_owner = user_load(array('uid' => $node->uid));

  profile_load_profile($node_owner);

  $trusted_users = explode("\n", $node_owner->profile_trust);

  if (in_array($user->name, $trusted_users) ||
      ($node_owner->name == $user->name)) {

    return TRUE;

  }//THEN
  else {

    return FALSE;

  }//ELSE

}//TRUST_GET_TRUST

Per prima cosa viene caricato il profilo del proprietario del nodo in questione, da cui viene estratto il campo profile_trust, che contiene una lista degli utenti fidati (uno per riga). Se l'utente che sta cercando di manipolare il nodo è tra questi, il controllo è superato, altrimenti no.

È comunque importante notare che:

  1. gli utenti con permessi amministrativi (come administer node) possono modificare e cancellare qualunque nodo.
  2. il modulo non permette di restringere la concessione dei permessi solo ad alcuni nodi.
  3. il modulo in sè definisce solo la funzione; perchè il controllo venga effettivamente usato va impostato a mano nella funzione node_access in node.module.