You are here

function _forum_access_get_settings in Forum Access 6

Same name and namespace in other branches
  1. 7 forum_access.admin.inc \_forum_access_get_settings()

Helper function to retrieve the settings for a forum.

2 calls to _forum_access_get_settings()
_forum_access_forum_form in ./forum_access.admin.inc
Rewrite the forum administration page with our new access rules.
_forum_access_forum_form_after_build in ./forum_access.admin.inc

File

./forum_access.admin.inc, line 722
forum_access.admin.inc

Code

function _forum_access_get_settings($tid = NULL) {
  $return = array(
    'view' => array(),
    'create' => array(),
    'update' => array(),
    'delete' => array(),
    'priority' => 0,
  );
  if (!isset($tid)) {

    // Default to all users can read; all logged in users can post.
    $return['view'] = array(
      DRUPAL_ANONYMOUS_RID,
      DRUPAL_AUTHENTICATED_RID,
    );
    $return['create'] = array(
      DRUPAL_AUTHENTICATED_RID,
    );
  }
  else {
    $result = db_query("SELECT * FROM {forum_access} where tid = %d", $tid);
    while ($access = db_fetch_object($result)) {
      if ($access->grant_view) {
        $return['view'][] = $access->rid;
      }
      if ($access->grant_update) {
        $return['update'][] = $access->rid;
      }
      if ($access->grant_delete) {
        $return['delete'][] = $access->rid;
      }
      if ($access->grant_create) {
        $return['create'][] = $access->rid;
      }
      if ($access->rid == DRUPAL_AUTHENTICATED_RID) {

        // this is our reference
        $return['priority'] = $access->priority;
      }
    }
  }
  return $return;
}