From 2e18cb8924eb9a83a0ec9857f405ed038a1d3ded Mon Sep 17 00:00:00 2001 From: Dries Buytaert <dries@buytaert.net> Date: Tue, 6 May 2008 12:18:54 +0000 Subject: [PATCH] - Patch #221964 by chx, dopry, webernet, moshe, webchick, justinrandall, flobruit et al. Can you say 'registry'? Drupal now maintains an internal registry of all functions or classes in the system, allowing it to lazy-load code files as needed (reducing the amount of code that must be parsed on each request). The list of included files is cached per menu callback for subsequent loading by the menu router. This way, a given page request will have all the code it needs but little else, minimizing time spent parsing unneeded code. --- includes/bootstrap.inc | 182 +++++++++++++++++++++++++ includes/common.inc | 13 +- includes/form.inc | 13 +- includes/install.inc | 5 +- includes/mail.inc | 2 +- includes/menu.inc | 38 ++---- includes/module.inc | 55 +++++--- includes/theme.inc | 6 +- includes/xmlrpcs.inc | 2 +- install.php | 4 +- modules/aggregator/aggregator.info | 3 + modules/aggregator/aggregator.module | 19 --- modules/block/block.info | 2 + modules/block/block.module | 6 - modules/blog/blog.info | 2 + modules/blog/blog.module | 4 - modules/blogapi/blogapi.info | 1 + modules/book/book.info | 3 + modules/book/book.module | 8 -- modules/color/color.info | 1 + modules/comment/comment.info | 3 + modules/comment/comment.module | 5 - modules/contact/contact.info | 3 + modules/contact/contact.module | 8 -- modules/dblog/dblog.info | 2 + modules/dblog/dblog.module | 6 - modules/filter/filter.info | 3 + modules/filter/filter.module | 9 -- modules/forum/forum.info | 3 + modules/forum/forum.module | 8 -- modules/help/help.info | 2 + modules/help/help.module | 2 - modules/locale/locale.info | 1 + modules/menu/menu.info | 2 + modules/menu/menu.module | 14 -- modules/node/node.info | 4 + modules/node/node.module | 25 +--- modules/openid/openid.info | 4 + modules/openid/openid.module | 3 - modules/path/path.info | 2 + modules/path/path.module | 4 - modules/php/php.info | 1 + modules/poll/poll.info | 2 + modules/poll/poll.module | 3 - modules/profile/profile.info | 3 + modules/profile/profile.module | 7 - modules/search/search.info | 3 + modules/search/search.module | 5 - modules/simpletest/simpletest.info | 1 + modules/statistics/statistics.info | 3 + modules/statistics/statistics.module | 8 -- modules/syslog/syslog.info | 1 + modules/system/system.info | 2 + modules/system/system.install | 97 ++++++++++++- modules/system/system.module | 29 ---- modules/taxonomy/taxonomy.info | 3 + modules/taxonomy/taxonomy.module | 8 -- modules/tracker/tracker.info | 2 + modules/tracker/tracker.module | 2 - modules/translation/translation.info | 2 + modules/translation/translation.module | 1 - modules/trigger/trigger.info | 2 + modules/trigger/trigger.module | 8 -- modules/update/update.info | 5 + modules/update/update.module | 4 - modules/upload/upload.info | 2 + modules/upload/upload.module | 1 - modules/user/user.info | 3 + modules/user/user.module | 18 --- 69 files changed, 433 insertions(+), 275 deletions(-) diff --git a/includes/bootstrap.inc b/includes/bootstrap.inc index 49659f8caf26..c5a8ba4049cc 100644 --- a/includes/bootstrap.inc +++ b/includes/bootstrap.inc @@ -949,6 +949,9 @@ function _drupal_bootstrap($phase) { // Initialize the default database. require_once './includes/database.inc'; db_set_active(); + // Register autoload functions so that we can access classes and interfaces. + spl_autoload_register('drupal_autoload_class'); + spl_autoload_register('drupal_autoload_interface'); break; case DRUPAL_BOOTSTRAP_ACCESS: @@ -1134,3 +1137,182 @@ function ip_address() { return $ip_address; } + +/** + * @ingroup registry + * @{ + */ + +/** + * Confirm that a function is available. + * + * If the function is already available, this function does nothing. + * If the function is not available, it tries to load the file where the + * function lives. If the file is not available, it returns false, so that it + * can be used as a drop-in replacement for function_exists(). + * + * @param $function + * The name of the function to check or load. + * @return + * TRUE if the function is now available, FALSE otherwise. + */ +function drupal_function_exists($function) { + static $checked = array(); + + if (defined('MAINTENANCE_MODE')) { + return function_exists($function); + } + + if (isset($checked[$function])) { + return $checked[$function]; + } + $checked[$function] = FALSE; + + if (function_exists($function)) { + registry_mark_code('function', $function); + $checked[$function] = TRUE; + return TRUE; + } + + $file = db_result(db_query("SELECT filename FROM {registry} WHERE name = '%s' AND type = '%s'", $function, 'function')); + if ($file) { + require_once($file); + $checked[$function] = function_exists($function); + if ($checked[$function]) { + registry_mark_code('function', $function); + } + } + + return $checked[$function]; +} + +/** + * Confirm that an interface is available. + * + * This function parallels drupal_function_exists(), but is rarely + * called directly. Instead, it is registered as an spl_autoload() + * handler, and PHP calls it for us when necessary. + * + * @param $interface + * The name of the interface to check or load. + * @return + * TRUE if the interface is currently available, FALSE otherwise. + */ +function drupal_autoload_interface($interface) { + return _registry_check_code('interface', $interface); +} + +/** + * Confirm that a class is available. + * + * This function parallels drupal_function_exists(), but is rarely + * called directly. Instead, it is registered as an spl_autoload() + * handler, and PHP calls it for us when necessary. + * + * @param $class + * The name of the class to check or load. + * @return + * TRUE if the class is currently available, FALSE otherwise. + */ +function drupal_autoload_class($class) { + return _registry_check_code('class', $class); +} + +/** + * Helper for registry_check_{interface, class}. + */ +function _registry_check_code($type, $name) { + $file = db_result(db_query("SELECT filename FROM {registry} WHERE name = '%s' AND type = '%s'", $name, $type)); + if ($file) { + require_once($file); + registry_mark_code($type, $name); + return TRUE; + } +} + +/** + * Collect the resources used for this request. + * + * @param $type + * The type of resource. + * @param $name + * The name of the resource. + * @param $return + * Boolean flag to indicate whether to return the resources. + */ +function registry_mark_code($type, $name, $return = FALSE) { + static $resources = array(); + + if ($type && $name) { + if (!isset($resources[$type])) { + $resources[$type] = array(); + } + if (!in_array($name, $resources[$type])) { + $resources[$type][] = $name; + } + } + + if ($return) { + return $resources; + } +} + +/** + * Rescan all enabled modules and rebuild the registry. + * + * Rescans all code in modules or includes directory, storing a mapping of + * each function, file, and hook implementation in the database. + */ +function drupal_rebuild_code_registry() { + require_once './includes/registry.inc'; + _drupal_rebuild_code_registry(); +} + +/** + * Save hook implementations cache. + * + * @param $hook + * Array with the hook name and list of modules that implement it. + * @param $write_to_persistent_cache + * Whether to write to the persistent cache. + */ +function registry_cache_hook_implementations($hook, $write_to_persistent_cache = FALSE) { + static $implementations; + + if ($hook) { + // Newer is always better, so overwrite anything that's come before. + $implementations[$hook['hook']] = $hook['modules']; + } + + if ($write_to_persistent_cache === TRUE) { + cache_set('hooks', $implementations, 'cache_registry'); + } +} + +/** + * Save the files required by the registry for this path. + */ +function registry_cache_path_files() { + if ($used_code = registry_mark_code(NULL, NULL, TRUE)) { + $files = array(); + $type_sql = array(); + $params = array(); + foreach ($used_code as $type => $names) { + $type_sql[] = "(name IN (" . db_placeholders($names, 'varchar') . ") AND type = '%s')"; + $params = array_merge($params, $names); + $params[] = $type; + } + $res = db_query("SELECT DISTINCT filename FROM {registry} WHERE " . implode(' OR ', $type_sql), $params); + while ($row = db_fetch_object($res)) { + $files[] = $row->filename; + } + if ($files) { + $menu = menu_get_item(); + cache_set('registry:' . $menu['path'], implode(';', $files), 'cache_registry'); + } + } +} + +/** + * @} End of "ingroup registry". + */ diff --git a/includes/common.inc b/includes/common.inc index 371f3443f0e1..710d2e3c2b50 100644 --- a/includes/common.inc +++ b/includes/common.inc @@ -1460,11 +1460,15 @@ function l($text, $path, $options = array()) { * react to the closing of the page by calling hook_exit(). */ function drupal_page_footer() { + if (variable_get('cache', CACHE_DISABLED) != CACHE_DISABLED) { page_set_cache(); } module_invoke_all('exit'); + + registry_cache_hook_implementations(FALSE, TRUE); + registry_cache_path_files(); } /** @@ -2700,7 +2704,7 @@ function drupal_render(&$elements) { // element is rendered into the final text. if (isset($elements['#pre_render'])) { foreach ($elements['#pre_render'] as $function) { - if (function_exists($function)) { + if (drupal_function_exists($function)) { $elements = $function($elements); } } @@ -2762,7 +2766,7 @@ function drupal_render(&$elements) { // which allows the output'ed text to be filtered. if (isset($elements['#post_render'])) { foreach ($elements['#post_render'] as $function) { - if (function_exists($function)) { + if (drupal_function_exists($function)) { $content = $function($content, $elements); } } @@ -3142,7 +3146,7 @@ function drupal_uninstall_schema($module) { */ function drupal_get_schema_unprocessed($module, $table = NULL) { // Load the .install file to get hook_schema. - module_load_include('install', $module); + module_load_install($module); $schema = module_invoke($module, 'schema'); if (!is_null($table) && isset($schema[$table])) { @@ -3528,6 +3532,7 @@ function drupal_flush_all_caches() { // Change query-strings on css/js files to enforce reload for all users. _drupal_flush_css_js(); + drupal_rebuild_code_registry(); drupal_clear_css_cache(); drupal_clear_js_cache(); system_theme_data(); @@ -3536,7 +3541,7 @@ function drupal_flush_all_caches() { node_types_rebuild(); // Don't clear cache_form - in-progress form submissions may break. // Ordered so clearing the page cache will always be the last action. - $core = array('cache', 'cache_block', 'cache_filter', 'cache_page'); + $core = array('cache', 'cache_block', 'cache_filter', 'cache_registry', 'cache_page'); $cache_tables = array_merge(module_invoke_all('flush_caches'), $core); foreach ($cache_tables as $table) { cache_clear_all('*', $table, TRUE); diff --git a/includes/form.inc b/includes/form.inc index bb02accabcd1..94aa380b16ea 100644 --- a/includes/form.inc +++ b/includes/form.inc @@ -327,7 +327,7 @@ function drupal_retrieve_form($form_id, &$form_state) { // We first check to see if there's a function named after the $form_id. // If there is, we simply pass the arguments on to it to get the form. - if (!function_exists($form_id)) { + if (!drupal_function_exists($form_id)) { // In cases where many form_ids need to share a central constructor function, // such as the node editing form, modules can implement hook_forms(). It // maps one or more form_ids to the correct constructor functions. @@ -348,6 +348,7 @@ function drupal_retrieve_form($form_id, &$form_state) { } if (isset($form_definition['callback'])) { $callback = $form_definition['callback']; + drupal_function_exists($callback); } } @@ -504,13 +505,13 @@ function drupal_prepare_form($form_id, &$form, &$form_state) { $form += _element_info('form'); if (!isset($form['#validate'])) { - if (function_exists($form_id . '_validate')) { + if (drupal_function_exists($form_id . '_validate')) { $form['#validate'] = array($form_id . '_validate'); } } if (!isset($form['#submit'])) { - if (function_exists($form_id . '_submit')) { + if (drupal_function_exists($form_id . '_submit')) { // We set submit here so that it can be altered. $form['#submit'] = array($form_id . '_submit'); } @@ -712,7 +713,7 @@ function _form_validate($elements, &$form_state, $form_id = NULL) { // #value data. elseif (isset($elements['#element_validate'])) { foreach ($elements['#element_validate'] as $function) { - if (function_exists($function)) { + if (drupal_function_exists($function)) { $function($elements, $form_state, $complete_form); } } @@ -749,7 +750,7 @@ function form_execute_handlers($type, &$form, &$form_state) { } foreach ($handlers as $function) { - if (function_exists($function)) { + if (drupal_function_exists($function)) { if ($type == 'submit' && ($batch =& batch_get())) { // Some previous _submit handler has set a batch. We store the call // in a special 'control' batch set, for execution at the correct @@ -1032,7 +1033,7 @@ function _form_builder_handle_input_element($form_id, &$form, &$form_state, $com // checkboxes and files. if (isset($form['#process']) && !$form['#processed']) { foreach ($form['#process'] as $process) { - if (function_exists($process)) { + if (drupal_function_exists($process)) { $form = $process($form, isset($edit) ? $edit : NULL, $form_state, $complete_form); } } diff --git a/includes/install.inc b/includes/install.inc index 9398077a10aa..54bfd4bc4426 100644 --- a/includes/install.inc +++ b/includes/install.inc @@ -687,8 +687,9 @@ function drupal_check_profile($profile) { $requirements = array(); foreach ($installs as $install) { require_once $install->filename; - if (module_hook($install->name, 'requirements')) { - $requirements = array_merge($requirements, module_invoke($install->name, 'requirements', 'install')); + $function = $install->name. '_requirements'; + if (function_exists($function)) { + $requirements = array_merge($requirements, $function('install')); } } return $requirements; diff --git a/includes/mail.inc b/includes/mail.inc index 56c765e7c4f4..c2394a414919 100644 --- a/includes/mail.inc +++ b/includes/mail.inc @@ -115,7 +115,7 @@ function drupal_mail($module, $key, $to, $language, $params = array(), $from = N // Build the e-mail (get subject and body, allow additional headers) by // invoking hook_mail() on this module. We cannot use module_invoke() as // we need to have $message by reference in hook_mail(). - if (function_exists($function = $module . '_mail')) { + if (drupal_function_exists($function = $module . '_mail')) { $function($key, $message, $params); } diff --git a/includes/menu.inc b/includes/menu.inc index 2e57234dd6f3..1a52d3da4872 100644 --- a/includes/menu.inc +++ b/includes/menu.inc @@ -339,11 +339,16 @@ function menu_execute_active_handler($path = NULL) { menu_rebuild(); } if ($router_item = menu_get_item($path)) { + $cache = cache_get('registry:' . $router_item['path'], 'cache_registry'); + if (!empty($cache->data)) { + foreach(explode(';', $cache->data) as $file) { + require_once($file); + } + } if ($router_item['access']) { - if ($router_item['file']) { - require_once($router_item['file']); + if (drupal_function_exists($router_item['page_callback'])) { + return call_user_func_array($router_item['page_callback'], $router_item['page_arguments']); } - return call_user_func_array($router_item['page_callback'], $router_item['page_arguments']); } else { return MENU_ACCESS_DENIED; @@ -1665,7 +1670,7 @@ function menu_router_build($reset = FALSE) { // We need to manually call each module so that we can know which module // a given item came from. $callbacks = array(); - foreach (module_implements('menu') as $module) { + foreach (module_implements('menu', NULL, TRUE) as $module) { $router_items = call_user_func($module . '_menu'); if (isset($router_items) && is_array($router_items)) { foreach (array_keys($router_items) as $path) { @@ -2201,12 +2206,12 @@ function _menu_router_build($callbacks) { $load_functions[$k] = NULL; } else { - if (function_exists($matches[1] . '_to_arg')) { + if (drupal_function_exists($matches[1] . '_to_arg')) { $to_arg_functions[$k] = $matches[1] . '_to_arg'; $load_functions[$k] = NULL; $match = TRUE; } - if (function_exists($matches[1] . '_load')) { + if (drupal_function_exists($matches[1] . '_load')) { $function = $matches[1] . '_load'; // Create an array of arguments that will be passed to the _load // function when this menu path is checked, if 'load arguments' @@ -2293,12 +2298,6 @@ function _menu_router_build($callbacks) { if (!isset($item['page arguments']) && isset($parent['page arguments'])) { $item['page arguments'] = $parent['page arguments']; } - if (!isset($item['file']) && isset($parent['file'])) { - $item['file'] = $parent['file']; - } - if (!isset($item['file path']) && isset($parent['file path'])) { - $item['file path'] = $parent['file path']; - } } } } @@ -2326,34 +2325,25 @@ function _menu_router_build($callbacks) { 'tab_parent' => '', 'tab_root' => $path, 'path' => $path, - 'file' => '', - 'file path' => '', - 'include file' => '', ); - // Calculate out the file to be included for each callback, if any. - if ($item['file']) { - $file_path = $item['file path'] ? $item['file path'] : drupal_get_path('module', $item['module']); - $item['include file'] = $file_path . '/' . $item['file']; - } - $title_arguments = $item['title arguments'] ? serialize($item['title arguments']) : ''; db_query("INSERT INTO {menu_router} (path, load_functions, to_arg_functions, access_callback, access_arguments, page_callback, page_arguments, fit, number_parts, tab_parent, tab_root, title, title_callback, title_arguments, - type, block_callback, description, position, weight, file) + type, block_callback, description, position, weight) VALUES ('%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, %d, '%s', '%s', '%s', '%s', '%s', - %d, '%s', '%s', '%s', %d, '%s')", + %d, '%s', '%s', '%s', %d)", $path, $item['load_functions'], $item['to_arg_functions'], $item['access callback'], serialize($item['access arguments']), $item['page callback'], serialize($item['page arguments']), $item['_fit'], $item['_number_parts'], $item['tab_parent'], $item['tab_root'], $item['title'], $item['title callback'], $title_arguments, - $item['type'], $item['block callback'], $item['description'], $item['position'], $item['weight'], $item['include file']); + $item['type'], $item['block callback'], $item['description'], $item['position'], $item['weight']); } // Sort the masks so they are in order of descending fit, and store them. $masks = array_keys($masks); diff --git a/includes/module.inc b/includes/module.inc index d0f100298456..e62558af4cd9 100644 --- a/includes/module.inc +++ b/includes/module.inc @@ -221,7 +221,7 @@ function _module_build_dependencies($files) { */ function module_exists($module) { $list = module_list(); - return array_key_exists($module, $list); + return isset($list[$module]); } /** @@ -231,7 +231,14 @@ function module_load_install($module) { // Make sure the installation API is available include_once './includes/install.inc'; - module_load_include('install', $module); + $file = module_load_include('install', $module); + // Ensure that you can module_invoke something inside the newly-loaded + // file during install. + $module_list = module_list(); + if (!isset($module_list[$module])) { + $module_list[$module]['filename'] = $file; + module_list(TRUE, FALSE, FALSE, $module_list); + } } /** @@ -253,6 +260,7 @@ function module_load_include($type, $module, $name = NULL) { if (is_file($file)) { require_once $file; + return $file; } else { return FALSE; @@ -292,7 +300,7 @@ function module_enable($module_list) { // Refresh the module list to include the new enabled module. module_list(TRUE, FALSE); // Force to regenerate the stored list of hook implementations. - module_implements('', FALSE, TRUE); + drupal_rebuild_code_registry(); } foreach ($invoke_modules as $module) { @@ -301,7 +309,7 @@ function module_enable($module_list) { // We check for the existence of node_access_needs_rebuild() since // at install time, module_enable() could be called while node.module // is not enabled yet. - if (function_exists('node_access_needs_rebuild') && !node_access_needs_rebuild() && module_hook($module, 'node_grants')) { + if (drupal_function_exists('node_access_needs_rebuild') && !node_access_needs_rebuild() && module_hook($module, 'node_grants')) { node_access_needs_rebuild(TRUE); } } @@ -333,7 +341,7 @@ function module_disable($module_list) { // Refresh the module list to exclude the disabled modules. module_list(TRUE, FALSE); // Force to regenerate the stored list of hook implementations. - module_implements('', FALSE, TRUE); + drupal_rebuild_code_registry(); } // If there remains no more node_access module, rebuilding will be @@ -376,7 +384,13 @@ function module_disable($module_list) { * implemented in that module. */ function module_hook($module, $hook) { - return function_exists($module . '_' . $hook); + $function = $module . '_' . $hook; + if (defined('MAINTENANCE_MODE')) { + return function_exists($function); + } + else { + return drupal_function_exists($function); + } } /** @@ -395,22 +409,26 @@ function module_hook($module, $hook) { * An array with the names of the modules which are implementing this hook. */ function module_implements($hook, $sort = FALSE, $refresh = FALSE) { - static $implementations; + static $implementations = array(); if ($refresh) { $implementations = array(); - return; + } + else if (!defined('MAINTENANCE_MODE') && empty($implementations)) { + if ($cache = cache_get('hooks', 'cache_registry')) { + $implementations = $cache->data; + } } if (!isset($implementations[$hook])) { $implementations[$hook] = array(); - $list = module_list(FALSE, TRUE, $sort); - foreach ($list as $module) { + foreach (module_list() as $module) { if (module_hook($module, $hook)) { $implementations[$hook][] = $module; } } } + registry_cache_hook_implementations(array('hook' => $hook, 'modules' => $implementations[$hook])); // The explicit cast forces a copy to be made. This is needed because // $implementations[$hook] is only a reference to an element of @@ -438,9 +456,8 @@ function module_invoke() { $module = $args[0]; $hook = $args[1]; unset($args[0], $args[1]); - $function = $module . '_' . $hook; if (module_hook($module, $hook)) { - return call_user_func_array($function, $args); + return call_user_func_array($module . '_' . $hook, $args); } } /** @@ -461,12 +478,14 @@ function module_invoke_all() { $return = array(); foreach (module_implements($hook) as $module) { $function = $module . '_' . $hook; - $result = call_user_func_array($function, $args); - if (isset($result) && is_array($result)) { - $return = array_merge_recursive($return, $result); - } - else if (isset($result)) { - $return[] = $result; + if (drupal_function_exists($function)) { + $result = call_user_func_array($function, $args); + if (isset($result) && is_array($result)) { + $return = array_merge_recursive($return, $result); + } + else if (isset($result)) { + $return[] = $result; + } } } diff --git a/includes/theme.inc b/includes/theme.inc index d675e1564029..3b4d1dc1c9b6 100644 --- a/includes/theme.inc +++ b/includes/theme.inc @@ -177,7 +177,9 @@ function _init_theme($theme, $base_theme = array(), $registry_callback = '_theme } } - $registry_callback($theme, $base_theme, $theme_engine); + if (drupal_function_exists($registry_callback)) { + $registry_callback($theme, $base_theme, $theme_engine); + } } /** @@ -628,7 +630,7 @@ function theme() { // call_user_func_array. $args = array(&$variables, $hook); foreach ($info['preprocess functions'] as $preprocess_function) { - if (function_exists($preprocess_function)) { + if (drupal_function_exists($preprocess_function)) { call_user_func_array($preprocess_function, $args); } } diff --git a/includes/xmlrpcs.inc b/includes/xmlrpcs.inc index 21509d494fad..ffa5fd8c3fd8 100644 --- a/includes/xmlrpcs.inc +++ b/includes/xmlrpcs.inc @@ -202,7 +202,7 @@ function xmlrpc_server_call($xmlrpc_server, $methodname, $args) { } } - if (!function_exists($method)) { + if (!drupal_function_exists($method)) { return xmlrpc_error(-32601, t('Server error. Requested function @method does not exist.', array("@method" => $method))); } // Call the mapped function diff --git a/install.php b/install.php index 0341500008a8..902fe2b8f738 100644 --- a/install.php +++ b/install.php @@ -785,8 +785,8 @@ function install_tasks($profile, $task) { // The end of the install process. Remember profile used. if ($task == 'done') { - // Rebuild menu to get content type links registered by the profile, - // and possibly any other menu items created through the tasks. + // Rebuild menu and registry to get content type links registered by the + // profile, and possibly any other menu items created through the tasks. menu_rebuild(); // Register actions declared by any modules. diff --git a/modules/aggregator/aggregator.info b/modules/aggregator/aggregator.info index 2d16c0792ff9..ae6d3e767a74 100644 --- a/modules/aggregator/aggregator.info +++ b/modules/aggregator/aggregator.info @@ -4,3 +4,6 @@ description = "Aggregates syndicated content (RSS, RDF, and Atom feeds)." package = Core - optional version = VERSION core = 7.x +files[] = aggregator.module +files[] = aggregator.admin.inc +files[] = aggregator.pages.inc diff --git a/modules/aggregator/aggregator.module b/modules/aggregator/aggregator.module index d9af23b27380..565a3617ccf1 100644 --- a/modules/aggregator/aggregator.module +++ b/modules/aggregator/aggregator.module @@ -84,7 +84,6 @@ function aggregator_menu() { 'description' => "Configure which content your site aggregates from other sites, how often it polls them, and how they're categorized.", 'page callback' => 'aggregator_admin_overview', 'access arguments' => array('administer news feeds'), - 'file' => 'aggregator.admin.inc', ); $items['admin/content/aggregator/add/feed'] = array( 'title' => 'Add feed', @@ -93,7 +92,6 @@ function aggregator_menu() { 'access arguments' => array('administer news feeds'), 'type' => MENU_LOCAL_TASK, 'parent' => 'admin/content/aggregator', - 'file' => 'aggregator.admin.inc', ); $items['admin/content/aggregator/add/category'] = array( 'title' => 'Add category', @@ -102,7 +100,6 @@ function aggregator_menu() { 'access arguments' => array('administer news feeds'), 'type' => MENU_LOCAL_TASK, 'parent' => 'admin/content/aggregator', - 'file' => 'aggregator.admin.inc', ); $items['admin/content/aggregator/remove/%aggregator_feed'] = array( 'title' => 'Remove items', @@ -110,7 +107,6 @@ function aggregator_menu() { 'page arguments' => array('aggregator_admin_remove_feed', 4), 'access arguments' => array('administer news feeds'), 'type' => MENU_CALLBACK, - 'file' => 'aggregator.admin.inc', ); $items['admin/content/aggregator/update/%aggregator_feed'] = array( 'title' => 'Update items', @@ -118,7 +114,6 @@ function aggregator_menu() { 'page arguments' => array(4), 'access arguments' => array('administer news feeds'), 'type' => MENU_CALLBACK, - 'file' => 'aggregator.admin.inc', ); $items['admin/content/aggregator/list'] = array( 'title' => 'List', @@ -132,40 +127,34 @@ function aggregator_menu() { 'type' => MENU_LOCAL_TASK, 'weight' => 10, 'access arguments' => array('administer news feeds'), - 'file' => 'aggregator.admin.inc', ); $items['aggregator'] = array( 'title' => 'Feed aggregator', 'page callback' => 'aggregator_page_last', 'access arguments' => array('access news feeds'), 'weight' => 5, - 'file' => 'aggregator.pages.inc', ); $items['aggregator/sources'] = array( 'title' => 'Sources', 'page callback' => 'aggregator_page_sources', 'access arguments' => array('access news feeds'), - 'file' => 'aggregator.pages.inc', ); $items['aggregator/categories'] = array( 'title' => 'Categories', 'page callback' => 'aggregator_page_categories', 'access callback' => '_aggregator_has_categories', - 'file' => 'aggregator.pages.inc', ); $items['aggregator/rss'] = array( 'title' => 'RSS feed', 'page callback' => 'aggregator_page_rss', 'access arguments' => array('access news feeds'), 'type' => MENU_CALLBACK, - 'file' => 'aggregator.pages.inc', ); $items['aggregator/opml'] = array( 'title' => 'OPML feed', 'page callback' => 'aggregator_page_opml', 'access arguments' => array('access news feeds'), 'type' => MENU_CALLBACK, - 'file' => 'aggregator.pages.inc', ); $items['aggregator/categories/%aggregator_category'] = array( 'title callback' => '_aggregator_category_title', @@ -174,7 +163,6 @@ function aggregator_menu() { 'page arguments' => array(2), 'access callback' => 'user_access', 'access arguments' => array('access news feeds'), - 'file' => 'aggregator.pages.inc', ); $items['aggregator/categories/%aggregator_category/view'] = array( 'title' => 'View', @@ -187,7 +175,6 @@ function aggregator_menu() { 'page arguments' => array('aggregator_page_category', 2), 'access arguments' => array('administer news feeds'), 'type' => MENU_LOCAL_TASK, - 'file' => 'aggregator.pages.inc', ); $items['aggregator/categories/%aggregator_category/configure'] = array( 'title' => 'Configure', @@ -196,14 +183,12 @@ function aggregator_menu() { 'access arguments' => array('administer news feeds'), 'type' => MENU_LOCAL_TASK, 'weight' => 1, - 'file' => 'aggregator.admin.inc', ); $items['aggregator/sources/%aggregator_feed'] = array( 'page callback' => 'aggregator_page_source', 'page arguments' => array(2), 'access arguments' => array('access news feeds'), 'type' => MENU_CALLBACK, - 'file' => 'aggregator.pages.inc', ); $items['aggregator/sources/%aggregator_feed/view'] = array( 'title' => 'View', @@ -216,7 +201,6 @@ function aggregator_menu() { 'page arguments' => array('aggregator_page_source', 2), 'access arguments' => array('administer news feeds'), 'type' => MENU_LOCAL_TASK, - 'file' => 'aggregator.pages.inc', ); $items['aggregator/sources/%aggregator_feed/configure'] = array( 'title' => 'Configure', @@ -225,7 +209,6 @@ function aggregator_menu() { 'access arguments' => array('administer news feeds'), 'type' => MENU_LOCAL_TASK, 'weight' => 1, - 'file' => 'aggregator.admin.inc', ); $items['admin/content/aggregator/edit/feed/%aggregator_feed'] = array( 'title' => 'Edit feed', @@ -233,7 +216,6 @@ function aggregator_menu() { 'page arguments' => array('aggregator_form_feed', 5), 'access arguments' => array('administer news feeds'), 'type' => MENU_CALLBACK, - 'file' => 'aggregator.admin.inc', ); $items['admin/content/aggregator/edit/category/%aggregator_category'] = array( 'title' => 'Edit category', @@ -241,7 +223,6 @@ function aggregator_menu() { 'page arguments' => array('aggregator_form_category', 5), 'access arguments' => array('administer news feeds'), 'type' => MENU_CALLBACK, - 'file' => 'aggregator.admin.inc', ); return $items; diff --git a/modules/block/block.info b/modules/block/block.info index 75bd66eded1d..4b9dd2afcd57 100644 --- a/modules/block/block.info +++ b/modules/block/block.info @@ -4,3 +4,5 @@ description = Controls the boxes that are displayed around the main content. package = Core - required version = VERSION core = 7.x +files[] = block.module +files[] = block.admin.inc diff --git a/modules/block/block.module b/modules/block/block.module index ba1257a06f97..d3660c1ec289 100644 --- a/modules/block/block.module +++ b/modules/block/block.module @@ -120,7 +120,6 @@ function block_menu() { 'description' => 'Configure what block content appears in your site\'s sidebars and other regions.', 'page callback' => 'block_admin_display', 'access arguments' => array('administer blocks'), - 'file' => 'block.admin.inc', ); $items['admin/build/block/list'] = array( 'title' => 'List', @@ -132,7 +131,6 @@ function block_menu() { 'page callback' => 'block_admin_display_js', 'access arguments' => array('administer blocks'), 'type' => MENU_CALLBACK, - 'file' => 'block.admin.inc', ); $items['admin/build/block/configure'] = array( 'title' => 'Configure block', @@ -140,7 +138,6 @@ function block_menu() { 'page arguments' => array('block_admin_configure'), 'access arguments' => array('administer blocks'), 'type' => MENU_CALLBACK, - 'file' => 'block.admin.inc', ); $items['admin/build/block/delete'] = array( 'title' => 'Delete block', @@ -148,7 +145,6 @@ function block_menu() { 'page arguments' => array('block_box_delete'), 'access arguments' => array('administer blocks'), 'type' => MENU_CALLBACK, - 'file' => 'block.admin.inc', ); $items['admin/build/block/add'] = array( 'title' => 'Add block', @@ -156,7 +152,6 @@ function block_menu() { 'page arguments' => array('block_add_block_form'), 'access arguments' => array('administer blocks'), 'type' => MENU_LOCAL_TASK, - 'file' => 'block.admin.inc', ); $default = variable_get('theme_default', 'garland'); foreach (list_themes() as $key => $theme) { @@ -165,7 +160,6 @@ function block_menu() { 'page arguments' => array($key), 'type' => $key == $default ? MENU_DEFAULT_LOCAL_TASK : MENU_LOCAL_TASK, 'weight' => $key == $default ? -10 : 0, - 'file' => 'block.admin.inc', 'access callback' => '_block_themes_access', 'access arguments' => array($theme), ); diff --git a/modules/blog/blog.info b/modules/blog/blog.info index f40da2c42a00..ae6430bef989 100644 --- a/modules/blog/blog.info +++ b/modules/blog/blog.info @@ -4,3 +4,5 @@ description = Enables keeping easily and regularly updated user web pages or blo package = Core - optional version = VERSION core = 7.x +files[] = blog.module +files[] = blog.pages.inc diff --git a/modules/blog/blog.module b/modules/blog/blog.module index a2a207b768de..1cc82a16d602 100644 --- a/modules/blog/blog.module +++ b/modules/blog/blog.module @@ -138,7 +138,6 @@ function blog_menu() { 'page callback' => 'blog_page_last', 'access arguments' => array('access content'), 'type' => MENU_SUGGESTED_ITEM, - 'file' => 'blog.pages.inc', ); $items['blog/%user_uid_optional'] = array( 'title' => 'My blog', @@ -146,7 +145,6 @@ function blog_menu() { 'page arguments' => array(1), 'access callback' => 'blog_page_user_access', 'access arguments' => array(1), - 'file' => 'blog.pages.inc', ); $items['blog/%user/feed'] = array( 'title' => 'Blogs', @@ -155,14 +153,12 @@ function blog_menu() { 'access callback' => 'blog_page_user_access', 'access arguments' => array(1), 'type' => MENU_CALLBACK, - 'file' => 'blog.pages.inc', ); $items['blog/feed'] = array( 'title' => 'Blogs', 'page callback' => 'blog_feed_last', 'access arguments' => array('access content'), 'type' => MENU_CALLBACK, - 'file' => 'blog.pages.inc', ); return $items; diff --git a/modules/blogapi/blogapi.info b/modules/blogapi/blogapi.info index b094bba4a7ab..fbe20346ad19 100644 --- a/modules/blogapi/blogapi.info +++ b/modules/blogapi/blogapi.info @@ -4,3 +4,4 @@ description = Allows users to post content using applications that support XML-R package = Core - optional version = VERSION core = 7.x +files[] = blogapi.module diff --git a/modules/book/book.info b/modules/book/book.info index 9c2f3537a893..23684b43eabc 100644 --- a/modules/book/book.info +++ b/modules/book/book.info @@ -4,3 +4,6 @@ description = Allows users to structure site pages in a hierarchy or outline. package = Core - optional version = VERSION core = 7.x +files[] = book.module +files[] = book.admin.inc +files[] = book.pages.inc diff --git a/modules/book/book.module b/modules/book/book.module index 3d33ce5bc89b..990002a08366 100644 --- a/modules/book/book.module +++ b/modules/book/book.module @@ -85,7 +85,6 @@ function book_menu() { 'description' => "Manage your site's book outlines.", 'page callback' => 'book_admin_overview', 'access arguments' => array('administer book outlines'), - 'file' => 'book.admin.inc', ); $items['admin/content/book/list'] = array( 'title' => 'List', @@ -98,7 +97,6 @@ function book_menu() { 'access arguments' => array('administer site configuration'), 'type' => MENU_LOCAL_TASK, 'weight' => 8, - 'file' => 'book.admin.inc', ); $items['admin/content/book/%node'] = array( 'title' => 'Re-order book pages and change titles', @@ -107,21 +105,18 @@ function book_menu() { 'access callback' => '_book_outline_access', 'access arguments' => array(3), 'type' => MENU_CALLBACK, - 'file' => 'book.admin.inc', ); $items['book'] = array( 'title' => 'Books', 'page callback' => 'book_render', 'access arguments' => array('access content'), 'type' => MENU_SUGGESTED_ITEM, - 'file' => 'book.pages.inc', ); $items['book/export/%/%'] = array( 'page callback' => 'book_export', 'page arguments' => array(2, 3), 'access arguments' => array('access printer-friendly version'), 'type' => MENU_CALLBACK, - 'file' => 'book.pages.inc', ); $items['node/%node/outline'] = array( 'title' => 'Outline', @@ -131,7 +126,6 @@ function book_menu() { 'access arguments' => array(1), 'type' => MENU_LOCAL_TASK, 'weight' => 2, - 'file' => 'book.pages.inc', ); $items['node/%node/outline/remove'] = array( 'title' => 'Remove from outline', @@ -140,13 +134,11 @@ function book_menu() { 'access callback' => '_book_outline_remove_access', 'access arguments' => array(1), 'type' => MENU_CALLBACK, - 'file' => 'book.pages.inc', ); $items['book/js/form'] = array( 'page callback' => 'book_form_update', 'access arguments' => array('access content'), 'type' => MENU_CALLBACK, - 'file' => 'book.pages.inc', ); return $items; } diff --git a/modules/color/color.info b/modules/color/color.info index 7c1d7b0899a8..d6794ab124c4 100644 --- a/modules/color/color.info +++ b/modules/color/color.info @@ -4,3 +4,4 @@ description = Allows administrators to change the color scheme of compatible the package = Core - optional version = VERSION core = 7.x +files[] = color.module diff --git a/modules/comment/comment.info b/modules/comment/comment.info index cdd764b48a63..00f29d422977 100644 --- a/modules/comment/comment.info +++ b/modules/comment/comment.info @@ -4,3 +4,6 @@ description = Allows users to comment on and discuss published content. package = Core - optional version = VERSION core = 7.x +files[] = comment.module +files[] = comment.admin.inc +files[] = comment.pages.inc diff --git a/modules/comment/comment.module b/modules/comment/comment.module index 05fe9a11eb26..ead3cc906beb 100644 --- a/modules/comment/comment.module +++ b/modules/comment/comment.module @@ -176,7 +176,6 @@ function comment_menu() { 'description' => 'List and edit site comments and the comment moderation queue.', 'page callback' => 'comment_admin', 'access arguments' => array('administer comments'), - 'file' => 'comment.admin.inc', ); // Tabs: @@ -190,7 +189,6 @@ function comment_menu() { 'page arguments' => array('approval'), 'access arguments' => array('administer comments'), 'type' => MENU_LOCAL_TASK, - 'file' => 'comment.admin.inc', ); $items['comment/delete'] = array( @@ -198,7 +196,6 @@ function comment_menu() { 'page callback' => 'comment_delete', 'access arguments' => array('administer comments'), 'type' => MENU_CALLBACK, - 'file' => 'comment.admin.inc', ); $items['comment/edit'] = array( @@ -206,7 +203,6 @@ function comment_menu() { 'page callback' => 'comment_edit', 'access arguments' => array('post comments'), 'type' => MENU_CALLBACK, - 'file' => 'comment.pages.inc', ); $items['comment/reply/%node'] = array( 'title' => 'Reply to comment', @@ -215,7 +211,6 @@ function comment_menu() { 'access callback' => 'node_access', 'access arguments' => array('view', 2), 'type' => MENU_CALLBACK, - 'file' => 'comment.pages.inc', ); return $items; diff --git a/modules/contact/contact.info b/modules/contact/contact.info index e88c4c08cabc..2ddd526c4b75 100644 --- a/modules/contact/contact.info +++ b/modules/contact/contact.info @@ -4,3 +4,6 @@ description = Enables the use of both personal and site-wide contact forms. package = Core - optional version = VERSION core = 7.x +files[] = contact.module +files[] = contact.admin.inc +files[] = contact.pages.inc diff --git a/modules/contact/contact.module b/modules/contact/contact.module index 867f77109dcc..cd849cf0530a 100644 --- a/modules/contact/contact.module +++ b/modules/contact/contact.module @@ -51,13 +51,11 @@ function contact_menu() { 'description' => 'Create a system contact form and set up categories for the form to use.', 'page callback' => 'contact_admin_categories', 'access arguments' => array('administer site-wide contact form'), - 'file' => 'contact.admin.inc', ); $items['admin/build/contact/list'] = array( 'title' => 'List', 'page callback' => 'contact_admin_categories', 'type' => MENU_DEFAULT_LOCAL_TASK, - 'file' => 'contact.admin.inc', ); $items['admin/build/contact/add'] = array( 'title' => 'Add category', @@ -66,7 +64,6 @@ function contact_menu() { 'access arguments' => array('administer site-wide contact form'), 'type' => MENU_LOCAL_TASK, 'weight' => 1, - 'file' => 'contact.admin.inc', ); $items['admin/build/contact/edit/%contact'] = array( 'title' => 'Edit contact category', @@ -74,7 +71,6 @@ function contact_menu() { 'page arguments' => array('contact_admin_edit', 3, 4), 'access arguments' => array('administer site-wide contact form'), 'type' => MENU_CALLBACK, - 'file' => 'contact.admin.inc', ); $items['admin/build/contact/delete/%contact'] = array( 'title' => 'Delete contact', @@ -82,7 +78,6 @@ function contact_menu() { 'page arguments' => array('contact_admin_delete', 4), 'access arguments' => array('administer site-wide contact form'), 'type' => MENU_CALLBACK, - 'file' => 'contact.admin.inc', ); $items['admin/build/contact/settings'] = array( 'title' => 'Settings', @@ -91,14 +86,12 @@ function contact_menu() { 'access arguments' => array('administer site-wide contact form'), 'type' => MENU_LOCAL_TASK, 'weight' => 2, - 'file' => 'contact.admin.inc', ); $items['contact'] = array( 'title' => 'Contact', 'page callback' => 'contact_site_page', 'access arguments' => array('access site-wide contact form'), 'type' => MENU_SUGGESTED_ITEM, - 'file' => 'contact.pages.inc', ); $items['user/%user/contact'] = array( 'title' => 'Contact', @@ -108,7 +101,6 @@ function contact_menu() { 'access callback' => '_contact_user_tab_access', 'access arguments' => array(1), 'weight' => 2, - 'file' => 'contact.pages.inc', ); return $items; } diff --git a/modules/dblog/dblog.info b/modules/dblog/dblog.info index 3ec37051f41c..b00b387f43aa 100644 --- a/modules/dblog/dblog.info +++ b/modules/dblog/dblog.info @@ -4,3 +4,5 @@ description = Logs and records system events to the database. package = Core - optional version = VERSION core = 7.x +files[] = dblog.module +files[] = dblog.admin.inc diff --git a/modules/dblog/dblog.module b/modules/dblog/dblog.module index f5d74c4b4d04..7003a1b3c497 100644 --- a/modules/dblog/dblog.module +++ b/modules/dblog/dblog.module @@ -48,16 +48,13 @@ function dblog_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('dblog_admin_settings'), 'access arguments' => array('administer site configuration'), - 'file' => 'dblog.admin.inc', ); - $items['admin/reports/dblog'] = array( 'title' => 'Recent log entries', 'description' => 'View events that have recently been logged.', 'page callback' => 'dblog_overview', 'access arguments' => array('access site reports'), 'weight' => -1, - 'file' => 'dblog.admin.inc', ); $items['admin/reports/page-not-found'] = array( 'title' => "Top 'page not found' errors", @@ -65,7 +62,6 @@ function dblog_menu() { 'page callback' => 'dblog_top', 'page arguments' => array('page not found'), 'access arguments' => array('access site reports'), - 'file' => 'dblog.admin.inc', ); $items['admin/reports/access-denied'] = array( 'title' => "Top 'access denied' errors", @@ -73,7 +69,6 @@ function dblog_menu() { 'page callback' => 'dblog_top', 'page arguments' => array('access denied'), 'access arguments' => array('access site reports'), - 'file' => 'dblog.admin.inc', ); $items['admin/reports/event/%'] = array( 'title' => 'Details', @@ -81,7 +76,6 @@ function dblog_menu() { 'page arguments' => array(3), 'access arguments' => array('access site reports'), 'type' => MENU_CALLBACK, - 'file' => 'dblog.admin.inc', ); return $items; } diff --git a/modules/filter/filter.info b/modules/filter/filter.info index 7f9059c029fe..2c9a8a32bad0 100644 --- a/modules/filter/filter.info +++ b/modules/filter/filter.info @@ -4,3 +4,6 @@ description = Handles the filtering of content in preparation for display. package = Core - required version = VERSION core = 7.x +files[] = filter.module +files[] = filter.admin.inc +files[] = filter.pages.inc diff --git a/modules/filter/filter.module b/modules/filter/filter.module index 737198d2f9a4..edc6e29360a1 100644 --- a/modules/filter/filter.module +++ b/modules/filter/filter.module @@ -73,7 +73,6 @@ function filter_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('filter_admin_overview'), 'access arguments' => array('administer filters'), - 'file' => 'filter.admin.inc', ); $items['admin/settings/filters/list'] = array( 'title' => 'List', @@ -85,7 +84,6 @@ function filter_menu() { 'access arguments' => array('administer filters'), 'type' => MENU_LOCAL_TASK, 'weight' => 1, - 'file' => 'filter.admin.inc', ); $items['admin/settings/filters/delete'] = array( 'title' => 'Delete input format', @@ -93,14 +91,12 @@ function filter_menu() { 'page arguments' => array('filter_admin_delete'), 'access arguments' => array('administer filters'), 'type' => MENU_CALLBACK, - 'file' => 'filter.admin.inc', ); $items['filter/tips'] = array( 'title' => 'Compose tips', 'page callback' => 'filter_tips_long', 'access callback' => TRUE, 'type' => MENU_SUGGESTED_ITEM, - 'file' => 'filter.pages.inc', ); $items['admin/settings/filters/%filter_format'] = array( 'type' => MENU_CALLBACK, @@ -109,14 +105,11 @@ function filter_menu() { 'page callback' => 'filter_admin_format_page', 'page arguments' => array(3), 'access arguments' => array('administer filters'), - 'file' => 'filter.admin.inc', ); - $items['admin/settings/filters/%filter_format/edit'] = array( 'title' => 'Edit', 'type' => MENU_DEFAULT_LOCAL_TASK, 'weight' => 0, - 'file' => 'filter.admin.inc', ); $items['admin/settings/filters/%filter_format/configure'] = array( 'title' => 'Configure', @@ -125,7 +118,6 @@ function filter_menu() { 'access arguments' => array('administer filters'), 'type' => MENU_LOCAL_TASK, 'weight' => 1, - 'file' => 'filter.admin.inc', ); $items['admin/settings/filters/%filter_format/order'] = array( 'title' => 'Rearrange', @@ -134,7 +126,6 @@ function filter_menu() { 'access arguments' => array('administer filters'), 'type' => MENU_LOCAL_TASK, 'weight' => 2, - 'file' => 'filter.admin.inc', ); return $items; } diff --git a/modules/forum/forum.info b/modules/forum/forum.info index 0d480c0f3119..3a642adbc966 100644 --- a/modules/forum/forum.info +++ b/modules/forum/forum.info @@ -6,3 +6,6 @@ dependencies[] = comment package = Core - optional version = VERSION core = 7.x +files[] = forum.module +files[] = forum.admin.inc +files[] = forum.pages.inc diff --git a/modules/forum/forum.module b/modules/forum/forum.module index f2e391d6187d..7903c65691be 100644 --- a/modules/forum/forum.module +++ b/modules/forum/forum.module @@ -87,7 +87,6 @@ function forum_menu() { 'page callback' => 'forum_page', 'access arguments' => array('access content'), 'type' => MENU_SUGGESTED_ITEM, - 'file' => 'forum.pages.inc', ); $items['admin/content/forum'] = array( 'title' => 'Forums', @@ -95,7 +94,6 @@ function forum_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('forum_overview'), 'access arguments' => array('administer forums'), - 'file' => 'forum.admin.inc', ); $items['admin/content/forum/list'] = array( 'title' => 'List', @@ -109,7 +107,6 @@ function forum_menu() { 'access arguments' => array('administer forums'), 'type' => MENU_LOCAL_TASK, 'parent' => 'admin/content/forum', - 'file' => 'forum.admin.inc', ); $items['admin/content/forum/add/forum'] = array( 'title' => 'Add forum', @@ -118,7 +115,6 @@ function forum_menu() { 'access arguments' => array('administer forums'), 'type' => MENU_LOCAL_TASK, 'parent' => 'admin/content/forum', - 'file' => 'forum.admin.inc', ); $items['admin/content/forum/settings'] = array( 'title' => 'Settings', @@ -128,13 +124,11 @@ function forum_menu() { 'weight' => 5, 'type' => MENU_LOCAL_TASK, 'parent' => 'admin/content/forum', - 'file' => 'forum.admin.inc', ); $items['admin/content/forum/edit/%forum_term'] = array( 'page callback' => 'forum_form_main', 'access arguments' => array('administer forums'), 'type' => MENU_CALLBACK, - 'file' => 'forum.admin.inc', ); $items['admin/content/forum/edit/container/%forum_term'] = array( 'title' => 'Edit container', @@ -142,7 +136,6 @@ function forum_menu() { 'page arguments' => array('container', 5), 'access arguments' => array('administer forums'), 'type' => MENU_CALLBACK, - 'file' => 'forum.admin.inc', ); $items['admin/content/forum/edit/forum/%forum_term'] = array( 'title' => 'Edit forum', @@ -150,7 +143,6 @@ function forum_menu() { 'page arguments' => array('forum', 5), 'access arguments' => array('administer forums'), 'type' => MENU_CALLBACK, - 'file' => 'forum.admin.inc', ); return $items; } diff --git a/modules/help/help.info b/modules/help/help.info index 503f739575d5..cdf601be6cf7 100644 --- a/modules/help/help.info +++ b/modules/help/help.info @@ -4,3 +4,5 @@ description = Manages the display of online help. package = Core - optional version = VERSION core = 7.x +files[] = help.module +files[] = help.admin.inc diff --git a/modules/help/help.module b/modules/help/help.module index ee972498d4de..00a9b9a34eb3 100644 --- a/modules/help/help.module +++ b/modules/help/help.module @@ -15,7 +15,6 @@ function help_menu() { 'page callback' => 'help_main', 'access arguments' => array('access administration pages'), 'weight' => 9, - 'file' => 'help.admin.inc', ); foreach (module_implements('help', TRUE) as $module) { @@ -25,7 +24,6 @@ function help_menu() { 'page arguments' => array(2), 'access arguments' => array('access administration pages'), 'type' => MENU_CALLBACK, - 'file' => 'help.admin.inc', ); } diff --git a/modules/locale/locale.info b/modules/locale/locale.info index 9bd5fc8eb01c..aeebbc2f0c73 100644 --- a/modules/locale/locale.info +++ b/modules/locale/locale.info @@ -4,3 +4,4 @@ description = Adds language handling functionality and enables the translation o package = Core - optional version = VERSION core = 7.x +files[] = locale.module diff --git a/modules/menu/menu.info b/modules/menu/menu.info index e3fa441a6c21..30a771270106 100644 --- a/modules/menu/menu.info +++ b/modules/menu/menu.info @@ -4,3 +4,5 @@ description = Allows administrators to customize the site navigation menu. package = Core - optional version = VERSION core = 7.x +files[] = menu.module +files[] = menu.admin.inc diff --git a/modules/menu/menu.module b/modules/menu/menu.module index a9b1fd04368b..060e3b948e49 100644 --- a/modules/menu/menu.module +++ b/modules/menu/menu.module @@ -52,14 +52,11 @@ function menu_menu() { 'page callback' => 'menu_overview_page', 'access callback' => 'user_access', 'access arguments' => array('administer menu'), - 'file' => 'menu.admin.inc', ); - $items['admin/build/menu/list'] = array( 'title' => 'List menus', 'type' => MENU_DEFAULT_LOCAL_TASK, 'weight' => -10, - 'file' => 'menu.admin.inc', ); $items['admin/build/menu/add'] = array( 'title' => 'Add menu', @@ -67,7 +64,6 @@ function menu_menu() { 'page arguments' => array('menu_edit_menu', 'add'), 'access arguments' => array('administer menu'), 'type' => MENU_LOCAL_TASK, - 'file' => 'menu.admin.inc', ); $items['admin/build/menu/settings'] = array( 'title' => 'Settings', @@ -76,7 +72,6 @@ function menu_menu() { 'access arguments' => array('administer menu'), 'type' => MENU_LOCAL_TASK, 'weight' => 5, - 'file' => 'menu.admin.inc', ); $items['admin/build/menu-customize/%menu'] = array( 'title' => 'Customize menu', @@ -86,13 +81,11 @@ function menu_menu() { 'title arguments' => array(3), 'access arguments' => array('administer menu'), 'type' => MENU_CALLBACK, - 'file' => 'menu.admin.inc', ); $items['admin/build/menu-customize/%menu/list'] = array( 'title' => 'List items', 'weight' => -10, 'type' => MENU_DEFAULT_LOCAL_TASK, - 'file' => 'menu.admin.inc', ); $items['admin/build/menu-customize/%menu/add'] = array( 'title' => 'Add item', @@ -100,7 +93,6 @@ function menu_menu() { 'page arguments' => array('menu_edit_item', 'add', NULL, 3), 'access arguments' => array('administer menu'), 'type' => MENU_LOCAL_TASK, - 'file' => 'menu.admin.inc', ); $items['admin/build/menu-customize/%menu/edit'] = array( 'title' => 'Edit menu', @@ -108,7 +100,6 @@ function menu_menu() { 'page arguments' => array('menu_edit_menu', 'edit', 3), 'access arguments' => array('administer menu'), 'type' => MENU_LOCAL_TASK, - 'file' => 'menu.admin.inc', ); $items['admin/build/menu-customize/%menu/delete'] = array( 'title' => 'Delete menu', @@ -116,7 +107,6 @@ function menu_menu() { 'page arguments' => array(3), 'access arguments' => array('administer menu'), 'type' => MENU_CALLBACK, - 'file' => 'menu.admin.inc', ); $items['admin/build/menu/item/%menu_link/edit'] = array( 'title' => 'Edit menu item', @@ -124,7 +114,6 @@ function menu_menu() { 'page arguments' => array('menu_edit_item', 'edit', 4, NULL), 'access arguments' => array('administer menu'), 'type' => MENU_CALLBACK, - 'file' => 'menu.admin.inc', ); $items['admin/build/menu/item/%menu_link/reset'] = array( 'title' => 'Reset menu item', @@ -132,7 +121,6 @@ function menu_menu() { 'page arguments' => array('menu_reset_item_confirm', 4), 'access arguments' => array('administer menu'), 'type' => MENU_CALLBACK, - 'file' => 'menu.admin.inc', ); $items['admin/build/menu/item/%menu_link/delete'] = array( 'title' => 'Delete menu item', @@ -140,9 +128,7 @@ function menu_menu() { 'page arguments' => array(4), 'access arguments' => array('administer menu'), 'type' => MENU_CALLBACK, - 'file' => 'menu.admin.inc', ); - return $items; } diff --git a/modules/node/node.info b/modules/node/node.info index ce8986be9785..64eba84626ba 100644 --- a/modules/node/node.info +++ b/modules/node/node.info @@ -4,3 +4,7 @@ description = Allows content to be submitted to the site and displayed on pages. package = Core - required version = VERSION core = 7.x +files[] = node.module +files[] = content_types.inc +files[] = node.admin.inc +files[] = node.pages.inc diff --git a/modules/node/node.module b/modules/node/node.module index ed82a31f851e..ede648a26a53 100644 --- a/modules/node/node.module +++ b/modules/node/node.module @@ -626,7 +626,8 @@ function _node_type_set_defaults($info) { function node_hook(&$node, $hook) { $module = node_get_types('module', $node); if ($module == 'node') { - $module = 'node_content'; // Avoid function name collisions. + // Avoid function name collisions. + $module = 'node_content'; } return module_hook($module, $hook); } @@ -926,7 +927,9 @@ function node_save(&$node) { db_query('UPDATE {node} SET vid = %d WHERE nid = %d', $node->vid, $node->nid); } - // Call the node specific callback (if any). + // Call the node specific callback (if any). This can be + // node_invoke($node, 'insert') or + // node_invoke($node, 'update'). node_invoke($node, $op); node_invoke_nodeapi($node, $op); @@ -1416,7 +1419,6 @@ function node_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('node_admin_content'), 'access arguments' => array('administer nodes'), - 'file' => 'node.admin.inc', ); $items['admin/content/node/overview'] = array( @@ -1431,12 +1433,10 @@ function node_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('node_configure'), 'access arguments' => array('administer nodes'), - 'file' => 'node.admin.inc', ); $items['admin/content/node-settings/rebuild'] = array( 'title' => 'Rebuild permissions', 'page arguments' => array('node_configure_rebuild_confirm'), - 'file' => 'node.admin.inc', // Any user than can potentially trigger a node_acess_needs_rebuild(TRUE) // has to be allowed access to the 'node access rebuild' confirm form. 'access arguments' => array('access administration pages'), @@ -1448,7 +1448,6 @@ function node_menu() { 'description' => 'Manage posts by content type, including default status, front page promotion, etc.', 'page callback' => 'node_overview_types', 'access arguments' => array('administer content types'), - 'file' => 'content_types.inc', ); $items['admin/build/types/list'] = array( 'title' => 'List', @@ -1460,7 +1459,6 @@ function node_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('node_type_form'), 'access arguments' => array('administer content types'), - 'file' => 'content_types.inc', 'type' => MENU_LOCAL_TASK, ); $items['node'] = array( @@ -1474,7 +1472,6 @@ function node_menu() { 'page callback' => 'node_add_page', 'access callback' => '_node_add_access', 'weight' => 1, - 'file' => 'node.pages.inc', ); $items['rss.xml'] = array( 'title' => 'RSS feed', @@ -1492,14 +1489,12 @@ function node_menu() { 'access callback' => 'node_access', 'access arguments' => array('create', $type->type), 'description' => $type->description, - 'file' => 'node.pages.inc', ); $items['admin/content/node-type/' . $type_url_str] = array( 'title' => $type->name, 'page callback' => 'drupal_get_form', 'page arguments' => array('node_type_form', $type), 'access arguments' => array('administer content types'), - 'file' => 'content_types.inc', 'type' => MENU_CALLBACK, ); $items['admin/content/node-type/' . $type_url_str . '/edit'] = array( @@ -1510,7 +1505,6 @@ function node_menu() { 'title' => 'Delete', 'page arguments' => array('node_type_delete_confirm', $type), 'access arguments' => array('administer content types'), - 'file' => 'content_types.inc', 'type' => MENU_CALLBACK, ); } @@ -1533,7 +1527,6 @@ function node_menu() { 'access callback' => 'node_access', 'access arguments' => array('update', 1), 'weight' => 1, - 'file' => 'node.pages.inc', 'type' => MENU_LOCAL_TASK, ); $items['node/%node/delete'] = array( @@ -1542,7 +1535,6 @@ function node_menu() { 'page arguments' => array('node_delete_confirm', 1), 'access callback' => 'node_access', 'access arguments' => array('delete', 1), - 'file' => 'node.pages.inc', 'weight' => 1, 'type' => MENU_CALLBACK); $items['node/%node/revisions'] = array( @@ -1552,7 +1544,6 @@ function node_menu() { 'access callback' => '_node_revision_access', 'access arguments' => array(1), 'weight' => 2, - 'file' => 'node.pages.inc', 'type' => MENU_LOCAL_TASK, ); $items['node/%node/revisions/%/view'] = array( @@ -1571,7 +1562,6 @@ function node_menu() { 'page arguments' => array('node_revision_revert_confirm', 1), 'access callback' => '_node_revision_access', 'access arguments' => array(1, 'update'), - 'file' => 'node.pages.inc', 'type' => MENU_CALLBACK, ); $items['node/%node/revisions/%/delete'] = array( @@ -1581,7 +1571,6 @@ function node_menu() { 'page arguments' => array('node_revision_delete_confirm', 1), 'access callback' => '_node_revision_access', 'access arguments' => array(1, 'delete'), - 'file' => 'node.pages.inc', 'type' => MENU_CALLBACK, ); return $items; @@ -2025,8 +2014,8 @@ function node_access($op, $node, $account = NULL) { return FALSE; } - // Can't use node_invoke(), because the access hook takes the $op parameter - // before the $node parameter. + // Can't use node_invoke('access', $node), because the access hook takes the + // $op parameter before the $node parameter. $module = node_get_types('module', $node); if ($module == 'node') { $module = 'node_content'; // Avoid function name collisions. diff --git a/modules/openid/openid.info b/modules/openid/openid.info index f747ff9bdec9..c55d44bfa359 100644 --- a/modules/openid/openid.info +++ b/modules/openid/openid.info @@ -4,3 +4,7 @@ description = "Allows users to log into your site using OpenID." version = VERSION package = Core - optional core = 7.x +files[] = openid.module +files[] = openid.inc +files[] = openid.pages.inc +files[] = xrds.inc diff --git a/modules/openid/openid.module b/modules/openid/openid.module index b3a515c99c4b..8b49a0ac0332 100644 --- a/modules/openid/openid.module +++ b/modules/openid/openid.module @@ -15,7 +15,6 @@ function openid_menu() { 'page callback' => 'openid_authentication_page', 'access callback' => 'user_is_anonymous', 'type' => MENU_CALLBACK, - 'file' => 'openid.pages.inc', ); $items['user/%user/openid'] = array( 'title' => 'OpenID identities', @@ -24,7 +23,6 @@ function openid_menu() { 'access callback' => 'user_edit_access', 'access arguments' => array(1), 'type' => MENU_LOCAL_TASK, - 'file' => 'openid.pages.inc', ); $items['user/%user/openid/delete'] = array( 'title' => 'Delete OpenID', @@ -33,7 +31,6 @@ function openid_menu() { 'access callback' => 'user_edit_access', 'access arguments' => array(1), 'type' => MENU_CALLBACK, - 'file' => 'openid.pages.inc', ); return $items; } diff --git a/modules/path/path.info b/modules/path/path.info index ce0490943d92..10fa65748bca 100644 --- a/modules/path/path.info +++ b/modules/path/path.info @@ -4,3 +4,5 @@ description = Allows users to rename URLs. package = Core - optional version = VERSION core = 7.x +files[] = path.module +files[] = path.admin.inc diff --git a/modules/path/path.module b/modules/path/path.module index 49ea6c0008df..36a975de0c90 100644 --- a/modules/path/path.module +++ b/modules/path/path.module @@ -38,14 +38,12 @@ function path_menu() { 'description' => "Change your site's URL paths by aliasing them.", 'page callback' => 'path_admin_overview', 'access arguments' => array('administer url aliases'), - 'file' => 'path.admin.inc', ); $items['admin/build/path/edit'] = array( 'title' => 'Edit alias', 'page callback' => 'path_admin_edit', 'access arguments' => array('administer url aliases'), 'type' => MENU_CALLBACK, - 'file' => 'path.admin.inc', ); $items['admin/build/path/delete'] = array( 'title' => 'Delete alias', @@ -53,7 +51,6 @@ function path_menu() { 'page arguments' => array('path_admin_delete_confirm'), 'access arguments' => array('administer url aliases'), 'type' => MENU_CALLBACK, - 'file' => 'path.admin.inc', ); $items['admin/build/path/list'] = array( 'title' => 'List', @@ -65,7 +62,6 @@ function path_menu() { 'page callback' => 'path_admin_edit', 'access arguments' => array('administer url aliases'), 'type' => MENU_LOCAL_TASK, - 'file' => 'path.admin.inc', ); return $items; diff --git a/modules/php/php.info b/modules/php/php.info index 56f6b5ea5aa1..c22d515dea42 100644 --- a/modules/php/php.info +++ b/modules/php/php.info @@ -4,3 +4,4 @@ description = Allows embedded PHP code/snippets to be evaluated. package = Core - optional version = VERSION core = 7.x +files[] = php.module diff --git a/modules/poll/poll.info b/modules/poll/poll.info index 2cface906fe2..d3279f2e8b15 100644 --- a/modules/poll/poll.info +++ b/modules/poll/poll.info @@ -4,3 +4,5 @@ description = Allows your site to capture votes on different topics in the form package = Core - optional version = VERSION core = 7.x +files[] = poll.module +files[] = poll.pages.inc diff --git a/modules/poll/poll.module b/modules/poll/poll.module index c43fc61dd883..2a1ab86a2376 100644 --- a/modules/poll/poll.module +++ b/modules/poll/poll.module @@ -87,7 +87,6 @@ function poll_menu() { 'page callback' => 'poll_page', 'access arguments' => array('access content'), 'type' => MENU_SUGGESTED_ITEM, - 'file' => 'poll.pages.inc', ); $items['node/%node/votes'] = array( @@ -98,7 +97,6 @@ function poll_menu() { 'access arguments' => array(1, 'inspect all votes', FALSE), 'weight' => 3, 'type' => MENU_LOCAL_TASK, - 'file' => 'poll.pages.inc', ); $items['node/%node/results'] = array( @@ -109,7 +107,6 @@ function poll_menu() { 'access arguments' => array(1, 'access content', TRUE), 'weight' => 3, 'type' => MENU_LOCAL_TASK, - 'file' => 'poll.pages.inc', ); $items['poll/js'] = array( diff --git a/modules/profile/profile.info b/modules/profile/profile.info index cc2f86bcbdc7..d1eee555ae90 100644 --- a/modules/profile/profile.info +++ b/modules/profile/profile.info @@ -4,3 +4,6 @@ description = Supports configurable user profiles. package = Core - optional version = VERSION core = 7.x +files[] = profile.module +files[] = profile.admin.inc +files[] = profile.pages.inc diff --git a/modules/profile/profile.module b/modules/profile/profile.module index e467791d1183..ac81ab065f67 100644 --- a/modules/profile/profile.module +++ b/modules/profile/profile.module @@ -81,7 +81,6 @@ function profile_menu() { 'page callback' => 'profile_browse', 'access arguments' => array('access user profiles'), 'type' => MENU_SUGGESTED_ITEM, - 'file' => 'profile.pages.inc', ); $items['admin/user/profile'] = array( 'title' => 'Profiles', @@ -89,7 +88,6 @@ function profile_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('profile_admin_overview'), 'access arguments' => array('administer users'), - 'file' => 'profile.admin.inc', ); $items['admin/user/profile/add'] = array( 'title' => 'Add field', @@ -97,14 +95,12 @@ function profile_menu() { 'page arguments' => array('profile_field_form'), 'access arguments' => array('administer users'), 'type' => MENU_CALLBACK, - 'file' => 'profile.admin.inc', ); $items['admin/user/profile/autocomplete'] = array( 'title' => 'Profile category autocomplete', 'page callback' => 'profile_admin_settings_autocomplete', 'access arguments' => array('administer users'), 'type' => MENU_CALLBACK, - 'file' => 'profile.admin.inc', ); $items['admin/user/profile/edit'] = array( 'title' => 'Edit field', @@ -112,7 +108,6 @@ function profile_menu() { 'page arguments' => array('profile_field_form'), 'access arguments' => array('administer users'), 'type' => MENU_CALLBACK, - 'file' => 'profile.admin.inc', ); $items['admin/user/profile/delete'] = array( 'title' => 'Delete field', @@ -120,14 +115,12 @@ function profile_menu() { 'page arguments' => array('profile_field_delete'), 'access arguments' => array('administer users'), 'type' => MENU_CALLBACK, - 'file' => 'profile.admin.inc', ); $items['profile/autocomplete'] = array( 'title' => 'Profile autocomplete', 'page callback' => 'profile_autocomplete', 'access arguments' => array('access user profiles'), 'type' => MENU_CALLBACK, - 'file' => 'profile.pages.inc', ); return $items; } diff --git a/modules/search/search.info b/modules/search/search.info index 6d6590cd2438..72ea93a24a33 100644 --- a/modules/search/search.info +++ b/modules/search/search.info @@ -4,3 +4,6 @@ description = Enables site-wide keyword searching. package = Core - optional version = VERSION core = 7.x +files[] = search.module +files[] = search.admin.inc +files[] = search.pages.inc diff --git a/modules/search/search.module b/modules/search/search.module index f344782608cc..fe2e32793116 100644 --- a/modules/search/search.module +++ b/modules/search/search.module @@ -174,7 +174,6 @@ function search_menu() { 'page callback' => 'search_view', 'access arguments' => array('search content'), 'type' => MENU_SUGGESTED_ITEM, - 'file' => 'search.pages.inc', ); $items['admin/settings/search'] = array( 'title' => 'Search settings', @@ -183,7 +182,6 @@ function search_menu() { 'page arguments' => array('search_admin_settings'), 'access arguments' => array('administer search'), 'type' => MENU_NORMAL_ITEM, - 'file' => 'search.admin.inc', ); $items['admin/settings/search/wipe'] = array( 'title' => 'Clear index', @@ -191,7 +189,6 @@ function search_menu() { 'page arguments' => array('search_wipe_confirm'), 'access arguments' => array('administer search'), 'type' => MENU_CALLBACK, - 'file' => 'search.admin.inc', ); $items['admin/reports/search'] = array( 'title' => 'Top search phrases', @@ -199,7 +196,6 @@ function search_menu() { 'page callback' => 'dblog_top', 'page arguments' => array('search'), 'access arguments' => array('access site reports'), - 'file' => 'dblog.admin.inc', 'file path' => drupal_get_path('module', 'dblog'), ); @@ -213,7 +209,6 @@ function search_menu() { 'access arguments' => array($name), 'type' => MENU_LOCAL_TASK, 'parent' => 'search', - 'file' => 'search.pages.inc', ); } return $items; diff --git a/modules/simpletest/simpletest.info b/modules/simpletest/simpletest.info index 9a162e7148a4..87db58443141 100644 --- a/modules/simpletest/simpletest.info +++ b/modules/simpletest/simpletest.info @@ -4,3 +4,4 @@ description = "Provides a framework for unit and functional testing." package = Core - optional version = VERSION core = 7.x +files[] = simpletest.module diff --git a/modules/statistics/statistics.info b/modules/statistics/statistics.info index 031e3b6a00c3..71052696a411 100644 --- a/modules/statistics/statistics.info +++ b/modules/statistics/statistics.info @@ -4,3 +4,6 @@ description = Logs access statistics for your site. package = Core - optional version = VERSION core = 7.x +files[] = statistics.module +files[] = statistics.admin.inc +files[] = statistics.pages.inc diff --git a/modules/statistics/statistics.module b/modules/statistics/statistics.module index fcf99076599d..68de78e11bde 100644 --- a/modules/statistics/statistics.module +++ b/modules/statistics/statistics.module @@ -101,7 +101,6 @@ function statistics_menu() { 'description' => 'View pages that have recently been visited.', 'page callback' => 'statistics_recent_hits', 'access arguments' => array('access statistics'), - 'file' => 'statistics.admin.inc', ); $items['admin/reports/pages'] = array( 'title' => 'Top pages', @@ -109,7 +108,6 @@ function statistics_menu() { 'page callback' => 'statistics_top_pages', 'access arguments' => array('access statistics'), 'weight' => 1, - 'file' => 'statistics.admin.inc', ); $items['admin/reports/visitors'] = array( 'title' => 'Top visitors', @@ -117,14 +115,12 @@ function statistics_menu() { 'page callback' => 'statistics_top_visitors', 'access arguments' => array('access statistics'), 'weight' => 2, - 'file' => 'statistics.admin.inc', ); $items['admin/reports/referrers'] = array( 'title' => 'Top referrers', 'description' => 'View top referrers.', 'page callback' => 'statistics_top_referrers', 'access arguments' => array('access statistics'), - 'file' => 'statistics.admin.inc', ); $items['admin/reports/access/%'] = array( 'title' => 'Details', @@ -133,7 +129,6 @@ function statistics_menu() { 'page arguments' => array(3), 'access arguments' => array('access statistics'), 'type' => MENU_CALLBACK, - 'file' => 'statistics.admin.inc', ); $items['admin/reports/settings'] = array( 'title' => 'Access log settings', @@ -143,7 +138,6 @@ function statistics_menu() { 'access arguments' => array('administer site configuration'), 'type' => MENU_NORMAL_ITEM, 'weight' => 3, - 'file' => 'statistics.admin.inc', ); $items['user/%user/track/navigation'] = array( 'title' => 'Track page visits', @@ -152,7 +146,6 @@ function statistics_menu() { 'access arguments' => array('access statistics'), 'type' => MENU_LOCAL_TASK, 'weight' => 2, - 'file' => 'statistics.pages.inc', ); $items['node/%node/track'] = array( 'title' => 'Track', @@ -161,7 +154,6 @@ function statistics_menu() { 'access arguments' => array('access statistics'), 'type' => MENU_LOCAL_TASK, 'weight' => 2, - 'file' => 'statistics.pages.inc', ); return $items; diff --git a/modules/syslog/syslog.info b/modules/syslog/syslog.info index 8b22a77f4027..2e02aaf20e74 100644 --- a/modules/syslog/syslog.info +++ b/modules/syslog/syslog.info @@ -4,3 +4,4 @@ description = Logs and records system events to syslog. package = Core - optional version = VERSION core = 7.x +files[] = syslog.module diff --git a/modules/system/system.info b/modules/system/system.info index b4daf5205809..649436908548 100644 --- a/modules/system/system.info +++ b/modules/system/system.info @@ -4,3 +4,5 @@ description = Handles general site configuration for administrators. package = Core - required version = VERSION core = 7.x +files[] = system.module +files[] = system.admin.inc diff --git a/modules/system/system.install b/modules/system/system.install index d09eabb48056..9207e6e2d8e6 100644 --- a/modules/system/system.install +++ b/modules/system/system.install @@ -603,6 +603,8 @@ function system_schema() { $schema['cache_page']['description'] = t('Cache table used to store compressed pages for anonymous users, if page caching is enabled.'); $schema['cache_menu'] = $schema['cache']; $schema['cache_menu']['description'] = t('Cache table for the menu system to store router information as well as generated link trees for various menu/page/user combinations.'); + $schema['cache_registry'] = $schema['cache']; + $schema['cache_registry']['description'] = t('Cache table for the code registry system to remember what code files need to be loaded on any given page.'); $schema['files'] = array( 'description' => t('Stores information for uploaded files.'), @@ -859,11 +861,6 @@ function system_schema() { 'not null' => TRUE, 'default' => 0, ), - 'file' => array( - 'description' => t('The file to include for this element, usually the page callback function lives in this file.'), - 'type' => 'text', - 'size' => 'medium', - ), ), 'indexes' => array( 'fit' => array('fit'), @@ -1056,6 +1053,52 @@ function system_schema() { 'primary key' => array('mlid'), ); + $schema['registry'] = array( + 'description' => t("Each record is a function, class, or interface name and the file it is in."), + 'fields' => array( + 'name' => array( + 'description' => t('The name of the function, class, or interface.'), + 'type' => 'varchar', + 'length' => 255, + 'not null' => TRUE, + 'default' => '', + ), + 'type' => array( + 'description' => t('Either function or class or interface.'), + 'type' => 'varchar', + 'length' => 9, + 'not null' => TRUE, + 'default' => '', + ), + 'filename' => array( + 'description' => t('Name of the file.'), + 'type' => 'varchar', + 'length' => 255, + 'not null' => TRUE, + ), + ), + 'primary key' => array('name', 'type'), + ); + + $schema['registry_file'] = array( + 'description' => t("Files parsed to build the registry."), + 'fields' => array( + 'filename' => array( + 'description' => t('Path to the file.'), + 'type' => 'varchar', + 'length' => 255, + 'not null' => TRUE, + ), + 'md5' => array( + 'description' => t("Md5 hash of the file's contents when last parsed."), + 'type' => 'varchar', + 'length' => 32, + 'not null' => TRUE, + ), + ), + 'primary key' => array('filename'), + ); + $schema['sessions'] = array( 'description' => t("Drupal's session handlers read and write into the sessions table. Each record represents a user session, either anonymous or authenticated."), 'fields' => array( @@ -2682,7 +2725,7 @@ function system_update_7000() { } /** - * Generate a cron key and save it in the variables table + * Generate a cron key and save it in the variables table. */ function system_update_7001() { $ret = array(); @@ -2860,9 +2903,49 @@ function system_update_7005() { return $ret; } +/** + * Registry tables and drop the file key of the menu router, since it is no + * longer needed. + */ +function system_update_7006() { + $ret = array(); + db_drop_field($ret, 'menu_router', 'file'); + $schema['registry'] = array( + 'fields' => array( + 'name' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''), + 'type' => array('type' => 'varchar', 'length' => 9, 'not null' => TRUE, 'default' => ''), + 'filename' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''), + ), + 'primary key' => array('name', 'type'), + ); + $schema['registry_file'] = array( + 'fields' => array( + 'filename' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''), + 'md5' => array('type' => 'varchar', 'length' => 32, 'not null' => TRUE, 'default' => ''), + ), + 'primary key' => array('filename'), + ); + $schema['cache_registry'] = array( + 'fields' => array( + 'cid' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''), + 'data' => array('type' => 'blob', 'not null' => FALSE, 'size' => 'big'), + 'expire' => array('type' => 'int', 'not null' => TRUE, 'default' => 0), + 'created' => array('type' => 'int', 'not null' => TRUE, 'default' => 0), + 'headers' => array('type' => 'text', 'not null' => FALSE), + 'serialized' => array('type' => 'int', 'size' => 'small', 'not null' => TRUE, 'default' => 0) + ), + 'indexes' => array('expire' => array('expire')), + 'primary key' => array('cid'), + ); + db_create_table($ret, 'cache_registry', $schema['cache_registry']); + db_create_table($ret, 'registry', $schema['registry']); + db_create_table($ret, 'registry_file', $schema['registry_file']); + drupal_rebuild_code_registry(); + return $ret; +} + /** * @} End of "defgroup updates-6.x-to-7.x" * The next series of updates should start at 8000. */ - diff --git a/modules/system/system.module b/modules/system/system.module index e8e9d0e144f7..2cc438463fe8 100644 --- a/modules/system/system.module +++ b/modules/system/system.module @@ -331,27 +331,23 @@ function system_menu() { 'access arguments' => array('access administration pages'), 'page callback' => 'system_main_admin_page', 'weight' => 9, - 'file' => 'system.admin.inc', ); $items['admin/compact'] = array( 'title' => 'Compact mode', 'page callback' => 'system_admin_compact_page', 'access arguments' => array('access administration pages'), 'type' => MENU_CALLBACK, - 'file' => 'system.admin.inc', ); $items['admin/by-task'] = array( 'title' => 'By task', 'page callback' => 'system_main_admin_page', 'access arguments' => array('access administration pages'), - 'file' => 'system.admin.inc', 'type' => MENU_DEFAULT_LOCAL_TASK, ); $items['admin/by-module'] = array( 'title' => 'By module', 'page callback' => 'system_admin_by_module', 'access arguments' => array('access administration pages'), - 'file' => 'system.admin.inc', 'type' => MENU_LOCAL_TASK, 'weight' => 2, ); @@ -362,7 +358,6 @@ function system_menu() { 'weight' => -10, 'page callback' => 'system_admin_menu_block_page', 'access arguments' => array('access administration pages'), - 'file' => 'system.admin.inc', ); // menu items that are basically just menu blocks @@ -373,7 +368,6 @@ function system_menu() { 'weight' => -5, 'page callback' => 'system_settings_overview', 'access arguments' => array('access administration pages'), - 'file' => 'system.admin.inc', ); $items['admin/build'] = array( 'title' => 'Site building', @@ -382,7 +376,6 @@ function system_menu() { 'weight' => -10, 'page callback' => 'system_admin_menu_block_page', 'access arguments' => array('access administration pages'), - 'file' => 'system.admin.inc', ); $items['admin/settings/admin'] = array( 'title' => 'Administration theme', @@ -392,7 +385,6 @@ function system_menu() { 'page arguments' => array('system_admin_theme_settings'), 'access arguments' => array('administer site configuration'), 'block callback' => 'system_admin_theme_settings', - 'file' => 'system.admin.inc', ); // Themes: $items['admin/build/themes'] = array( @@ -401,7 +393,6 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_themes_form', NULL), 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/build/themes/select'] = array( 'title' => 'List', @@ -439,7 +430,6 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_modules'), 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/build/modules/list'] = array( 'title' => 'List', @@ -504,7 +494,6 @@ function system_menu() { 'description' => 'Manage blocked IP addresses.', 'page callback' => 'system_ip_blocking', 'access arguments' => array('block IP addresses'), - 'file' => 'system.admin.inc', ); $items['admin/settings/ip-blocking/delete/%blocked_ip'] = array( 'title' => 'Delete IP address', @@ -512,7 +501,6 @@ function system_menu() { 'page arguments' => array('system_ip_blocking_delete', 4), 'access arguments' => array('block IP addresses'), 'type' => MENU_CALLBACK, - 'file' => 'system.admin.inc', ); // Settings: @@ -522,7 +510,6 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_site_information_settings'), 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/settings/error-reporting'] = array( 'title' => 'Error reporting', @@ -530,14 +517,12 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_error_reporting_settings'), 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/settings/logging'] = array( 'title' => 'Logging and alerts', 'description' => "Settings for logging and alerts modules. Various modules can route Drupal's system events to different destination, such as syslog, database, email, ...etc.", 'page callback' => 'system_logging_overview', 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/settings/performance'] = array( 'title' => 'Performance', @@ -545,7 +530,6 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_performance_settings'), 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/settings/file-system'] = array( 'title' => 'File system', @@ -553,7 +537,6 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_file_system_settings'), 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/settings/image-toolkit'] = array( 'title' => 'Image toolkit', @@ -561,7 +544,6 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_image_toolkit_settings'), 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/content/rss-publishing'] = array( 'title' => 'RSS publishing', @@ -569,7 +551,6 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_rss_feeds_settings'), 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/settings/date-time'] = array( 'title' => 'Date and time', @@ -577,14 +558,12 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_date_time_settings'), 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/settings/date-time/lookup'] = array( 'title' => 'Date and time lookup', 'type' => MENU_CALLBACK, 'page callback' => 'system_date_time_lookup', 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/settings/site-maintenance'] = array( 'title' => 'Site maintenance', @@ -592,7 +571,6 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_site_maintenance_settings'), 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/settings/clean-urls'] = array( 'title' => 'Clean URLs', @@ -600,7 +578,6 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_clean_url_settings'), 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/settings/clean-urls/check'] = array( 'title' => 'Clean URL check', @@ -627,7 +604,6 @@ function system_menu() { 'access arguments' => array('access site reports'), 'weight' => 5, 'position' => 'left', - 'file' => 'system.admin.inc', ); $items['admin/reports/status'] = array( 'title' => 'Status report', @@ -635,35 +611,30 @@ function system_menu() { 'page callback' => 'system_status', 'weight' => 10, 'access arguments' => array('administer site configuration'), - 'file' => 'system.admin.inc', ); $items['admin/reports/status/run-cron'] = array( 'title' => 'Run cron', 'page callback' => 'system_run_cron', 'access arguments' => array('administer site configuration'), 'type' => MENU_CALLBACK, - 'file' => 'system.admin.inc', ); $items['admin/reports/status/php'] = array( 'title' => 'PHP', 'page callback' => 'system_php', 'access arguments' => array('administer site configuration'), 'type' => MENU_CALLBACK, - 'file' => 'system.admin.inc', ); $items['admin/reports/status/sql'] = array( 'title' => 'SQL', 'page callback' => 'system_sql', 'access arguments' => array('administer site configuration'), 'type' => MENU_CALLBACK, - 'file' => 'system.admin.inc', ); // Default page for batch operations $items['batch'] = array( 'page callback' => 'system_batch_page', 'access callback' => TRUE, 'type' => MENU_CALLBACK, - 'file' => 'system.admin.inc', ); return $items; } diff --git a/modules/taxonomy/taxonomy.info b/modules/taxonomy/taxonomy.info index c7a93e3509cb..df213cefb485 100644 --- a/modules/taxonomy/taxonomy.info +++ b/modules/taxonomy/taxonomy.info @@ -4,3 +4,6 @@ description = Enables the categorization of content. package = Core - optional version = VERSION core = 7.x +files[] = taxonomy.module +files[] = taxonomy.admin.inc +files[] = taxonomy.pages.inc diff --git a/modules/taxonomy/taxonomy.module b/modules/taxonomy/taxonomy.module index 77b90f883ab8..56f15b1191cc 100644 --- a/modules/taxonomy/taxonomy.module +++ b/modules/taxonomy/taxonomy.module @@ -117,7 +117,6 @@ function taxonomy_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('taxonomy_overview_vocabularies'), 'access arguments' => array('administer taxonomy'), - 'file' => 'taxonomy.admin.inc', ); $items['admin/content/taxonomy/list'] = array( @@ -133,7 +132,6 @@ function taxonomy_menu() { 'access arguments' => array('administer taxonomy'), 'type' => MENU_LOCAL_TASK, 'parent' => 'admin/content/taxonomy', - 'file' => 'taxonomy.admin.inc', ); $items['admin/content/taxonomy/edit/vocabulary/%taxonomy_vocabulary'] = array( @@ -142,7 +140,6 @@ function taxonomy_menu() { 'page arguments' => array(5), 'access arguments' => array('administer taxonomy'), 'type' => MENU_CALLBACK, - 'file' => 'taxonomy.admin.inc', ); $items['admin/content/taxonomy/edit/term'] = array( @@ -150,7 +147,6 @@ function taxonomy_menu() { 'page callback' => 'taxonomy_admin_term_edit', 'access arguments' => array('administer taxonomy'), 'type' => MENU_CALLBACK, - 'file' => 'taxonomy.admin.inc', ); $items['taxonomy/term/%'] = array( @@ -159,7 +155,6 @@ function taxonomy_menu() { 'page arguments' => array(2), 'access arguments' => array('access content'), 'type' => MENU_CALLBACK, - 'file' => 'taxonomy.pages.inc', ); $items['taxonomy/autocomplete'] = array( @@ -167,7 +162,6 @@ function taxonomy_menu() { 'page callback' => 'taxonomy_autocomplete', 'access arguments' => array('access content'), 'type' => MENU_CALLBACK, - 'file' => 'taxonomy.pages.inc', ); $items['admin/content/taxonomy/%taxonomy_vocabulary'] = array( 'title' => 'List terms', @@ -175,7 +169,6 @@ function taxonomy_menu() { 'page arguments' => array('taxonomy_overview_terms', 3), 'access arguments' => array('administer taxonomy'), 'type' => MENU_CALLBACK, - 'file' => 'taxonomy.admin.inc', ); $items['admin/content/taxonomy/%taxonomy_vocabulary/list'] = array( @@ -191,7 +184,6 @@ function taxonomy_menu() { 'access arguments' => array('administer taxonomy'), 'type' => MENU_LOCAL_TASK, 'parent' => 'admin/content/taxonomy/%taxonomy_vocabulary', - 'file' => 'taxonomy.admin.inc', ); return $items; diff --git a/modules/tracker/tracker.info b/modules/tracker/tracker.info index 37c1be304ddf..18fc939a2756 100644 --- a/modules/tracker/tracker.info +++ b/modules/tracker/tracker.info @@ -5,3 +5,5 @@ dependencies[] = comment package = Core - optional version = VERSION core = 7.x +files[] = tracker.module +files[] = tracker.pages.inc diff --git a/modules/tracker/tracker.module b/modules/tracker/tracker.module index e11d8a9830c6..0044bd480174 100644 --- a/modules/tracker/tracker.module +++ b/modules/tracker/tracker.module @@ -28,7 +28,6 @@ function tracker_menu() { 'page callback' => 'tracker_page', 'access arguments' => array('access content'), 'weight' => 1, - 'file' => 'tracker.pages.inc', ); $items['tracker/all'] = array( 'title' => 'All recent posts', @@ -49,7 +48,6 @@ function tracker_menu() { 'access callback' => '_tracker_user_access', 'access arguments' => array(1), 'type' => MENU_LOCAL_TASK, - 'file' => 'tracker.pages.inc', ); $items['user/%user/track/posts'] = array( 'title' => 'Track posts', diff --git a/modules/translation/translation.info b/modules/translation/translation.info index 87ccf945a87b..dd5d0f4f468a 100644 --- a/modules/translation/translation.info +++ b/modules/translation/translation.info @@ -5,3 +5,5 @@ dependencies[] = locale package = Core - optional version = VERSION core = 7.x +files[] = translation.module +files[] = translation.pages.inc diff --git a/modules/translation/translation.module b/modules/translation/translation.module index 9467440184eb..79a542ac85f0 100644 --- a/modules/translation/translation.module +++ b/modules/translation/translation.module @@ -63,7 +63,6 @@ function translation_menu() { 'access arguments' => array(1), 'type' => MENU_LOCAL_TASK, 'weight' => 2, - 'file' => 'translation.pages.inc', ); return $items; } diff --git a/modules/trigger/trigger.info b/modules/trigger/trigger.info index bc333940be18..69566095f4db 100644 --- a/modules/trigger/trigger.info +++ b/modules/trigger/trigger.info @@ -4,3 +4,5 @@ description = Enables actions to be fired on certain system events, such as when package = Core - optional version = VERSION core = 7.x +files[] = trigger.module +files[] = trigger.admin.inc diff --git a/modules/trigger/trigger.module b/modules/trigger/trigger.module index 9be132ca5712..d3d900fadda5 100644 --- a/modules/trigger/trigger.module +++ b/modules/trigger/trigger.module @@ -41,7 +41,6 @@ function trigger_menu() { 'page callback' => 'trigger_assign', 'access callback' => 'trigger_access_check', 'access arguments' => array('node'), - 'file' => 'trigger.admin.inc', ); // We don't use a menu wildcard here because these are tabs, // not invisible items. @@ -52,7 +51,6 @@ function trigger_menu() { 'access callback' => 'trigger_access_check', 'access arguments' => array('node'), 'type' => MENU_LOCAL_TASK, - 'file' => 'trigger.admin.inc', ); $items['admin/build/trigger/user'] = array( 'title' => 'Users', @@ -61,7 +59,6 @@ function trigger_menu() { 'access callback' => 'trigger_access_check', 'access arguments' => array('user'), 'type' => MENU_LOCAL_TASK, - 'file' => 'trigger.admin.inc', ); $items['admin/build/trigger/comment'] = array( 'title' => 'Comments', @@ -70,7 +67,6 @@ function trigger_menu() { 'access callback' => 'trigger_access_check', 'access arguments' => array('comment'), 'type' => MENU_LOCAL_TASK, - 'file' => 'trigger.admin.inc', ); $items['admin/build/trigger/taxonomy'] = array( 'title' => 'Taxonomy', @@ -79,7 +75,6 @@ function trigger_menu() { 'access callback' => 'trigger_access_check', 'access arguments' => array('taxonomy'), 'type' => MENU_LOCAL_TASK, - 'file' => 'trigger.admin.inc', ); $items['admin/build/trigger/cron'] = array( 'title' => 'Cron', @@ -87,7 +82,6 @@ function trigger_menu() { 'page arguments' => array('cron'), 'access arguments' => array('administer actions'), 'type' => MENU_LOCAL_TASK, - 'file' => 'trigger.admin.inc', ); // We want contributed modules to be able to describe @@ -107,7 +101,6 @@ function trigger_menu() { 'page arguments' => array($module), 'access arguments' => array($module), 'type' => MENU_LOCAL_TASK, - 'file' => 'trigger.admin.inc', ); } $items['admin/build/trigger/unassign'] = array( @@ -117,7 +110,6 @@ function trigger_menu() { 'page arguments' => array('trigger_unassign'), 'access arguments' => array('administer actions'), 'type' => MENU_CALLBACK, - 'file' => 'trigger.admin.inc', ); return $items; diff --git a/modules/update/update.info b/modules/update/update.info index 1df3eda4c6e3..0165525473fe 100644 --- a/modules/update/update.info +++ b/modules/update/update.info @@ -4,3 +4,8 @@ description = Checks the status of available updates for Drupal and your install version = VERSION package = Core - optional core = 7.x +files[] = update.module +files[] = update.compare.inc +files[] = update.fetch.inc +files[] = update.report.inc +files[] = update.settings.inc diff --git a/modules/update/update.module b/modules/update/update.module index 92a8ca586f75..d3e60ce69e65 100644 --- a/modules/update/update.module +++ b/modules/update/update.module @@ -121,14 +121,12 @@ function update_menu() { 'description' => 'Get a status report about available updates for your installed modules and themes.', 'page callback' => 'update_status', 'access arguments' => array('administer site configuration'), - 'file' => 'update.report.inc', 'weight' => 10, ); $items['admin/reports/updates/list'] = array( 'title' => 'List', 'page callback' => 'update_status', 'access arguments' => array('administer site configuration'), - 'file' => 'update.report.inc', 'type' => MENU_DEFAULT_LOCAL_TASK, ); $items['admin/reports/updates/settings'] = array( @@ -136,14 +134,12 @@ function update_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('update_settings'), 'access arguments' => array('administer site configuration'), - 'file' => 'update.settings.inc', 'type' => MENU_LOCAL_TASK, ); $items['admin/reports/updates/check'] = array( 'title' => 'Manual update check', 'page callback' => 'update_manual_status', 'access arguments' => array('administer site configuration'), - 'file' => 'update.fetch.inc', 'type' => MENU_CALLBACK, ); diff --git a/modules/upload/upload.info b/modules/upload/upload.info index 2b2a948263cb..aaae110d4606 100644 --- a/modules/upload/upload.info +++ b/modules/upload/upload.info @@ -4,3 +4,5 @@ description = Allows users to upload and attach files to content. package = Core - optional version = VERSION core = 7.x +files[] = upload.module +files[] = upload.admin.inc diff --git a/modules/upload/upload.module b/modules/upload/upload.module index d300a13d327f..431d5bf00965 100644 --- a/modules/upload/upload.module +++ b/modules/upload/upload.module @@ -92,7 +92,6 @@ function upload_menu() { 'page arguments' => array('upload_admin_settings'), 'access arguments' => array('administer site configuration'), 'type' => MENU_NORMAL_ITEM, - 'file' => 'upload.admin.inc', ); return $items; } diff --git a/modules/user/user.info b/modules/user/user.info index fb382ebe6ef1..c7ac1b73705a 100644 --- a/modules/user/user.info +++ b/modules/user/user.info @@ -4,3 +4,6 @@ description = Manages the user registration and login system. package = Core - required version = VERSION core = 7.x +files[] = user.module +files[] = user.admin.inc +files[] = user.pages.inc diff --git a/modules/user/user.module b/modules/user/user.module index 2b1414c5921c..3fa75e296bf1 100644 --- a/modules/user/user.module +++ b/modules/user/user.module @@ -852,7 +852,6 @@ function user_menu() { 'access callback' => 'user_access', 'access arguments' => array('access user profiles'), 'type' => MENU_CALLBACK, - 'file' => 'user.pages.inc', ); // Registration and login pages. @@ -861,7 +860,6 @@ function user_menu() { 'page callback' => 'user_page', 'access callback' => TRUE, 'type' => MENU_CALLBACK, - 'file' => 'user.pages.inc', ); $items['user/login'] = array( @@ -876,7 +874,6 @@ function user_menu() { 'page arguments' => array('user_register'), 'access callback' => 'user_register_access', 'type' => MENU_LOCAL_TASK, - 'file' => 'user.pages.inc', ); $items['user/password'] = array( @@ -885,7 +882,6 @@ function user_menu() { 'page arguments' => array('user_pass'), 'access callback' => 'user_is_anonymous', 'type' => MENU_LOCAL_TASK, - 'file' => 'user.pages.inc', ); $items['user/reset/%/%/%'] = array( 'title' => 'Reset password', @@ -893,7 +889,6 @@ function user_menu() { 'page arguments' => array('user_pass_reset', 2, 3, 4), 'access callback' => TRUE, 'type' => MENU_CALLBACK, - 'file' => 'user.pages.inc', ); // User administration pages. @@ -903,8 +898,6 @@ function user_menu() { 'position' => 'left', 'page callback' => 'system_admin_menu_block_page', 'access arguments' => array('access administration pages'), - 'file' => 'system.admin.inc', - 'file path' => drupal_get_path('module', 'system'), ); $items['admin/user/user'] = array( 'title' => 'Users', @@ -912,7 +905,6 @@ function user_menu() { 'page callback' => 'user_admin', 'page arguments' => array('list'), 'access arguments' => array('administer users'), - 'file' => 'user.admin.inc', ); $items['admin/user/user/list'] = array( 'title' => 'List', @@ -924,7 +916,6 @@ function user_menu() { 'page arguments' => array('create'), 'access arguments' => array('administer users'), 'type' => MENU_LOCAL_TASK, - 'file' => 'user.admin.inc', ); $items['admin/user/settings'] = array( 'title' => 'User settings', @@ -932,7 +923,6 @@ function user_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('user_admin_settings'), 'access arguments' => array('administer users'), - 'file' => 'user.admin.inc', ); // Permission administration pages. @@ -942,7 +932,6 @@ function user_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('user_admin_perm'), 'access arguments' => array('administer permissions'), - 'file' => 'user.admin.inc', ); $items['admin/user/roles'] = array( 'title' => 'Roles', @@ -950,14 +939,12 @@ function user_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('user_admin_new_role'), 'access arguments' => array('administer permissions'), - 'file' => 'user.admin.inc', ); $items['admin/user/roles/edit'] = array( 'title' => 'Edit role', 'page arguments' => array('user_admin_role'), 'access arguments' => array('administer permissions'), 'type' => MENU_CALLBACK, - 'file' => 'user.admin.inc', ); $items['logout'] = array( @@ -965,7 +952,6 @@ function user_menu() { 'access callback' => 'user_is_logged_in', 'page callback' => 'user_logout', 'weight' => 10, - 'file' => 'user.pages.inc', ); $items['user/%user_uid_optional'] = array( @@ -977,7 +963,6 @@ function user_menu() { 'access callback' => 'user_view_access', 'access arguments' => array(1), 'parent' => '', - 'file' => 'user.pages.inc', ); $items['user/%user/view'] = array( @@ -993,7 +978,6 @@ function user_menu() { 'access callback' => 'user_access', 'access arguments' => array('administer users'), 'type' => MENU_CALLBACK, - 'file' => 'user.pages.inc', ); $items['user/%user_category/edit'] = array( @@ -1004,7 +988,6 @@ function user_menu() { 'access arguments' => array(1), 'type' => MENU_LOCAL_TASK, 'load arguments' => array('%map', '%index'), - 'file' => 'user.pages.inc', ); $items['user/%user_category/edit/account'] = array( @@ -1029,7 +1012,6 @@ function user_menu() { 'weight' => $category['weight'], 'load arguments' => array('%map', '%index'), 'tab_parent' => 'user/%/edit', - 'file' => 'user.pages.inc', ); } } -- GitLab