You are here

function search_autocomplete_menu in Search Autocomplete 7.4

Same name and namespace in other branches
  1. 5 search_autocomplete.module \search_autocomplete_menu()
  2. 6.4 search_autocomplete.admin.inc \search_autocomplete_menu()
  3. 6 search_autocomplete.module \search_autocomplete_menu()
  4. 6.2 search_autocomplete.admin.inc \search_autocomplete_menu()
  5. 7.2 search_autocomplete.admin.inc \search_autocomplete_menu()
  6. 7.3 search_autocomplete.admin.inc \search_autocomplete_menu()

Implements hook_menu().

Create an administration page to access admin form.

File

./search_autocomplete.admin.inc, line 50
Search Autocomplete Sets the admin part of the module: permissions, hooks, callbacks, etc...

Code

function search_autocomplete_menu() {

  // Create the admin setting page: list of forms.
  $items['admin/config/search/search_autocomplete'] = array(
    'title' => 'Search Autocomplete settings',
    'description' => 'Choose settings and suggestion items for autocompletion in input forms.',
    'page callback' => 'drupal_get_form',
    'page arguments' => array(
      'search_autocomplete_treelist_form',
    ),
    'access arguments' => array(
      'administer Search Autocomplete',
    ),
    'file' => 'search_autocomplete.form.treelist.inc',
    'type' => MENU_NORMAL_ITEM,
    'weight' => 0,
  );

  // Create a tab for settings.
  $items['admin/config/search/search_autocomplete/settings'] = array(
    'title' => 'Search Autocomplete settings',
    'description' => 'Search Autocompletion main tab on setting page.',
    'type' => MENU_DEFAULT_LOCAL_TASK,
    'weight' => 1,
  );

  // Create an admin setting page: add a new form.
  $items['admin/config/search/search_autocomplete/add'] = array(
    'title' => 'Add a form',
    'description' => 'Create a new autocompletion form tab on setting page.',
    'page callback' => 'drupal_get_form',
    'page arguments' => array(
      'search_autocomplete_form_add',
    ),
    'access arguments' => array(
      'administer Search Autocomplete',
    ),
    'file' => 'search_autocomplete.form.add.inc',
    'type' => MENU_LOCAL_TASK,
    'weight' => 2,
  );

  // Create an admin setting page: configure a form.
  $items['admin/config/search/search_autocomplete/%/configure'] = array(
    'title' => 'Search Autocomplete - Configuration',
    'page callback' => 'drupal_get_form',
    'page arguments' => array(
      'search_autocomplete_form_configure',
    ),
    'access arguments' => array(
      'administer Search Autocomplete',
    ),
    'file' => 'search_autocomplete.form.configure.inc',
  );

  // Create an admin setting page: delete a form.
  $items['admin/config/search/search_autocomplete/%/delete/%'] = array(
    'title' => 'Search Autocomplete - Delete',
    'page callback' => 'drupal_get_form',
    'page arguments' => array(
      'search_autocomplete_form_delete',
      4,
      6,
    ),
    'access arguments' => array(
      'administer Search Autocomplete',
    ),
    'file' => 'search_autocomplete.form.delete.inc',
  );

  // Create a callback page for JSON suggestions.
  $items['search_autocomplete/autocomplete'] = array(
    'title' => 'Autocompleton when using view',
    'page callback' => 'search_autocomplete_autocomplete',
    'type' => MENU_CALLBACK,
    'access callback' => TRUE,
    'access arguments' => array(
      'access content',
    ),
    'file' => 'search_autocomplete.autocomplete.inc',
  );
  $items['views/autocomplete'] = array(
    'title' => 'Autocomplete view selector',
    'page callback' => 'search_autocomplete_views_autocomplete',
    // Access not properly checked on callbacks (see function).
    'type' => MENU_CALLBACK,
    'access callback' => TRUE,
    'access arguments' => array(
      'access content',
    ),
    'file' => 'search_autocomplete.autocomplete.inc',
  );
  return $items;
}