public function ClientsHandlerEntityUIController::hook_menu in Web Service Clients 7.3
Provides definitions for implementing hook_menu().
Overrides EntityDefaultUIController::hook_menu
2 calls to ClientsHandlerEntityUIController::hook_menu()
- ClientsConnectionEntityUIController::hook_menu in includes/
clients.ui.inc - Provides definitions for implementing hook_menu().
- ClientsResourceEntityUIController::hook_menu in includes/
clients.ui.inc - Provides definitions for implementing hook_menu().
2 methods override ClientsHandlerEntityUIController::hook_menu()
- ClientsConnectionEntityUIController::hook_menu in includes/
clients.ui.inc - Provides definitions for implementing hook_menu().
- ClientsResourceEntityUIController::hook_menu in includes/
clients.ui.inc - Provides definitions for implementing hook_menu().
File
- includes/
clients.ui.inc, line 20 - Provides a controller for building an entity overview form.
Class
- ClientsHandlerEntityUIController
- Default controller for providing handler UI.
Code
public function hook_menu() {
// Start with what EntityAPI gives us, then doctor it.
$items = parent::hook_menu();
// Change the EntityAPI to deal with multiple handler types.
$items[$this->path . '/add']['title'] = 'Add TODO';
$items[$this->path . '/add']['page callback'] = 'clients_handler_add_page';
$items[$this->path . '/add']['page arguments'] = array(
$this->entityType,
);
// Add links. Follow same pattern as node.
$handler_types_callback = $this->entityInfo['admin ui']['types callback'];
$handler_types = $handler_types_callback();
foreach ($handler_types as $type => $type_info) {
$items[$this->path . '/add/' . $type] = array(
'title' => 'Create !name',
'title arguments' => array(
'!name' => $type_info['label'],
),
'page callback' => 'clients_handler_get_add_form',
'page arguments' => array(
$this->entityType,
$type,
),
'file' => $this->entityInfo['admin ui']['file'],
// Need to specify file path as this gets used in entity_menu().
'file path' => drupal_get_path('module', $this->entityInfo['module']),
);
}
// All menu items for handlers have the same access.
// This means we don't need an access callback.
foreach ($items as $path => $item) {
$items[$path]['access callback'] = 'user_access';
$items[$path]['access arguments'] = array(
$this->entityInfo['admin ui']['access permission'],
);
}
return $items;
}