_devel_node_access_module_invoke_all

  1. drupal
    1. 6 devel_node_access.module function
    2. 7 devel_node_access.module function
Drupal 7 _devel_node_access_module_invoke_all()

1 call to _devel_node_access_module_invoke_all()

File

sites/all/modules/devel/devel_node_access.module, line 241
This module gives developers feedback as to what their node_access table contains, and which nodes are protected or visible to the public.

Code

function _devel_node_access_module_invoke_all() { // array and scalar returns
  $args = func_get_args();
  $hook = $args[0];
  unset($args[0]);
  $return = array();
  foreach (module_implements($hook) as $module) {
    $function = $module . '_' . $hook;
    if (function_exists($function)) {
      $result = call_user_func_array($function, $args);
      if (isset($result)) {
        if (is_array($result)) {
          foreach ($result as $key => $value) {
            // add name of module that returned the value:
            $result[$key]['#module'] = $module;
          }
        }
        else {
          // build array with result keyed by $module:
          $result = array($module => $result);
        }
        $return = array_merge_recursive($return, $result);
      }
    }
  }
  return $return;
}