You are here

function views_bulk_operations_plugin_style::get_custom_actions in Views Bulk Operations (VBO) 6

Same name and namespace in other branches
  1. 6.3 views_bulk_operations_plugin_style.inc \views_bulk_operations_plugin_style::get_custom_actions()
1 call to views_bulk_operations_plugin_style::get_custom_actions()
views_bulk_operations_plugin_style::populate_operations in ./views_bulk_operations_plugin_style.inc

File

./views_bulk_operations_plugin_style.inc, line 363

Class

views_bulk_operations_plugin_style

Code

function get_custom_actions() {
  $actions = array();
  $static_actions = actions_list();
  $result = db_query("SELECT * FROM {actions} WHERE parameters > ''");
  while ($action = db_fetch_object($result)) {
    $parameters = unserialize($action->parameters);
    $actions[$action->aid] = array(
      'description' => $action->description,
      'type' => $action->type,
      'configurable' => FALSE,
      'parameters' => $parameters,
      'key' => $action->callback . (empty($parameters) ? '' : '-' . md5($action->parameters)),
    );
    foreach (array(
      'callback',
      'behavior',
      'aggregate',
      'permissions',
      'hooks',
      'form properties',
    ) as $attribute) {
      if (isset($static_actions[$action->callback][$attribute])) {
        $actions[$action->aid][$attribute] = $static_actions[$action->callback][$attribute];
      }
    }
    if (isset($static_actions[$action->callback]['parameters'])) {
      $actions[$action->aid]['parameters'] = array_merge($actions[$action->aid]['parameters'], $static_actions[$action->callback]['parameters']);
    }
  }
  return $actions;
}