| 12345678910111213141516171819202122232425262728293031 | <?php/** * Expose current user role as a context condition. */class context_condition_user extends context_condition {  function condition_values() {    $values = array();    foreach (user_roles() as $rid => $role_name) {      if ($rid == DRUPAL_ANONYMOUS_RID) {        $values['anonymous user'] = check_plain($role_name);      }      elseif ($rid == DRUPAL_AUTHENTICATED_RID) {        $values['authenticated user'] = check_plain($role_name);      }      else {        $values[$role_name] = check_plain($role_name);      }    }    return $values;  }  function execute($account) {    $roles = $account->roles;    foreach ($roles as $rid => $role) {      foreach ($this->get_contexts($role) as $context) {        $this->condition_met($context, $role);      }    }  }}
 |