You are here

function user_pages_user_user_register_menu_alter in User Pages 6

Same name and namespace in other branches
  1. 7 plugins/tasks/user_register.inc \user_pages_user_user_register_menu_alter()
1 string reference to 'user_pages_user_user_register_menu_alter'
user_pages_user_register_page_manager_tasks in plugins/tasks/user_register.inc

File

plugins/tasks/user_register.inc, line 26

Code

function user_pages_user_user_register_menu_alter(&$items, $task) {
  if (variable_get('user_pages_user_user_register_disabled', TRUE)) {
    return;
  }

  //Since user/register is by default a local task, we need to do a little probing to find the callback.
  $is_default = $items['user/register']['page callback'] == 'drupal_get_form' && $items['user/register']['page arguments'] == array(
    'user_register',
  );

  // Override the menu item to point to our own function.
  if ($is_default || variable_get('user_pages_override_anyway', FALSE)) {
    $items['user/register']['page callback'] = 'user_pages_user_user_register';
    unset($items['user/register']['page arguments']);
    $items['user/register']['file path'] = $task['path'];
    $items['user/register']['file'] = $task['file'];
  }
  else {
    variable_set('user_pages_user_user_register_disabled', TRUE);
    if (!empty($GLOBALS['page_manager_user_enabling_user_register'])) {
      drupal_set_message(t('Page manager module is unable to enable this page because some other module already has overridden with %callback.', array(
        '%callback' => $callback,
      )), 'warning');
    }
    return;
  }
}