diff --git a/core/includes/ajax.inc b/core/includes/ajax.inc index 0b897b8..3f2389f 100644 --- a/core/includes/ajax.inc +++ b/core/includes/ajax.inc @@ -204,9 +204,9 @@ * $commands[] = ajax_command_replace('#object-1', 'some html here'); * // Add a visual "changed" marker to the '#object-1' element. * $commands[] = ajax_command_changed('#object-1'); - * // Menu 'page callback' and #ajax['callback'] functions are supposed to - * // return render arrays. If returning an Ajax commands array, it must be - * // encapsulated in a render array structure. + * // #ajax['callback'] functions are supposed to return render arrays. If + * // returning an Ajax commands array, it must be encapsulated in a render + * // array structure. * return array('#type' => 'ajax', '#commands' => $commands); * @endcode * diff --git a/core/modules/system/system.api.php b/core/modules/system/system.api.php index 600b06b..abda14e 100644 --- a/core/modules/system/system.api.php +++ b/core/modules/system/system.api.php @@ -504,145 +504,6 @@ function hook_menu_get_item_alter(&$router_item, $path, $original_map) { * paths and whose values are an associative array of properties for each * path. (The complete list of properties is in the return value section below.) * - * @section sec_callback_funcs Callback Functions - * The definition for each path may include a page callback function, which is - * invoked when the registered path is requested. If there is no other - * registered path that fits the requested path better, any further path - * components are passed to the callback function. For example, your module - * could register path 'abc/def': - * @code - * function mymodule_menu() { - * $items['abc/def'] = array( - * 'page callback' => 'mymodule_abc_view', - * ); - * return $items; - * } - * - * function mymodule_abc_view($ghi = 0, $jkl = '') { - * // ... - * } - * @endcode - * When path 'abc/def' is requested, no further path components are in the - * request, and no additional arguments are passed to the callback function (so - * $ghi and $jkl would take the default values as defined in the function - * signature). When 'abc/def/123/foo' is requested, $ghi will be '123' and - * $jkl will be 'foo'. Note that this automatic passing of optional path - * arguments applies only to page and theme callback functions. - * - * @subsection sub_callback_arguments Callback Arguments - * In addition to optional path arguments, the page callback and other callback - * functions may specify argument lists as arrays. These argument lists may - * contain both fixed/hard-coded argument values and integers that correspond - * to path components. When integers are used and the callback function is - * called, the corresponding path components will be substituted for the - * integers. That is, the integer 0 in an argument list will be replaced with - * the first path component, integer 1 with the second, and so on (path - * components are numbered starting from zero). To pass an integer without it - * being replaced with its respective path component, use the string value of - * the integer (e.g., '1') as the argument value. This substitution feature - * allows you to re-use a callback function for several different paths. For - * example: - * @code - * function mymodule_menu() { - * $items['abc/def'] = array( - * 'page callback' => 'mymodule_abc_view', - * 'page arguments' => array(1, 'foo'), - * ); - * return $items; - * } - * @endcode - * When path 'abc/def' is requested, the page callback function will get 'def' - * as the first argument and (always) 'foo' as the second argument. - * - * If a page callback function uses an argument list array, and its path is - * requested with optional path arguments, then the list array's arguments are - * passed to the callback function first, followed by the optional path - * arguments. Using the above example, when path 'abc/def/bar/baz' is requested, - * mymodule_abc_view() will be called with 'def', 'foo', 'bar' and 'baz' as - * arguments, in that order. - * - * Special care should be taken for the page callback drupal_get_form(), because - * your specific form callback function will always receive $form and - * &$form_state as the first function arguments: - * @code - * function mymodule_abc_form($form, &$form_state) { - * // ... - * return $form; - * } - * @endcode - * See @link form_api Form API documentation @endlink for details. - * - * @section sec_path_wildcards Wildcards in Paths - * @subsection sub_simple_wildcards Simple Wildcards - * Wildcards within paths also work with integer substitution. For example, - * your module could register path 'my-module/%/edit': - * @code - * $items['my-module/%/edit'] = array( - * 'page callback' => 'mymodule_abc_edit', - * 'page arguments' => array(1), - * ); - * @endcode - * When path 'my-module/foo/edit' is requested, integer 1 will be replaced - * with 'foo' and passed to the callback function. Note that wildcards may not - * be used as the first component. - * - * @subsection sub_autoload_wildcards Auto-Loader Wildcards - * Registered paths may also contain special "auto-loader" wildcard components - * in the form of '%mymodule_abc', where the '%' part means that this path - * component is a wildcard, and the 'mymodule_abc' part defines the prefix for a - * load function, which here would be named mymodule_abc_load(). When a matching - * path is requested, your load function will receive as its first argument the - * path component in the position of the wildcard; load functions may also be - * passed additional arguments (see "load arguments" in the return value - * section below). For example, your module could register path - * 'my-module/%mymodule_abc/edit': - * @code - * $items['my-module/%mymodule_abc/edit'] = array( - * 'page callback' => 'mymodule_abc_edit', - * 'page arguments' => array(1), - * ); - * @endcode - * When path 'my-module/123/edit' is requested, your load function - * mymodule_abc_load() will be invoked with the argument '123', and should - * load and return an "abc" object with internal id 123: - * @code - * function mymodule_abc_load($abc_id) { - * return db_query("SELECT * FROM {mymodule_abc} WHERE abc_id = :abc_id", array(':abc_id' => $abc_id))->fetchObject(); - * } - * @endcode - * This 'abc' object will then be passed into the callback functions defined - * for the menu item, such as the page callback function mymodule_abc_edit() - * to replace the integer 1 in the argument array. Note that a load function - * should return NULL when it is unable to provide a loadable object. For - * example, the node_load() function for the 'node/%node/edit' menu item will - * return NULL for the path 'node/999/edit' if a node with a node ID of 999 - * does not exist. The menu routing system will return a 404 error in this case. - * - * @subsection sub_argument_wildcards Argument Wildcards - * You can also define a %wildcard_to_arg() function (for the example menu - * entry above this would be 'mymodule_abc_to_arg()'). The _to_arg() function - * is invoked to retrieve a value that is used in the path in place of the - * wildcard. A good example is user.module, which defines - * user_uid_optional_to_arg() (corresponding to the menu entry - * 'tracker/%user_uid_optional'). This function returns the user ID of the - * current user. - * - * The _to_arg() function will get called with three arguments: - * - $arg: A string representing whatever argument may have been supplied by - * the caller (this is particularly useful if you want the _to_arg() - * function only supply a (default) value if no other value is specified, - * as in the case of user_uid_optional_to_arg(). - * - $map: An array of all path fragments (e.g. array('node','123','edit') for - * 'node/123/edit'). - * - $index: An integer indicating which element of $map corresponds to $arg. - * - * _load() and _to_arg() functions may seem similar at first glance, but they - * have different purposes and are called at different times. _load() - * functions are called when the menu system is collecting arguments to pass - * to the callback functions defined for the menu item. _to_arg() functions - * are called when the menu system is generating links to related paths, such - * as the tabs for a set of MENU_LOCAL_TASK items. - * * @section sec_render_tabs Rendering Menu Items As Tabs * You can also make groups of menu items to be rendered (by default) as tabs * on a page. To do that, first create one menu item of type MENU_NORMAL_ITEM,