You are here

function loft_data_grids_export_info in Loft Data Grids 7.2

Same name and namespace in other branches
  1. 6.2 loft_data_grids.module \loft_data_grids_export_info()
  2. 7 loft_data_grids.module \loft_data_grids_export_info()

Return an array of exporters info

Parameters

bool $check_access (Optional, defaults to FALSE) Should the current: users permission be applied against all exporters?

Return value

array Keyed by classname (not fully qualified with ns use loft_data_grids_ns())

Related topics

2 calls to loft_data_grids_export_info()
loft_data_grids_exporter_options in ./loft_data_grids.module
Return an array suitable for form options keyed by classname
loft_data_grids_permission in ./loft_data_grids.module
Implements hook_permission().

File

./loft_data_grids.module, line 129
Base module file for loft_data_grids

Code

function loft_data_grids_export_info($check_access = FALSE) {
  $info =& drupal_static(__FUNCTION__, array());
  if (empty($info) && ($data = loft_data_grids_export_data())) {
    $classnames = _loft_data_grids_get_exporter_names();
    foreach ($classnames as $classname) {
      $object = loft_data_grids_exporter($data, $classname);
      $info[$classname] = array(
        'id' => $classname,
      ) + $object
        ->getInfo();
    }
    drupal_alter('loft_data_grids_export_info', $info);
  }
  if ($check_access) {
    foreach ($info as $key => $data) {
      if (!user_access('loft_data_grids:' . $data['id'])) {
        unset($info[$key]);
      }
    }
  }
  return $info;
}