You are here

function apply_for_role_menu in Apply for role 5

Same name and namespace in other branches
  1. 6 apply_for_role.module \apply_for_role_menu()
  2. 7.2 apply_for_role.module \apply_for_role_menu()
  3. 7 apply_for_role.module \apply_for_role_menu()

Implementation of hook_menu().

File

./apply_for_role.module, line 36
Allows users to apply for roles.

Code

function apply_for_role_menu($may_cache) {
  global $user;
  $items = array();
  if ($may_cache) {
    $items[] = array(
      'path' => 'admin/settings/apply_for_role',
      'title' => t('Apply for role administration'),
      'description' => t('Administer which roles users can apply for.'),
      'callback' => 'apply_for_role_settings',
      'access' => user_access('administer apply for role'),
    );
    $items[] = array(
      'path' => 'admin/user/apply_for_role',
      'title' => t('Manage role applications'),
      'description' => t('View, approve and delete role applications.'),
      'callback' => 'drupal_get_form',
      'callback arguments' => array(
        'apply_for_role_admin_form',
      ),
      'access' => user_access('approve role applications'),
    );
    $items[] = array(
      'path' => 'admin/user/apply_for_role/approve',
      'title' => t('Approve role application'),
      'callback' => 'drupal_get_form',
      'callback arguments' => array(
        'apply_for_role_approve_form',
      ),
      'access' => user_access('approve role applications'),
      'type' => MENU - CALLBACK,
    );
    $items[] = array(
      'path' => 'admin/user/apply_for_role/deny',
      'title' => t('Deny role application'),
      'callback' => 'drupal_get_form',
      'callback arguments' => array(
        'apply_for_role_deny_form',
      ),
      'access' => user_access('approve role applications'),
      'type' => MENU - CALLBACK,
    );
    $items[] = array(
      'path' => 'admin/user/apply_for_role/remove',
      'title' => t('Remove role application'),
      'callback' => 'drupal_get_form',
      'callback arguments' => array(
        'apply_for_role_remove_form',
      ),
      'access' => user_access('approve role applications'),
      'type' => MENU - CALLBACK,
    );
  }
  else {
    if ($user->uid && arg(0) == 'user' && is_numeric(arg(1))) {
      $items[] = array(
        'path' => 'user/' . $user->uid . '/apply_for_role',
        'title' => t('Apply for role'),
        'callback' => 'apply_for_role_page',
        'access' => user_access('apply for roles') && $user->uid == arg(1),
        'type' => MENU_LOCAL_TASK,
      );
    }
  }
  return $items;
}