You are here

function commerce_wishlist_menu in Commerce Wishlist 7.3

Same name and namespace in other branches
  1. 7 commerce_wishlist.module \commerce_wishlist_menu()
  2. 7.2 commerce_wishlist.module \commerce_wishlist_menu()

Implements hook_menu().

File

./commerce_wishlist.module, line 23
Provides a wish list for use in Drupal Commerce.

Code

function commerce_wishlist_menu() {
  $items = array();
  $items['user/%user/wishlist/nojs/remove/%commerce_line_item'] = array(
    'page callback' => 'commerce_wishlist_product_remove_page',
    'page arguments' => array(
      5,
      1,
    ),
    'access callback' => 'commerce_wishlist_user_access',
    'access arguments' => array(
      1,
      'update',
    ),
    'type' => MENU_CALLBACK,
  );
  $items['user/%user/wishlist/ajax/remove/%commerce_line_item'] = array(
    'page callback' => 'commerce_wishlist_product_remove_ajax',
    'page arguments' => array(
      5,
      1,
    ),
    'access callback' => 'commerce_wishlist_user_access',
    'access arguments' => array(
      1,
      'update',
    ),
    'type' => MENU_CALLBACK,
  );
  $items['user/%user/wishlist/nojs/add/%commerce_product'] = array(
    'page callback' => 'commerce_wishlist_product_add_page',
    'page arguments' => array(
      5,
      1,
    ),
    'access callback' => 'commerce_wishlist_user_access',
    'access arguments' => array(
      1,
      'update',
    ),
    'type' => MENU_CALLBACK,
  );
  $items['user/%user/wishlist/ajax/add/%commerce_product'] = array(
    'page callback' => 'commerce_wishlist_product_add_ajax',
    'page arguments' => array(
      5,
      1,
    ),
    'access callback' => 'commerce_wishlist_user_access',
    'access arguments' => array(
      1,
      'update',
    ),
    'type' => MENU_CALLBACK,
  );
  $items['user/%user/wishlist'] = array(
    'title callback' => 'commerce_wishlist_view_user_wishlist_title',
    'title arguments' => array(
      1,
    ),
    'page callback' => 'commerce_wishlist_view_user_wishlist',
    'page arguments' => array(
      1,
    ),
    'access callback' => 'commerce_wishlist_user_access',
    'access arguments' => array(
      1,
      'view',
    ),
    'type' => MENU_LOCAL_TASK,
  );
  $items['admin/commerce/config/wishlist'] = array(
    'title' => 'Wishlist configuration',
    'description' => 'Configure wish list',
    'page callback' => 'drupal_get_form',
    'page arguments' => array(
      'commerce_wishlist_admin_form',
    ),
    'access arguments' => array(
      'configure wish lists',
    ),
    'file' => 'commerce_wishlist.admin.inc',
  );

  // Set up our sharing URL here. This can be configurable. We default to
  // shared-wishlist/%. The code will automatically find the '%' and set the
  // correct argument.
  $sharing_url = str_replace('%', '%commerce_wishlist_hash', variable_get('commerce_wishlist_share_prefix', 'shared-wishlist/%'));
  $sharing_url_argument = (int) array_search('%commerce_wishlist_hash', explode('/', $sharing_url));
  $items[$sharing_url] = array(
    'title callback' => 'commerce_wishlist_shared_wishlist_title',
    'title arguments' => array(
      $sharing_url_argument,
    ),
    'page callback' => 'commerce_wishlist_view_shared_user_wishlist',
    'page arguments' => array(
      $sharing_url_argument,
    ),
    'access arguments' => array(
      'access content',
    ),
  );
  return $items;
}