You are here

public function EntityWorkflowUIController::hook_menu in Workflow 7.2

Provides definitions for implementing hook_menu().

Overrides EntityDefaultUIController::hook_menu

File

workflow_admin_ui/includes/Entity/EntityWorkflowUIController.php, line 12
Contains workflow_admin_ui\includes\Entity\EntityWorkflowUIController.

Class

EntityWorkflowUIController
@file Contains workflow_admin_ui\includes\Entity\EntityWorkflowUIController.

Code

public function hook_menu() {
  $items = parent::hook_menu();

  // Set this on the object so classes that extend hook_menu() can use it.
  $admin_path = $this->path;
  $id_count = count(explode('/', $admin_path));
  $wildcard = isset($this->entityInfo['admin ui']['menu wildcard']) ? $this->entityInfo['admin ui']['menu wildcard'] : '%entity_object';
  $plural_label = isset($this->entityInfo['plural label']) ? $this->entityInfo['plural label'] : $this->entityInfo['label'] . 's';
  $entityType = $this->entityInfo['entity class'];

  // @todo: Allow modules to insert their own action links to the 'workflow',
  // $workflow_operations = module_invoke_all('workflow_operations', 'workflow', NULL);
  $item = array(
    'file path' => isset($this->entityInfo['admin ui']['file path']) ? $this->entityInfo['admin ui']['file path'] : drupal_get_path('module', $this->entityInfo['module']),
    'access arguments' => array(
      'administer workflow',
    ),
    'type' => MENU_LOCAL_TASK,
  );
  $items["{$admin_path}/manage/{$wildcard}/states"] = $item + array(
    'file' => 'workflow_admin_ui/workflow_admin_ui.page.states.inc',
    'title' => 'States',
    'weight' => '11',
    'page callback' => 'drupal_get_form',
    'page arguments' => array(
      'workflow_admin_ui_states_form',
      $id_count + 1,
      $id_count + 2,
    ),
  );
  $items["{$admin_path}/manage/{$wildcard}/transitions"] = $item + array(
    'file' => 'workflow_admin_ui/workflow_admin_ui.page.transitions.inc',
    'title' => 'Transitions',
    'weight' => '12',
    'page callback' => 'drupal_get_form',
    'page arguments' => array(
      'workflow_admin_ui_transitions_form',
      $id_count + 1,
      $id_count + 2,
    ),
  );
  $items["{$admin_path}/manage/{$wildcard}/labels"] = $item + array(
    'file' => 'workflow_admin_ui/workflow_admin_ui.page.labels.inc',
    'title' => 'Labels',
    'weight' => '13',
    'page callback' => 'drupal_get_form',
    'page arguments' => array(
      'workflow_admin_ui_labels_form',
      $id_count + 1,
      $id_count + 2,
    ),
  );
  $items["{$admin_path}/manage/{$wildcard}/permissions"] = $item + array(
    'file' => 'workflow_admin_ui/workflow_admin_ui.page.permissions.inc',
    'title' => 'Permission summary',
    'weight' => '14',
    'page callback' => 'workflow_admin_ui_view_permissions_form',
    'page arguments' => array(
      $id_count + 1,
      $id_count + 2,
    ),
  );
  return $items;
}