You are here

function domain_alias_list in Domain Access 7.3

Same name and namespace in other branches
  1. 6.2 domain_alias/domain_alias.module \domain_alias_list()
  2. 7.2 domain_alias/domain_alias.module \domain_alias_list()

Returns all aliases for one domain record (domain_id).

Parameters

$domain_id: The domain_id taken from {domain}.

$reset: A boolean flag indicating whether to reset the static array or not.

Return value

An array of all aliases defined for given domain_id, indexed by alias_id

2 calls to domain_alias_list()
domain_alias_domain_load in domain_alias/domain_alias.domain.inc
Implements hook_domain_load().
domain_alias_prepare_export in domain_alias/domain_alias.features.inc
Prepares alias lists to an array based on machine_name.

File

domain_alias/domain_alias.module, line 287
Interface for advanced domain matching for Domain Access.

Code

function domain_alias_list($domain_id, $reset = FALSE) {
  $aliases =& drupal_static(__FUNCTION__ . '_aliases');
  $result =& drupal_static(__FUNCTION__ . '_result');

  // Query the db for aliases.
  if (!isset($result) || $reset) {
    $result = db_query("SELECT domain_id, alias_id, pattern, redirect FROM {domain_alias} ORDER BY domain_id, alias_id", array(), array(
      'fetch' => PDO::FETCH_ASSOC,
    ))
      ->FetchAll();
  }
  if (!isset($aliases[$domain_id]) || $reset) {
    $aliases[$domain_id] = array();
    foreach ($result as $data) {
      $data['pattern'] = _domain_alias_placeholders_from_sql($data['pattern']);
      $aliases[$data['domain_id']][$data['alias_id']] = $data;
    }
  }
  return $aliases[$domain_id];
}