diff options
Diffstat (limited to 'modules')
53 files changed, 476 insertions, 218 deletions
diff --git a/modules/aggregator/aggregator.admin.inc b/modules/aggregator/aggregator.admin.inc index b6361aba6..c425c6d3c 100644 --- a/modules/aggregator/aggregator.admin.inc +++ b/modules/aggregator/aggregator.admin.inc @@ -391,7 +391,6 @@ function aggregator_admin_refresh_feed($feed) { * @ingroup forms */ function aggregator_admin_form($form_state) { - // Make sure configuration is sane. aggregator_sanitize_configuration(); diff --git a/modules/aggregator/aggregator.fetcher.inc b/modules/aggregator/aggregator.fetcher.inc index fcad26578..8798796b7 100644 --- a/modules/aggregator/aggregator.fetcher.inc +++ b/modules/aggregator/aggregator.fetcher.inc @@ -34,7 +34,6 @@ function aggregator_aggregator_fetch($feed) { // Request feed. $result = drupal_http_request($feed->url, array('headers' => $headers)); - // Process HTTP response code. switch ($result->code) { case 304: diff --git a/modules/aggregator/aggregator.module b/modules/aggregator/aggregator.module index a95c64bed..89664ceec 100644 --- a/modules/aggregator/aggregator.module +++ b/modules/aggregator/aggregator.module @@ -91,6 +91,7 @@ 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/settings/aggregator/add/feed'] = array( 'title' => 'Add feed', @@ -99,6 +100,7 @@ function aggregator_menu() { 'access arguments' => array('administer news feeds'), 'type' => MENU_LOCAL_ACTION, 'parent' => 'admin/settings/aggregator', + 'file' => 'aggregator.admin.inc', ); $items['admin/settings/aggregator/add/category'] = array( 'title' => 'Add category', @@ -107,6 +109,7 @@ function aggregator_menu() { 'access arguments' => array('administer news feeds'), 'type' => MENU_LOCAL_ACTION, 'parent' => 'admin/settings/aggregator', + 'file' => 'aggregator.admin.inc', ); $items['admin/settings/aggregator/add/opml'] = array( 'title' => 'Import OPML', @@ -115,6 +118,7 @@ function aggregator_menu() { 'access arguments' => array('administer news feeds'), 'type' => MENU_LOCAL_ACTION, 'parent' => 'admin/settings/aggregator', + 'file' => 'aggregator.admin.inc', ); $items['admin/settings/aggregator/remove/%aggregator_feed'] = array( 'title' => 'Remove items', @@ -122,6 +126,7 @@ 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/settings/aggregator/update/%aggregator_feed'] = array( 'title' => 'Update items', @@ -129,6 +134,7 @@ function aggregator_menu() { 'page arguments' => array(4), 'access arguments' => array('administer news feeds'), 'type' => MENU_CALLBACK, + 'file' => 'aggregator.admin.inc', ); $items['admin/settings/aggregator/list'] = array( 'title' => 'List', @@ -141,34 +147,40 @@ function aggregator_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('aggregator_admin_form'), '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', @@ -177,6 +189,7 @@ 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', @@ -189,6 +202,7 @@ 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', @@ -197,12 +211,14 @@ 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', @@ -215,6 +231,7 @@ 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', @@ -223,6 +240,7 @@ function aggregator_menu() { 'access arguments' => array('administer news feeds'), 'type' => MENU_LOCAL_TASK, 'weight' => 1, + 'file' => 'aggregator.admin.inc', ); $items['admin/settings/aggregator/edit/feed/%aggregator_feed'] = array( 'title' => 'Edit feed', @@ -230,6 +248,7 @@ 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/settings/aggregator/edit/category/%aggregator_category'] = array( 'title' => 'Edit category', @@ -237,6 +256,7 @@ 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; @@ -514,6 +534,7 @@ function aggregator_save_feed($edit) { * An object describing the feed to be cleared. */ function aggregator_remove($feed) { + _aggregator_get_variables(); // Call hook_aggregator_remove() on all modules. module_invoke_all('aggregator_remove', $feed); // Reset feed. @@ -530,6 +551,23 @@ function aggregator_remove($feed) { ->execute(); } +function _aggregator_get_variables() { + // Fetch the feed. + $fetcher = variable_get('aggregator_fetcher', 'aggregator'); + if ($fetcher == 'aggregator') { + include_once DRUPAL_ROOT . '/' . drupal_get_path('module', 'aggregator') . '/aggregator.fetcher.inc'; + } + $parser = variable_get('aggregator_parser', 'aggregator'); + if ($parser == 'aggregator') { + include_once DRUPAL_ROOT . '/' . drupal_get_path('module', 'aggregator') . '/aggregator.parser.inc'; + } + $processors = variable_get('aggregator_processors', array('aggregator')); + if (in_array('aggregator', $processors)) { + include_once DRUPAL_ROOT . '/' . drupal_get_path('module', 'aggregator') . '/aggregator.processor.inc'; + } + return array($fetcher, $parser, $processors); +} + /** * Checks a news feed for new items. * @@ -537,25 +575,22 @@ function aggregator_remove($feed) { * An object describing the feed to be refreshed. */ function aggregator_refresh($feed) { - // Fetch the feed. - $fetcher = variable_get('aggregator_fetcher', 'aggregator'); + list($fetcher, $parser, $processors) = _aggregator_get_variables(); module_invoke($fetcher, 'aggregator_fetch', $feed); if ($feed->source_string !== FALSE) { // Parse the feed. - $parser = variable_get('aggregator_parser', 'aggregator'); module_invoke($parser, 'aggregator_parse', $feed); // If there are items on the feed, let all enabled processors do their work on it. if (@count($feed->items)) { - $processors = variable_get('aggregator_processors', array('aggregator')); foreach ($processors as $processor) { module_invoke($processor, 'aggregator_process', $feed); } } } // Expire old feed items. - if (drupal_function_exists('aggregator_expire')) { + if (function_exists('aggregator_expire')) { aggregator_expire($feed); } } @@ -635,15 +670,13 @@ function aggregator_filter_xss($value) { */ function aggregator_sanitize_configuration() { $reset = FALSE; - $fetcher = variable_get('aggregator_fetcher', 'aggregator'); + list($fetcher, $parser, $processors) = _aggregator_get_variables(); if (!module_exists($fetcher)) { $reset = TRUE; } - $parser = variable_get('aggregator_parser', 'aggregator'); if (!module_exists($parser)) { $reset = TRUE; } - $processors = variable_get('aggregator_processors', array('aggregator')); foreach ($processors as $processor) { if (!module_exists($processor)) { $reset = TRUE; diff --git a/modules/block/block.module b/modules/block/block.module index 67119f072..6227927cd 100644 --- a/modules/block/block.module +++ b/modules/block/block.module @@ -125,6 +125,7 @@ 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/structure/block/list'] = array( 'title' => 'List', @@ -136,6 +137,7 @@ function block_menu() { 'page callback' => 'block_admin_display_js', 'access arguments' => array('administer blocks'), 'type' => MENU_CALLBACK, + 'file' => 'block.admin.inc', ); $items['admin/structure/block/configure'] = array( 'title' => 'Configure block', @@ -143,6 +145,7 @@ function block_menu() { 'page arguments' => array('block_admin_configure'), 'access arguments' => array('administer blocks'), 'type' => MENU_CALLBACK, + 'file' => 'block.admin.inc', ); $items['admin/structure/block/delete'] = array( 'title' => 'Delete block', @@ -150,6 +153,7 @@ function block_menu() { 'page arguments' => array('block_box_delete'), 'access arguments' => array('administer blocks'), 'type' => MENU_CALLBACK, + 'file' => 'block.admin.inc', ); $items['admin/structure/block/add'] = array( 'title' => 'Add block', @@ -157,6 +161,7 @@ function block_menu() { 'page arguments' => array('block_add_block_form'), 'access arguments' => array('administer blocks'), 'type' => MENU_LOCAL_ACTION, + 'file' => 'block.admin.inc', ); $default = variable_get('theme_default', 'garland'); foreach (list_themes() as $key => $theme) { @@ -167,6 +172,7 @@ function block_menu() { 'weight' => $key == $default ? -10 : 0, 'access callback' => '_block_themes_access', 'access arguments' => array($theme), + 'file' => 'block.admin.inc', ); } return $items; diff --git a/modules/blog/blog.module b/modules/blog/blog.module index 1c43261a1..735678832 100644 --- a/modules/blog/blog.module +++ b/modules/blog/blog.module @@ -94,6 +94,7 @@ 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', @@ -101,6 +102,7 @@ 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', @@ -109,12 +111,14 @@ 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.test b/modules/blogapi/blogapi.test index 9a57be643..18a72f218 100644 --- a/modules/blogapi/blogapi.test +++ b/modules/blogapi/blogapi.test @@ -12,9 +12,6 @@ class BlogAPITestCase extends DrupalWebTestCase { function setUp() { parent::setUp('blog', 'blogapi', 'taxonomy'); - - // Force loading the xmlrpc.inc to have the xmlrpc() function. - drupal_function_exists('xmlrpc'); } /** diff --git a/modules/book/book.module b/modules/book/book.module index 4e5ac9597..fa433fd4c 100644 --- a/modules/book/book.module +++ b/modules/book/book.module @@ -105,6 +105,7 @@ function book_menu() { 'page callback' => 'book_admin_overview', 'access arguments' => array('administer book outlines'), 'type' => MENU_LOCAL_TASK, + 'file' => 'book.admin.inc', ); $items['admin/content/book/list'] = array( 'title' => 'List', @@ -117,6 +118,7 @@ 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', @@ -125,18 +127,21 @@ 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', @@ -146,6 +151,7 @@ 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', @@ -154,11 +160,13 @@ 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/comment/comment.module b/modules/comment/comment.module index 41c621945..010c84742 100644 --- a/modules/comment/comment.module +++ b/modules/comment/comment.module @@ -133,6 +133,7 @@ function comment_menu() { 'page callback' => 'comment_admin', 'access arguments' => array('administer comments'), 'type' => MENU_LOCAL_TASK, + 'file' => 'comment.admin.inc', ); // Tabs begin here. $items['admin/content/comment/new'] = array( @@ -151,6 +152,7 @@ function comment_menu() { 'page callback' => 'comment_delete_page', 'access arguments' => array('administer comments'), 'type' => MENU_CALLBACK, + 'file' => 'comment.admin.inc', ); $items['comment/edit/%comment'] = array( 'title' => 'Edit comment', @@ -167,6 +169,7 @@ function comment_menu() { 'access callback' => 'node_access', 'access arguments' => array('view', 2), 'type' => MENU_CALLBACK, + 'file' => 'comment.pages.inc', ); $items['comment/approve'] = array( 'title' => 'Approve a comment', @@ -174,6 +177,7 @@ function comment_menu() { 'page arguments' => array(2), 'access arguments' => array('administer comments'), 'type' => MENU_CALLBACK, + 'file' => 'comment.pages.inc', ); $items['comment/%comment'] = array( 'title' => 'Comment permalink', diff --git a/modules/contact/contact.module b/modules/contact/contact.module index 0274940fa..a0e6eab75 100644 --- a/modules/contact/contact.module +++ b/modules/contact/contact.module @@ -57,11 +57,13 @@ 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/structure/contact/list'] = array( 'title' => 'List', 'page callback' => 'contact_admin_categories', 'type' => MENU_DEFAULT_LOCAL_TASK, + 'file' => 'contact.admin.inc', ); $items['admin/structure/contact/add'] = array( 'title' => 'Add category', @@ -70,6 +72,7 @@ function contact_menu() { 'access arguments' => array('administer site-wide contact form'), 'type' => MENU_LOCAL_ACTION, 'weight' => 1, + 'file' => 'contact.admin.inc', ); $items['admin/structure/contact/edit/%contact'] = array( 'title' => 'Edit contact category', @@ -77,6 +80,7 @@ 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/structure/contact/delete/%contact'] = array( 'title' => 'Delete contact', @@ -84,6 +88,7 @@ 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/settings/contact'] = array( 'title' => 'Contact form', @@ -91,12 +96,14 @@ function contact_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('contact_admin_settings'), 'access arguments' => array('administer site-wide contact form'), + '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', @@ -106,6 +113,7 @@ function contact_menu() { 'access callback' => '_contact_personal_tab_access', 'access arguments' => array(1), 'weight' => 2, + 'file' => 'contact.pages.inc', ); return $items; } diff --git a/modules/dblog/dblog.admin.inc b/modules/dblog/dblog.admin.inc index 9623cc1e8..ed9b79857 100644 --- a/modules/dblog/dblog.admin.inc +++ b/modules/dblog/dblog.admin.inc @@ -7,20 +7,6 @@ */ /** - * Implement hook_form_FORM_ID_alter(). - */ -function dblog_form_system_logging_settings_alter(&$form, $form_state) { - $form['dblog_row_limit'] = array( - '#type' => 'select', - '#title' => t('Database log entries to keep'), - '#default_value' => variable_get('dblog_row_limit', 1000), - '#options' => drupal_map_assoc(array(100, 1000, 10000, 100000, 1000000)), - '#description' => t('The maximum number of entries to keep in the database log. Requires a <a href="@cron">cron maintenance task</a>.', array('@cron' => url('admin/reports/status'))) - ); - $form['buttons']['#weight'] = 1; -} - -/** * Menu callback; displays a listing of log messages. */ function dblog_overview() { @@ -93,9 +79,9 @@ function dblog_overview() { } $build['dblog_table'] = array( - '#theme' => 'table', - '#header' => $header, - '#rows' => $rows, + '#theme' => 'table', + '#header' => $header, + '#rows' => $rows, '#attributes' => array('id' => 'admin-dblog'), ); $build['dblog_pager'] = array('#theme' => 'pager'); @@ -139,8 +125,8 @@ function dblog_top($type) { } $build['dblog_top_table'] = array( - '#theme' => 'table', - '#header' => $header, + '#theme' => 'table', + '#header' => $header, '#rows' => $rows, ); $build['dblog_top_pager'] = array('#theme' => 'pager'); @@ -194,8 +180,8 @@ function dblog_event($id) { ), ); $build['dblog_table'] = array( - '#theme' => 'table', - '#rows' => $rows, + '#theme' => 'table', + '#rows' => $rows, '#attributes' => array('class' => array('dblog-event')), ); return $build; diff --git a/modules/dblog/dblog.module b/modules/dblog/dblog.module index 761d76acf..28f7d2f43 100644 --- a/modules/dblog/dblog.module +++ b/modules/dblog/dblog.module @@ -48,6 +48,7 @@ function dblog_menu() { '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", @@ -55,6 +56,7 @@ 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", @@ -62,6 +64,7 @@ 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', @@ -69,6 +72,7 @@ function dblog_menu() { 'page arguments' => array(3), 'access arguments' => array('access site reports'), 'type' => MENU_CALLBACK, + 'file' => 'dblog.admin.inc', ); return $items; } @@ -149,6 +153,20 @@ function dblog_watchdog(array $log_entry) { } /** + * Implement hook_form_FORM_ID_alter(). + */ +function dblog_form_system_logging_settings_alter(&$form, $form_state) { + $form['dblog_row_limit'] = array( + '#type' => 'select', + '#title' => t('Database log entries to keep'), + '#default_value' => variable_get('dblog_row_limit', 1000), + '#options' => drupal_map_assoc(array(100, 1000, 10000, 100000, 1000000)), + '#description' => t('The maximum number of entries to keep in the database log. Requires a <a href="@cron">cron maintenance task</a>.', array('@cron' => url('admin/reports/status'))) + ); + $form['buttons']['#weight'] = 1; +} + +/** * Theme dblog administration filter selector. * * @ingroup themeable diff --git a/modules/field/field.attach.inc b/modules/field/field.attach.inc index 51ee56b1f..f5f5de5b0 100644 --- a/modules/field/field.attach.inc +++ b/modules/field/field.attach.inc @@ -207,7 +207,7 @@ function _field_invoke($op, $obj_type, $object, &$a = NULL, &$b = NULL, $options // Invoke the field hook and collect results. $function = $options['default'] ? 'field_default_' . $op : $field['module'] . '_field_' . $op; - if (drupal_function_exists($function)) { + if (function_exists($function)) { // Iterate over all the field translations. foreach ($field_translations as $langcode => $items) { $result = $function($obj_type, $object, $field, $instance, $langcode, $items, $a, $b); @@ -336,7 +336,7 @@ function _field_invoke_multiple($op, $obj_type, $objects, &$a = NULL, &$b = NULL foreach ($fields as $field_id => $field) { $field_name = $field['field_name']; $function = $options['default'] ? 'field_default_' . $op : $field['module'] . '_field_' . $op; - if (drupal_function_exists($function)) { + if (function_exists($function)) { // Iterate over all the field translations. foreach ($grouped_items[$field_id] as $langcode => $items) { $results = $function($obj_type, $grouped_objects[$field_id], $field, $grouped_instances[$field_id], $langcode, $grouped_items[$field_id][$langcode], $options, $a, $b); diff --git a/modules/field/field.form.inc b/modules/field/field.form.inc index 088642daf..937b6d226 100644 --- a/modules/field/field.form.inc +++ b/modules/field/field.form.inc @@ -56,7 +56,7 @@ function field_default_form($obj_type, $object, $field, $instance, $langcode, $i else { $delta = isset($get_delta) ? $get_delta : 0; $function = $instance['widget']['module'] . '_field_widget'; - if (drupal_function_exists($function)) { + if (function_exists($function)) { if ($element = $function($form, $form_state, $field, $instance, $items, $delta)) { $defaults = array( '#required' => $get_delta > 0 ? FALSE : $instance['required'], @@ -155,7 +155,7 @@ function field_multiple_value_form($field, $instance, $langcode, $items, &$form, ); $function = $instance['widget']['module'] . '_field_widget'; - if (drupal_function_exists($function)) { + if (function_exists($function)) { for ($delta = 0; $delta <= $max; $delta++) { if ($element = $function($form, $form_state, $field, $instance, $items, $delta)) { $multiple = $field['cardinality'] > 1 || $field['cardinality'] == FIELD_CARDINALITY_UNLIMITED; @@ -295,7 +295,7 @@ function field_default_form_errors($obj_type, $object, $field, $instance, $langc $field_name = $field['field_name']; if (!empty($errors[$field_name][$langcode])) { $function = $instance['widget']['module'] . '_field_widget_error'; - $function_exists = drupal_function_exists($function); + $function_exists = function_exists($function); // Walk the form down to where the widget lives. $form_path = $form['#fields'][$field_name]['form_path']; @@ -330,7 +330,7 @@ function field_default_form_errors($obj_type, $object, $field, $instance, $langc */ function field_add_more_submit($form, &$form_state) { // Set the form to rebuild and run submit handlers. - if (isset($form['#builder_function']) && drupal_function_exists($form['#builder_function'])) { + if (isset($form['#builder_function']) && function_exists($form['#builder_function'])) { $entity = $form['#builder_function']($form, $form_state); // Make the changes we want to the form state. diff --git a/modules/field/field.module b/modules/field/field.module index f73acc360..5781ae116 100644 --- a/modules/field/field.module +++ b/modules/field/field.module @@ -11,9 +11,11 @@ * every page request. */ require(DRUPAL_ROOT . '/modules/field/field.crud.inc'); +require(DRUPAL_ROOT . '/modules/field/field.default.inc'); require(DRUPAL_ROOT . '/modules/field/field.info.inc'); require(DRUPAL_ROOT . '/modules/field/field.multilingual.inc'); require(DRUPAL_ROOT . '/modules/field/field.attach.inc'); +require(DRUPAL_ROOT . '/modules/field/field.form.inc'); /** * @defgroup field Field API @@ -164,6 +166,7 @@ function field_menu() { 'page callback' => 'field_add_more_js', 'access arguments' => array('access content'), 'type' => MENU_CALLBACK, + 'file' => 'field.form.inc', ); return $items; @@ -289,7 +292,7 @@ function field_get_default_value($obj_type, $object, $field, $instance, $langcod $items = array(); if (!empty($instance['default_value_function'])) { $function = $instance['default_value_function']; - if (drupal_function_exists($function)) { + if (function_exists($function)) { $items = $function($obj_type, $object, $field, $instance, $langcode); } } @@ -315,7 +318,7 @@ function field_get_default_value($obj_type, $object, $field, $instance, $langcod function field_set_empty($field, $items) { $function = $field['module'] . '_field_is_empty'; // We ensure the function is loaded, but explicitly break if it is missing. - drupal_function_exists($function); + function_exists($function); foreach ((array) $items as $delta => $item) { if ($function($item, $field)) { unset($items[$delta]); @@ -601,7 +604,7 @@ function field_view_field($obj_type, $object, $field, $instance, $build_mode = ' // One-field equivalent to _field_invoke('sanitize'). $function = $field['module'] . '_field_sanitize'; - if (drupal_function_exists($function)) { + if (function_exists($function)) { $function($obj_type, $object, $field, $instance, $items); $object->$field['field_name'] = $items; } @@ -723,4 +726,4 @@ function template_preprocess_field(&$variables) { /** * @} End of "defgroup field" - */
\ No newline at end of file + */ diff --git a/modules/field/modules/list/list.module b/modules/field/modules/list/list.module index ad1335df0..4f9fbe917 100644 --- a/modules/field/modules/list/list.module +++ b/modules/field/modules/list/list.module @@ -151,7 +151,7 @@ function list_allowed_values($field) { $allowed_values[$field['field_name']] = array(); $function = $field['settings']['allowed_values_function']; - if (!empty($function) && drupal_function_exists($function)) { + if (!empty($function) && function_exists($function)) { $allowed_values[$field['field_name']] = $function($field); } elseif (!empty($field['settings']['allowed_values'])) { diff --git a/modules/field_ui/field_ui.admin.inc b/modules/field_ui/field_ui.admin.inc index eec5cb525..bb7c01669 100644 --- a/modules/field_ui/field_ui.admin.inc +++ b/modules/field_ui/field_ui.admin.inc @@ -1205,7 +1205,7 @@ function field_ui_default_value_widget($field, $instance, &$form, &$form_state) 'instance' => $instance, ), ); - drupal_function_exists('field_default_form'); + function_exists('field_default_form'); // @todo Allow multiple values (requires more work on 'add more' JS handler). $widget_form = field_default_form(NULL, NULL, $field, $instance, FIELD_LANGUAGE_NONE, $items, $form, $form_state, 0); $form['instance']['default_value_widget'] += $widget_form; @@ -1257,7 +1257,7 @@ function field_ui_field_edit_form_validate($form, &$form_state) { // Widget now does its own validation, should be no need to add anything // for widget validation here. - if (drupal_function_exists($field_function)) { + if (function_exists($field_function)) { $field_function('validate', $node, $field, $default_value, $form, NULL); } // The field validation routine won't set an error on the right field, so diff --git a/modules/field_ui/field_ui.module b/modules/field_ui/field_ui.module index 00db4681c..3a26c8392 100644 --- a/modules/field_ui/field_ui.module +++ b/modules/field_ui/field_ui.module @@ -38,6 +38,7 @@ function field_ui_menu() { 'page callback' => 'field_ui_fields_list', 'access arguments' => array('administer content types'), 'type' => MENU_NORMAL_ITEM, + 'file' => 'field_ui.admin.inc', ); // Ensure the following is not executed until field_bundles is working and @@ -60,6 +61,7 @@ function field_ui_menu() { 'page arguments' => array('field_ui_field_overview_form', $obj_type, $bundle_arg), 'type' => MENU_LOCAL_TASK, 'weight' => 1, + 'file' => 'field_ui.admin.inc', ) + $access; $instance_position = count(explode('/', $path)) + 1; $items["$path/fields/%field_ui_menu"] = array( @@ -69,6 +71,7 @@ function field_ui_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('field_ui_field_edit_form', $obj_type, $bundle_arg, $instance_position), 'type' => MENU_LOCAL_TASK, + 'file' => 'field_ui.admin.inc', ) + $access; $items["$path/fields/%field_ui_menu/edit"] = array( 'title' => 'Edit instance settings', @@ -76,6 +79,7 @@ function field_ui_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('field_ui_field_edit_form', $obj_type, $bundle_arg, $instance_position), 'type' => MENU_DEFAULT_LOCAL_TASK, + 'file' => 'field_ui.admin.inc', ) + $access; $items["$path/fields/%field_ui_menu/field-settings"] = array( 'title' => 'Edit field settings', @@ -83,6 +87,7 @@ function field_ui_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('field_ui_field_settings_form', $obj_type, $bundle_arg, $instance_position), 'type' => MENU_LOCAL_TASK, + 'file' => 'field_ui.admin.inc', ) + $access; $items["$path/fields/%field_ui_menu/widget-type"] = array( 'title' => 'Change widget type', @@ -90,6 +95,7 @@ function field_ui_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('field_ui_widget_type_form', $obj_type, $bundle_arg, $instance_position), 'type' => MENU_LOCAL_TASK, + 'file' => 'field_ui.admin.inc', ) + $access; $items["$path/fields/%field_ui_menu/delete"] = array( 'title' => 'Delete instance', @@ -97,6 +103,7 @@ function field_ui_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('field_ui_field_delete_form', $obj_type, $bundle_arg, $instance_position), 'type' => MENU_LOCAL_TASK, + 'file' => 'field_ui.admin.inc', ) + $access; // 'Display fields' tab and context secondary tabs. @@ -106,6 +113,7 @@ function field_ui_menu() { 'page arguments' => array('field_ui_display_overview_form', $obj_type, $bundle_arg), 'type' => MENU_LOCAL_TASK, 'weight' => 2, + 'file' => 'field_ui.admin.inc', ) + $access; $tabs = field_ui_build_modes_tabs($obj_type); foreach ($tabs as $key => $tab) { @@ -114,6 +122,7 @@ function field_ui_menu() { 'page arguments' => array('field_ui_display_overview_form', $obj_type, $bundle_arg, $key), 'type' => $key == 'basic' ? MENU_DEFAULT_LOCAL_TASK : MENU_LOCAL_TASK, 'weight' => $key == 'basic' ? 0 : 1, + 'file' => 'field_ui.admin.inc', ) + $access; } } diff --git a/modules/filter/filter.admin.inc b/modules/filter/filter.admin.inc index f827218a1..6f3257757 100644 --- a/modules/filter/filter.admin.inc +++ b/modules/filter/filter.admin.inc @@ -352,7 +352,7 @@ function filter_admin_configure(&$form_state, $format) { $form = array(); foreach ($list as $filter) { $filter_info = module_invoke($filter->module, 'filter_info'); - if (isset($filter_info[$filter->name]['settings callback']) && drupal_function_exists($filter_info[$filter->name]['settings callback'])) { + if (isset($filter_info[$filter->name]['settings callback']) && function_exists($filter_info[$filter->name]['settings callback'])) { $form_module = call_user_func($filter_info[$filter->name]['settings callback'], $format->format); } if (isset($form_module) && is_array($form_module)) { diff --git a/modules/filter/filter.module b/modules/filter/filter.module index 2dcbbd8af..32398ee6d 100644 --- a/modules/filter/filter.module +++ b/modules/filter/filter.module @@ -76,6 +76,7 @@ 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/formats/list'] = array( 'title' => 'List', @@ -87,6 +88,7 @@ function filter_menu() { 'access arguments' => array('administer filters'), 'type' => MENU_LOCAL_ACTION, 'weight' => 1, + 'file' => 'filter.admin.inc', ); $items['admin/settings/formats/delete'] = array( 'title' => 'Delete text format', @@ -94,12 +96,14 @@ 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/formats/%filter_format'] = array( 'type' => MENU_CALLBACK, @@ -108,6 +112,7 @@ 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/formats/%filter_format/edit'] = array( 'title' => 'Edit', @@ -121,6 +126,7 @@ function filter_menu() { 'access arguments' => array('administer filters'), 'type' => MENU_LOCAL_TASK, 'weight' => 1, + 'file' => 'filter.admin.inc', ); $items['admin/settings/formats/%filter_format/order'] = array( 'title' => 'Rearrange', @@ -129,6 +135,7 @@ function filter_menu() { 'access arguments' => array('administer filters'), 'type' => MENU_LOCAL_TASK, 'weight' => 2, + 'file' => 'filter.admin.inc', ); return $items; } @@ -259,7 +266,7 @@ function _filter_html_tips($format, $long = FALSE) { $output .= theme('table', $header, $rows); return $output; } - + else { return t('Allowed HTML tags: @tags', array('@tags' => $allowed_html)); } @@ -270,7 +277,7 @@ function _filter_autop_tips($format, $long = FALSE) { if ($long) { return t('Lines and paragraphs are automatically recognized. The <br /> line break, <p> paragraph and </p> close paragraph tags are inserted automatically. If paragraphs are not recognized simply add a couple blank lines.'); } - else { + else { return t('Lines and paragraphs break automatically.'); } } @@ -446,7 +453,7 @@ function check_markup($text, $format = FILTER_FORMAT_DEFAULT, $langcode = '', $c // Give filters the chance to escape HTML-like data such as code or formulas. foreach ($filters as $filter) { $filter_info = module_invoke($filter->module, 'filter_info'); - if (isset($filter_info[$filter->name]['prepare callback']) && drupal_function_exists($filter_info[$filter->name]['prepare callback'])) { + if (isset($filter_info[$filter->name]['prepare callback']) && function_exists($filter_info[$filter->name]['prepare callback'])) { $text = call_user_func($filter_info[$filter->name]['prepare callback'], $text, $format, $langcode, $cache_id); } } @@ -454,7 +461,7 @@ function check_markup($text, $format = FILTER_FORMAT_DEFAULT, $langcode = '', $c // Perform filtering. foreach ($filters as $filter) { $filter_info = module_invoke($filter->module, 'filter_info'); - if (isset($filter_info[$filter->name]['process callback']) && drupal_function_exists($filter_info[$filter->name]['process callback'])) { + if (isset($filter_info[$filter->name]['process callback']) && function_exists($filter_info[$filter->name]['process callback'])) { $text = call_user_func($filter_info[$filter->name]['process callback'], $text, $format, $langcode, $cache_id); } } @@ -566,7 +573,7 @@ function _filter_tips($format, $long = FALSE) { $tips[$format->name] = array(); foreach ($filters as $id => $filter) { $filter_info = module_invoke($filter->module, 'filter_info'); - if (isset($filter_info[$filter->name]['tips callback']) && drupal_function_exists($filter_info[$filter->name]['tips callback'])) { + if (isset($filter_info[$filter->name]['tips callback']) && function_exists($filter_info[$filter->name]['tips callback'])) { $tip = call_user_func($filter_info[$filter->name]['tips callback'],$format->format, $long); $tips[$format->name][] = array('tip' => $tip, 'id' => $id); } diff --git a/modules/forum/forum.module b/modules/forum/forum.module index c9cf6e339..c576effc9 100644 --- a/modules/forum/forum.module +++ b/modules/forum/forum.module @@ -87,6 +87,7 @@ function forum_menu() { 'title' => 'Forums', 'page callback' => 'forum_page', 'access arguments' => array('access content'), + 'file' => 'forum.pages.inc', ); $items['admin/structure/forum'] = array( 'title' => 'Forums', @@ -94,6 +95,7 @@ function forum_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('forum_overview'), 'access arguments' => array('administer forums'), + 'file' => 'forum.admin.inc', ); $items['admin/structure/forum/list'] = array( 'title' => 'List', @@ -107,6 +109,7 @@ function forum_menu() { 'access arguments' => array('administer forums'), 'type' => MENU_LOCAL_ACTION, 'parent' => 'admin/structure/forum', + 'file' => 'forum.admin.inc', ); $items['admin/structure/forum/add/forum'] = array( 'title' => 'Add forum', @@ -115,6 +118,7 @@ function forum_menu() { 'access arguments' => array('administer forums'), 'type' => MENU_LOCAL_ACTION, 'parent' => 'admin/structure/forum', + 'file' => 'forum.admin.inc', ); $items['admin/structure/forum/settings'] = array( 'title' => 'Settings', @@ -124,11 +128,13 @@ function forum_menu() { 'weight' => 5, 'type' => MENU_LOCAL_TASK, 'parent' => 'admin/structure/forum', + 'file' => 'forum.admin.inc', ); $items['admin/structure/forum/edit/%forum_term'] = array( 'page callback' => 'forum_form_main', 'access arguments' => array('administer forums'), 'type' => MENU_CALLBACK, + 'file' => 'forum.admin.inc', ); $items['admin/structure/forum/edit/container/%forum_term'] = array( 'title' => 'Edit container', @@ -136,6 +142,7 @@ function forum_menu() { 'page arguments' => array('container', 5), 'access arguments' => array('administer forums'), 'type' => MENU_CALLBACK, + 'file' => 'forum.admin.inc', ); $items['admin/structure/forum/edit/forum/%forum_term'] = array( 'title' => 'Edit forum', @@ -143,6 +150,7 @@ 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.module b/modules/help/help.module index a8be2739e..525b173a7 100644 --- a/modules/help/help.module +++ b/modules/help/help.module @@ -15,6 +15,7 @@ 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) { @@ -24,6 +25,7 @@ function help_menu() { 'page arguments' => array(2), 'access arguments' => array('access administration pages'), 'type' => MENU_CALLBACK, + 'file' => 'help.admin.inc', ); } diff --git a/modules/help/help.test b/modules/help/help.test index be269085c..4cc73c181 100644 --- a/modules/help/help.test +++ b/modules/help/help.test @@ -81,7 +81,7 @@ class HelpTestCase extends DrupalWebTestCase { $this->modules = array(); $result = db_query("SELECT name, filename, info FROM {system} WHERE type = 'module' AND status = 1 ORDER BY weight ASC, filename ASC"); foreach ($result as $module) { - if (file_exists($module->filename) && drupal_function_exists($module->name . '_help')) { + if (file_exists($module->filename) && function_exists($module->name . '_help')) { $fullname = unserialize($module->info); $this->modules[$module->name] = $fullname['name']; } diff --git a/modules/image/image.admin.inc b/modules/image/image.admin.inc index 45942c08e..5f96f50e0 100644 --- a/modules/image/image.admin.inc +++ b/modules/image/image.admin.inc @@ -315,7 +315,7 @@ function image_effect_form(&$form_state, $style, $effect) { '#tree' => TRUE, '#attached_css' => array(drupal_get_path('module', 'image') . '/image.admin.css' => array('preprocess' => FALSE)), ); - if (drupal_function_exists($effect['form callback'])) { + if (function_exists($effect['form callback'])) { $form['data'] = call_user_func($effect['form callback'], $effect['data']); } diff --git a/modules/image/image.module b/modules/image/image.module index b468a5546..274742e44 100644 --- a/modules/image/image.module +++ b/modules/image/image.module @@ -51,6 +51,7 @@ function image_menu() { 'description' => 'Configure styles that can be used for resizing or adjusting images on display.', 'page callback' => 'image_style_list', 'access arguments' => array('administer image styles'), + 'file' => 'image.admin.inc', ); $items['admin/config/media/image-styles/list'] = array( 'title' => 'List', @@ -59,6 +60,7 @@ function image_menu() { 'access arguments' => array('administer image styles'), 'type' => MENU_DEFAULT_LOCAL_TASK, 'weight' => 1, + 'file' => 'image.admin.inc', ); $items['admin/config/media/image-styles/add'] = array( 'title' => 'Add style', @@ -68,6 +70,7 @@ function image_menu() { 'access arguments' => array('administer image styles'), 'type' => MENU_LOCAL_ACTION, 'weight' => 2, + 'file' => 'image.admin.inc', ); $items['admin/config/media/image-styles/edit/%image_style'] = array( 'title' => 'Edit style', @@ -76,6 +79,7 @@ function image_menu() { 'page arguments' => array('image_style_form', 5), 'access arguments' => array('administer image styles'), 'type' => MENU_CALLBACK, + 'file' => 'image.admin.inc', ); $items['admin/config/media/image-styles/delete/%image_style'] = array( 'title' => 'Delete style', @@ -84,6 +88,7 @@ function image_menu() { 'page arguments' => array('image_style_delete_form', 5, TRUE), 'access arguments' => array('administer image styles'), 'type' => MENU_CALLBACK, + 'file' => 'image.admin.inc', ); $items['admin/config/media/image-styles/edit/%image_style/effects/%image_effect'] = array( 'title' => 'Edit image effect', @@ -92,6 +97,7 @@ function image_menu() { 'page arguments' => array('image_effect_form', 5, 7), 'access arguments' => array('administer image styles'), 'type' => MENU_CALLBACK, + 'file' => 'image.admin.inc', ); $items['admin/config/media/image-styles/edit/%image_style/effects/%image_effect/delete'] = array( 'title' => 'Delete image effect', @@ -100,6 +106,7 @@ function image_menu() { 'page arguments' => array('image_effect_delete_form', 5, 7), 'access arguments' => array('administer image styles'), 'type' => MENU_CALLBACK, + 'file' => 'image.admin.inc', ); $items['admin/config/media/image-styles/edit/%image_style/add/%image_effect_definition'] = array( 'title' => 'Add image effect', @@ -108,6 +115,7 @@ function image_menu() { 'page arguments' => array('image_effect_form', 5, 7), 'access arguments' => array('administer image styles'), 'type' => MENU_CALLBACK, + 'file' => 'image.admin.inc', ); return $items; @@ -567,7 +575,7 @@ function image_style_url($style_name, $path) { // Set a cache entry to grant access to this style/image path. This will be // checked by image_style_generate(). cache_set('access:' . $style_name . ':' . md5($path), 1, 'cache_image', REQUEST_TIME + 600); - + $scheme = file_uri_scheme($path); $target = file_uri_target($path); @@ -614,6 +622,7 @@ function image_effect_definitions() { } else { $effects = array(); + include_once DRUPAL_ROOT . '/modules/image/image.effects.inc'; foreach (module_implements('image_effect_info') as $module) { foreach (module_invoke($module, 'image_effect_info') as $name => $effect) { // Ensure the current toolkit supports the effect. @@ -756,7 +765,7 @@ function image_effect_delete($effect) { * TRUE on success. FALSE if unable to perform the image effect on the image. */ function image_effect_apply($image, $effect) { - if (drupal_function_exists($effect['effect callback'])) { + if (function_exists($effect['effect callback'])) { return call_user_func($effect['effect callback'], $image, $effect['data']); } return FALSE; diff --git a/modules/locale/locale.module b/modules/locale/locale.module index 63eecc0eb..0c0c6da76 100644 --- a/modules/locale/locale.module +++ b/modules/locale/locale.module @@ -76,6 +76,8 @@ function locale_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('locale_languages_overview_form'), 'access arguments' => array('administer languages'), + 'file' => 'locale.inc', + 'file path' => 'includes', ); $items['admin/config/regional/language/overview'] = array( 'title' => 'List', @@ -88,6 +90,8 @@ function locale_menu() { 'access arguments' => array('administer languages'), 'weight' => 5, 'type' => MENU_LOCAL_ACTION, + 'file' => 'locale.inc', + 'file path' => 'includes', ); $items['admin/config/regional/language/configure'] = array( 'title' => 'Configure', @@ -95,6 +99,8 @@ function locale_menu() { 'page arguments' => array('locale_languages_configure_form'), 'access arguments' => array('administer languages'), 'weight' => 10, + 'file' => 'locale.inc', + 'file path' => 'includes', 'type' => MENU_LOCAL_TASK, ); $items['admin/config/regional/language/edit/%'] = array( @@ -102,6 +108,8 @@ function locale_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('locale_languages_edit_form', 5), 'access arguments' => array('administer languages'), + 'file' => 'locale.inc', + 'file path' => 'includes', 'type' => MENU_CALLBACK, ); $items['admin/config/regional/language/delete/%'] = array( @@ -109,6 +117,8 @@ function locale_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('locale_languages_delete_form', 5), 'access arguments' => array('administer languages'), + 'file' => 'locale.inc', + 'file path' => 'includes', 'type' => MENU_CALLBACK, ); @@ -116,8 +126,11 @@ function locale_menu() { $items['admin/config/regional/translate'] = array( 'title' => 'Translate interface', 'description' => 'Translate the built in interface and optionally other text.', - 'page callback' => 'locale_translate_overview_screen', // not a form, just a table + 'page callback' => 'locale_inc_callback', + 'page arguments' => array('locale_translate_overview_screen'), // not a form, just a table 'access arguments' => array('translate interface'), + 'file' => 'locale.inc', + 'file path' => 'includes', ); $items['admin/config/regional/translate/overview'] = array( 'title' => 'Overview', @@ -130,6 +143,8 @@ function locale_menu() { 'type' => MENU_LOCAL_TASK, 'page callback' => 'locale_translate_seek_screen', // search results and form concatenated 'access arguments' => array('translate interface'), + 'file' => 'locale.inc', + 'file path' => 'includes', ); $items['admin/config/regional/translate/import'] = array( 'title' => 'Import', @@ -138,6 +153,8 @@ function locale_menu() { 'access arguments' => array('translate interface'), 'weight' => 20, 'type' => MENU_LOCAL_TASK, + 'file' => 'locale.inc', + 'file path' => 'includes', ); $items['admin/config/regional/translate/export'] = array( 'title' => 'Export', @@ -145,6 +162,8 @@ function locale_menu() { 'access arguments' => array('translate interface'), 'weight' => 30, 'type' => MENU_LOCAL_TASK, + 'file' => 'locale.inc', + 'file path' => 'includes', ); $items['admin/config/regional/translate/edit/%'] = array( 'title' => 'Edit string', @@ -152,6 +171,8 @@ function locale_menu() { 'page arguments' => array('locale_translate_edit_form', 5), 'access arguments' => array('translate interface'), 'type' => MENU_CALLBACK, + 'file' => 'locale.inc', + 'file path' => 'includes', ); $items['admin/config/regional/translate/delete/%'] = array( 'title' => 'Delete string', @@ -159,6 +180,8 @@ function locale_menu() { 'page arguments' => array(5), 'access arguments' => array('translate interface'), 'type' => MENU_CALLBACK, + 'file' => 'locale.inc', + 'file path' => 'includes', ); return $items; diff --git a/modules/menu/menu.module b/modules/menu/menu.module index beb29590b..45983e55e 100644 --- a/modules/menu/menu.module +++ b/modules/menu/menu.module @@ -54,6 +54,7 @@ function menu_menu() { 'page callback' => 'menu_overview_page', 'access callback' => 'user_access', 'access arguments' => array('administer menu'), + 'file' => 'menu.admin.inc', ); $items['admin/structure/menu/list'] = array( 'title' => 'List menus', @@ -66,6 +67,7 @@ function menu_menu() { 'page arguments' => array('menu_edit_menu', 'add'), 'access arguments' => array('administer menu'), 'type' => MENU_LOCAL_ACTION, + 'file' => 'menu.admin.inc', ); $items['admin/structure/menu/settings'] = array( 'title' => 'Settings', @@ -74,6 +76,7 @@ function menu_menu() { 'access arguments' => array('administer menu'), 'type' => MENU_LOCAL_TASK, 'weight' => 5, + 'file' => 'menu.admin.inc', ); $items['admin/structure/menu-customize/%menu'] = array( 'title' => 'Customize menu', @@ -83,6 +86,7 @@ function menu_menu() { 'title arguments' => array(3), 'access arguments' => array('administer menu'), 'type' => MENU_CALLBACK, + 'file' => 'menu.admin.inc', ); $items['admin/structure/menu-customize/%menu/list'] = array( 'title' => 'List links', @@ -95,6 +99,7 @@ function menu_menu() { 'page arguments' => array('menu_edit_item', 'add', NULL, 3), 'access arguments' => array('administer menu'), 'type' => MENU_LOCAL_ACTION, + 'file' => 'menu.admin.inc', ); $items['admin/structure/menu-customize/%menu/edit'] = array( 'title' => 'Edit menu', @@ -102,6 +107,7 @@ 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/structure/menu-customize/%menu/delete'] = array( 'title' => 'Delete menu', @@ -109,6 +115,7 @@ function menu_menu() { 'page arguments' => array(3), 'access arguments' => array('administer menu'), 'type' => MENU_CALLBACK, + 'file' => 'menu.admin.inc', ); $items['admin/structure/menu/item/%menu_link/edit'] = array( 'title' => 'Edit menu link', @@ -116,6 +123,7 @@ 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/structure/menu/item/%menu_link/reset'] = array( 'title' => 'Reset menu link', @@ -123,6 +131,7 @@ 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/structure/menu/item/%menu_link/delete'] = array( 'title' => 'Delete menu link', @@ -130,6 +139,7 @@ function menu_menu() { 'page arguments' => array(4), 'access arguments' => array('administer menu'), 'type' => MENU_CALLBACK, + 'file' => 'menu.admin.inc', ); return $items; } @@ -157,7 +167,7 @@ function menu_theme() { */ function menu_enable() { menu_rebuild(); - $base_link = db_query("SELECT mlid AS plid, menu_name from {menu_links} WHERE link_path = 'admin/structure/menu' AND module = 'system'")->fetchAssoc(); + $base_link = db_query("SELECT mlid AS plid, menu_name FROM {menu_links} WHERE link_path = 'admin/structure/menu' AND module = 'system'")->fetchAssoc(); $base_link['router_path'] = 'admin/structure/menu-customize/%'; $base_link['module'] = 'menu'; $result = db_query("SELECT * FROM {menu_custom}", array(), array('fetch' => PDO::FETCH_ASSOC)); diff --git a/modules/node/node.module b/modules/node/node.module index 2a43d95b9..b915d7e77 100644 --- a/modules/node/node.module +++ b/modules/node/node.module @@ -1699,6 +1699,7 @@ function node_menu() { 'page arguments' => array('node_admin_content'), 'access arguments' => array('administer nodes'), 'weight' => -10, + 'file' => 'node.admin.inc', ); $items['admin/content/node'] = array( 'title' => 'Content', @@ -1714,6 +1715,7 @@ function node_menu() { // has to be allowed access to the 'node access rebuild' confirm form. 'access arguments' => array('access administration pages'), 'type' => MENU_CALLBACK, + 'file' => 'node.admin.inc', ); $items['admin/structure/types'] = array( @@ -1721,6 +1723,7 @@ function node_menu() { 'description' => 'Manage posts by content type, including default status, front page promotion, comment settings, etc.', 'page callback' => 'node_overview_types', 'access arguments' => array('administer content types'), + 'file' => 'content_types.inc', ); $items['admin/structure/types/list'] = array( 'title' => 'List', @@ -1733,6 +1736,7 @@ function node_menu() { 'page arguments' => array('node_type_form'), 'access arguments' => array('administer content types'), 'type' => MENU_LOCAL_ACTION, + 'file' => 'content_types.inc', ); $items['node'] = array( 'title' => 'Content', @@ -1746,6 +1750,7 @@ function node_menu() { 'access callback' => '_node_add_access', 'weight' => 1, 'menu_name' => 'management', + 'file' => 'node.pages.inc', ); $items['rss.xml'] = array( 'title' => 'RSS feed', @@ -1765,6 +1770,7 @@ function node_menu() { 'access callback' => 'node_access', 'access arguments' => array('create', $type->type), 'description' => $type->description, + 'file' => 'node.pages.inc', ); $items['admin/structure/node-type/' . $type_url_str] = array( 'title' => $type->name, @@ -1772,6 +1778,7 @@ function node_menu() { 'page arguments' => array('node_type_form', $type), 'access arguments' => array('administer content types'), 'type' => MENU_CALLBACK, + 'file' => 'content_types.inc', ); $items['admin/structure/node-type/' . $type_url_str . '/edit'] = array( 'title' => 'Edit', @@ -1782,6 +1789,7 @@ function node_menu() { 'page arguments' => array('node_type_delete_confirm', $type), 'access arguments' => array('administer content types'), 'type' => MENU_CALLBACK, + 'file' => 'content_types.inc', ); } $items['node/%node'] = array( @@ -1804,6 +1812,7 @@ function node_menu() { 'access arguments' => array('update', 1), 'weight' => 1, 'type' => MENU_LOCAL_TASK, + 'file' => 'node.pages.inc', ); $items['node/%node/delete'] = array( 'title' => 'Delete', @@ -1812,7 +1821,9 @@ function node_menu() { 'access callback' => 'node_access', 'access arguments' => array('delete', 1), 'weight' => 1, - 'type' => MENU_CALLBACK); + 'type' => MENU_CALLBACK, + 'file' => 'node.pages.inc', + ); $items['node/%node/revisions'] = array( 'title' => 'Revisions', 'page callback' => 'node_revision_overview', @@ -1821,6 +1832,7 @@ function node_menu() { 'access arguments' => array(1), 'weight' => 2, 'type' => MENU_LOCAL_TASK, + 'file' => 'node.pages.inc', ); $items['node/%node/revisions/%/view'] = array( 'title' => 'Revisions', @@ -1839,6 +1851,7 @@ function node_menu() { 'access callback' => '_node_revision_access', 'access arguments' => array(1, 'update'), 'type' => MENU_CALLBACK, + 'file' => 'node.pages.inc', ); $items['node/%node/revisions/%/delete'] = array( 'title' => 'Delete earlier revision', @@ -1848,6 +1861,7 @@ function node_menu() { 'access callback' => '_node_revision_access', 'access arguments' => array(1, 'delete'), 'type' => MENU_CALLBACK, + 'file' => 'node.pages.inc', ); return $items; } diff --git a/modules/openid/openid.module b/modules/openid/openid.module index 842606d7d..c1a026672 100644 --- a/modules/openid/openid.module +++ b/modules/openid/openid.module @@ -15,6 +15,7 @@ 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', @@ -23,6 +24,7 @@ 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', @@ -31,6 +33,7 @@ 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.module b/modules/path/path.module index d65dd5ec9..33b0e98cd 100644 --- a/modules/path/path.module +++ b/modules/path/path.module @@ -38,12 +38,14 @@ 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/settings/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/settings/path/delete'] = array( 'title' => 'Delete alias', @@ -51,6 +53,7 @@ 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/settings/path/list'] = array( 'title' => 'List', @@ -62,6 +65,7 @@ function path_menu() { 'page callback' => 'path_admin_edit', 'access arguments' => array('administer url aliases'), 'type' => MENU_LOCAL_ACTION, + 'file' => 'path.admin.inc', ); return $items; @@ -210,7 +214,7 @@ function path_node_update($node) { function path_node_delete($node) { path_set_alias('node/' . $node->nid); } - + /** * Implement hook_taxonomy_term_delete(). */ @@ -269,7 +273,7 @@ function path_form_taxonomy_form_term_alter(&$form, $form_state) { else { $url = 'taxonomy/term/' . $form['#term']['tid']; $alias = drupal_get_path_alias($url); - + // Since drupal_get_path_alias() can return the default path, check if we really have an alias. if ($alias != $url) { $path = $alias; diff --git a/modules/poll/poll.module b/modules/poll/poll.module index 84a84b0e0..5c715d981 100644 --- a/modules/poll/poll.module +++ b/modules/poll/poll.module @@ -81,6 +81,7 @@ 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( @@ -91,6 +92,7 @@ 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( @@ -101,6 +103,7 @@ function poll_menu() { 'access arguments' => array(1, 'access content', TRUE), 'weight' => 3, 'type' => MENU_LOCAL_TASK, + 'file' => 'poll.pages.inc', ); return $items; @@ -322,6 +325,7 @@ function poll_form($node, $form_state) { * entire form is rebuilt during the page reload. */ function poll_more_choices_submit($form, &$form_state) { + include_once DRUPAL_ROOT . '/' . drupal_get_path('module', 'node') . '/node.pages.inc'; // Set the form to rebuild and run submit handlers. node_form_submit_build_node($form, $form_state); diff --git a/modules/profile/profile.module b/modules/profile/profile.module index ea99c4dc2..28872b4b2 100644 --- a/modules/profile/profile.module +++ b/modules/profile/profile.module @@ -80,6 +80,7 @@ function profile_menu() { 'title' => 'User list', 'page callback' => 'profile_browse', 'access arguments' => array('access user profiles'), + 'file' => 'profile.pages.inc', 'type' => MENU_SUGGESTED_ITEM, ); $items['admin/config/people/profile'] = array( @@ -88,18 +89,21 @@ 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/config/people/profile/add'] = array( 'title' => 'Add field', 'page callback' => 'drupal_get_form', 'page arguments' => array('profile_field_form'), 'access arguments' => array('administer users'), + 'file' => 'profile.admin.inc', 'type' => MENU_CALLBACK, ); $items['admin/config/people/profile/autocomplete'] = array( 'title' => 'Profile category autocomplete', 'page callback' => 'profile_admin_settings_autocomplete', 'access arguments' => array('administer users'), + 'file' => 'profile.admin.inc', 'type' => MENU_CALLBACK, ); $items['admin/config/people/profile/edit'] = array( @@ -107,6 +111,7 @@ function profile_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('profile_field_form'), 'access arguments' => array('administer users'), + 'file' => 'profile.admin.inc', 'type' => MENU_CALLBACK, ); $items['admin/config/people/profile/delete'] = array( @@ -114,12 +119,14 @@ function profile_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('profile_field_delete'), 'access arguments' => array('administer users'), + 'file' => 'profile.admin.inc', 'type' => MENU_CALLBACK, ); $items['profile/autocomplete'] = array( 'title' => 'Profile autocomplete', 'page callback' => 'profile_autocomplete', 'access arguments' => array('access user profiles'), + 'file' => 'profile.pages.inc', 'type' => MENU_CALLBACK, ); return $items; @@ -128,7 +135,7 @@ function profile_menu() { /** * Implement hook_block_list(). */ -function profile_block_list() { + function profile_block_list() { $blocks['author-information']['info'] = t('Author information'); $blocks['author-information']['cache'] = BLOCK_CACHE_PER_PAGE | BLOCK_CACHE_PER_ROLE; return $blocks; diff --git a/modules/search/search.module b/modules/search/search.module index e8d63ea96..2038765f5 100644 --- a/modules/search/search.module +++ b/modules/search/search.module @@ -190,6 +190,7 @@ 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', @@ -198,6 +199,7 @@ 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/reindex'] = array( 'title' => 'Clear index', @@ -205,6 +207,7 @@ function search_menu() { 'page arguments' => array('search_reindex_confirm'), 'access arguments' => array('administer search'), 'type' => MENU_CALLBACK, + 'file' => 'search.admin.inc', ); $items['admin/reports/search'] = array( 'title' => 'Top search phrases', @@ -213,6 +216,7 @@ function search_menu() { 'page arguments' => array('search'), 'access arguments' => array('access site reports'), 'file path' => drupal_get_path('module', 'dblog'), + 'file' => 'dblog.admin.inc', ); foreach (module_implements('search') as $module) { @@ -225,6 +229,7 @@ function search_menu() { 'access arguments' => array($module), 'type' => MENU_LOCAL_TASK, 'parent' => 'search', + 'file' => 'search.pages.inc', ); } return $items; diff --git a/modules/simpletest/drupal_web_test_case.php b/modules/simpletest/drupal_web_test_case.php index c23081467..8ef61367a 100644 --- a/modules/simpletest/drupal_web_test_case.php +++ b/modules/simpletest/drupal_web_test_case.php @@ -519,7 +519,7 @@ abstract class DrupalTestCase { * * These tests can not access the database nor files. Calling any Drupal * function that needs the database will throw exceptions. These include - * watchdog(), drupal_function_exists(), module_implements(), + * watchdog(), function_exists(), module_implements(), * module_invoke_all() etc. */ class DrupalUnitTestCase extends DrupalTestCase { @@ -549,7 +549,7 @@ class DrupalUnitTestCase extends DrupalTestCase { if (isset($module_list['locale'])) { $this->originalModuleList = $module_list; unset($module_list['locale']); - module_list(TRUE, FALSE, $module_list); + module_list(TRUE, FALSE, FALSE, $module_list); } } @@ -561,7 +561,7 @@ class DrupalUnitTestCase extends DrupalTestCase { $db_prefix = $this->originalPrefix; // Restore modules if necessary. if (isset($this->originalModuleList)) { - module_list(TRUE, FALSE, $this->originalModuleList); + module_list(TRUE, FALSE, FALSE, $this->originalModuleList); } } } @@ -1203,7 +1203,7 @@ class DrupalWebTestCase extends DrupalTestCase { // Reload module list and implementations to ensure that test module hooks // aren't called after tests. module_list(TRUE); - module_implements(MODULE_IMPLEMENTS_CLEAR_CACHE); + module_implements('', FALSE, TRUE); // Reset the Field API. field_cache_clear(); diff --git a/modules/simpletest/simpletest.module b/modules/simpletest/simpletest.module index cbbd45388..af176b031 100644 --- a/modules/simpletest/simpletest.module +++ b/modules/simpletest/simpletest.module @@ -31,6 +31,7 @@ function simpletest_menu() { 'page arguments' => array('simpletest_test_form'), 'description' => 'Run tests against Drupal core and your active modules. These tests help assure that your site code is working as designed.', 'access arguments' => array('administer unit tests'), + 'file' => 'simpletest.pages.inc', ); $items['admin/config/development/testing/list'] = array( 'title' => 'List', @@ -42,6 +43,7 @@ function simpletest_menu() { 'page arguments' => array('simpletest_settings_form'), 'access arguments' => array('administer unit tests'), 'type' => MENU_LOCAL_TASK, + 'file' => 'simpletest.pages.inc', ); $items['admin/config/development/testing/results/%'] = array( 'title' => 'Test result', @@ -50,6 +52,7 @@ function simpletest_menu() { 'description' => 'View result of tests.', 'access arguments' => array('administer unit tests'), 'type' => MENU_CALLBACK, + 'file' => 'simpletest.pages.inc', ); return $items; } diff --git a/modules/simpletest/tests/batch.test b/modules/simpletest/tests/batch.test index 65c5309ff..a3ace7b9e 100644 --- a/modules/simpletest/tests/batch.test +++ b/modules/simpletest/tests/batch.test @@ -69,8 +69,6 @@ class BatchAPIPercentagesTestCase extends DrupalWebTestCase { * testCases class variable. */ function testBatchAPIPercentages() { - // Include batch.inc if it's not already included. - drupal_function_exists('_batch_api_percentage'); foreach ($this->testCases as $expected_result => $arguments) { // PHP sometimes casts numeric strings that are array keys to integers, // cast them back here. @@ -86,4 +84,4 @@ class BatchAPIPercentagesTestCase extends DrupalWebTestCase { } } } -}
\ No newline at end of file +} diff --git a/modules/simpletest/tests/image.test b/modules/simpletest/tests/image.test index 7047576b6..3eeb602a8 100644 --- a/modules/simpletest/tests/image.test +++ b/modules/simpletest/tests/image.test @@ -255,7 +255,7 @@ class ImageToolkitGdTestCase extends DrupalWebTestCase { */ function testManipulations() { // If GD isn't available don't bother testing this. - if (!drupal_function_exists('image_gd_check_settings') || !image_gd_check_settings()) { + if (!function_exists('image_gd_check_settings') || !image_gd_check_settings()) { $this->pass(t('Image manipulations for the GD toolkit were skipped because the GD toolkit is not available.')); return; } @@ -325,7 +325,7 @@ class ImageToolkitGdTestCase extends DrupalWebTestCase { ); // Systems using non-bundled GD2 don't have imagerotate. Test if available. - if (drupal_function_exists('imagerotate')) { + if (function_exists('imagerotate')) { $operations += array( 'rotate_5' => array( 'function' => 'rotate', @@ -359,7 +359,7 @@ class ImageToolkitGdTestCase extends DrupalWebTestCase { } // Systems using non-bundled GD2 don't have imagefilter. Test if available. - if (drupal_function_exists('imagefilter')) { + if (function_exists('imagefilter')) { $operations += array( 'desaturate' => array( 'function' => 'desaturate', diff --git a/modules/simpletest/tests/module.test b/modules/simpletest/tests/module.test index 5c703c287..a157c957a 100644 --- a/modules/simpletest/tests/module.test +++ b/modules/simpletest/tests/module.test @@ -60,7 +60,7 @@ class ModuleUnitTest extends DrupalWebTestCase { 'system' => array('filename' => drupal_get_path('module', 'system')), 'menu' => array('filename' => drupal_get_path('module', 'menu')), ); - module_list(FALSE, FALSE, $fixed_list); + module_list(FALSE, FALSE, FALSE, $fixed_list); $new_module_list = array_combine(array_keys($fixed_list), array_keys($fixed_list)); $this->assertModuleList($new_module_list, t('When using a fixed list')); @@ -79,7 +79,7 @@ class ModuleUnitTest extends DrupalWebTestCase { $expected_values = array_combine($expected_values, $expected_values); $this->assertIdentical($expected_values, module_list(), t('@condition: module_list() returns correct results', array('@condition' => $condition))); ksort($expected_values); - $this->assertIdentical($expected_values, module_list(FALSE, TRUE), t('@condition: module_list() returns correctly sorted results', array('@condition' => $condition))); + $this->assertIdentical($expected_values, module_list(FALSE, FALSE, TRUE), t('@condition: module_list() returns correctly sorted results', array('@condition' => $condition))); } } diff --git a/modules/simpletest/tests/registry.test b/modules/simpletest/tests/registry.test index 53ee3127f..09464922c 100644 --- a/modules/simpletest/tests/registry.test +++ b/modules/simpletest/tests/registry.test @@ -12,7 +12,6 @@ class RegistryParseFileTestCase extends DrupalWebTestCase { function setUp() { $this->fileName = 'registry_test_' . md5(rand()); - $this->functionName = 'registry_test_function' . md5(rand()); $this->className = 'registry_test_class' . md5(rand()); $this->interfaceName = 'registry_test_interface' . md5(rand()); parent::setUp(); @@ -23,7 +22,7 @@ class RegistryParseFileTestCase extends DrupalWebTestCase { */ function testRegistryParseFile() { _registry_parse_file($this->fileName, $this->getFileContents()); - foreach (array('functionName', 'className', 'interfaceName') as $resource) { + foreach (array('className', 'interfaceName') as $resource) { $foundName = db_query('SELECT name FROM {registry} WHERE name = :name', array(':name' => $this->$resource))->fetchField(); $this->assertTrue($this->$resource == $foundName, t('Resource "@resource" found.', array('@resource' => $this->$resource))); } @@ -36,8 +35,6 @@ class RegistryParseFileTestCase extends DrupalWebTestCase { $file_contents = <<<CONTENTS <?php -function {$this->functionName}() {} - class {$this->className} {} interface {$this->interfaceName} {} @@ -66,7 +63,6 @@ class RegistryParseFilesTestCase extends DrupalWebTestCase { foreach ($this->fileTypes as $fileType) { $this->$fileType = new stdClass(); $this->$fileType->fileName = file_directory_path() . '/registry_test_' . md5(rand()); - $this->$fileType->functionName = 'registry_test_function' . md5(rand()); $this->$fileType->className = 'registry_test_class' . md5(rand()); $this->$fileType->interfaceName = 'registry_test_interface' . md5(rand()); $this->$fileType->contents = $this->getFileContents($fileType); @@ -82,7 +78,7 @@ class RegistryParseFilesTestCase extends DrupalWebTestCase { ->execute(); // Insert some fake resource records. - foreach (array('function', 'class', 'interface') as $type) { + foreach (array('class', 'interface') as $type) { db_insert('registry') ->fields(array( 'name' => $type . md5(rand()), @@ -102,7 +98,7 @@ class RegistryParseFilesTestCase extends DrupalWebTestCase { _registry_parse_files($this->getFiles()); foreach ($this->fileTypes as $fileType) { // Test that we have all the right resources. - foreach (array('functionName', 'className', 'interfaceName') as $resource) { + foreach (array('className', 'interfaceName') as $resource) { $foundName = db_query('SELECT name FROM {registry} WHERE name = :name', array(':name' => $this->$fileType->$resource))->fetchField(); $this->assertTrue($this->$fileType->$resource == $foundName, t('Resource "@resource" found.', array('@resource' => $this->$fileType->$resource))); } @@ -135,8 +131,6 @@ class RegistryParseFilesTestCase extends DrupalWebTestCase { $file_contents = <<<CONTENTS <?php -function {$this->$fileType->functionName}() {} - class {$this->$fileType->className} {} interface {$this->$fileType->interfaceName} {} @@ -146,33 +140,3 @@ CONTENTS; } } - -class RegistrySkipBodyTestCase extends DrupalUnitTestCase { - public static function getInfo() { - return array( - 'name' => 'Skip function body test', - 'description' => 'Tokenize a simple function and check that the body is skipped right', - 'group' => 'System', - ); - } - - function testRegistrySkipBody() { - // This string contains all three kinds of opening braces. - $function = '<?php function foo () { $x = "{$y}"; $x = "${y}"; }'; - $tokens = token_get_all($function); - require_once DRUPAL_ROOT . '/includes/registry.inc'; - _registry_skip_body($tokens); - // Consume the last } - each($tokens); - $this->assertIdentical(each($tokens), FALSE, t('Tokens skipped')); - - // Check workaround for PHP < 5.2.3 regarding tokenization of strings - // containing variables. The { contained in the string should not be - // treated as a separate token. - $function = '<?php function foo() { $x = "$y {"; $x = `$y {`; $x = ' . "<<<EOD\n\$y {\nEOD\n; } function bar() {}"; - $tokens = token_get_all($function); - _registry_skip_body($tokens); - $this->assertTrue(each($tokens), t('Tokens not skipped to end of file.')); - } - -} diff --git a/modules/simpletest/tests/xmlrpc.test b/modules/simpletest/tests/xmlrpc.test index 8cdaec1d5..232665a95 100644 --- a/modules/simpletest/tests/xmlrpc.test +++ b/modules/simpletest/tests/xmlrpc.test @@ -12,9 +12,6 @@ class XMLRPCValidator1IncTestCase extends DrupalWebTestCase { function setUp() { parent::setUp('xmlrpc_test'); - - // Force loading the xmlrpc.inc to have the xmlrpc() function. - drupal_function_exists('xmlrpc'); } /** @@ -135,9 +132,6 @@ class XMLRPCMessagesTestCase extends DrupalWebTestCase { function setUp() { parent::setUp('xmlrpc_test'); - - // Force loading the xmlrpc.inc to have the xmlrpc() function. - drupal_function_exists('xmlrpc'); } /** diff --git a/modules/statistics/statistics.module b/modules/statistics/statistics.module index 9194fcd49..424203262 100644 --- a/modules/statistics/statistics.module +++ b/modules/statistics/statistics.module @@ -130,6 +130,7 @@ 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', @@ -137,6 +138,7 @@ 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', @@ -144,12 +146,14 @@ 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', @@ -158,6 +162,7 @@ function statistics_menu() { 'page arguments' => array(3), 'access arguments' => array('access statistics'), 'type' => MENU_CALLBACK, + 'file' => 'statistics.admin.inc', ); $items['admin/settings/statistics'] = array( 'title' => 'Statistics', @@ -165,6 +170,7 @@ function statistics_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('statistics_settings_form'), 'access arguments' => array('administer statistics'), + 'file' => 'statistics.admin.inc', ); $items['user/%user/track/navigation'] = array( 'title' => 'Track page visits', @@ -173,6 +179,7 @@ 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', @@ -181,6 +188,7 @@ function statistics_menu() { 'access arguments' => array('access statistics'), 'type' => MENU_LOCAL_TASK, 'weight' => 2, + 'file' => 'statistics.pages.inc', ); return $items; diff --git a/modules/system/image.gd.inc b/modules/system/image.gd.inc index 706395439..23e34677b 100644 --- a/modules/system/image.gd.inc +++ b/modules/system/image.gd.inc @@ -118,7 +118,7 @@ function image_gd_resize(stdClass $image, $width, $height) { */ function image_gd_rotate(stdClass $image, $degrees, $background = NULL) { // PHP installations using non-bundled GD do not have imagerotate. - if (!drupal_function_exists('imagerotate')) { + if (!function_exists('imagerotate')) { watchdog('image', 'The image %file could not be rotated because the imagerotate() function is not available in this PHP installation.', array('%file' => $image->source)); return FALSE; } @@ -215,7 +215,7 @@ function image_gd_crop(stdClass $image, $x, $y, $width, $height) { */ function image_gd_desaturate(stdClass $image) { // PHP installations using non-bundled GD do not have imagefilter. - if (!drupal_function_exists('imagefilter')) { + if (!function_exists('imagefilter')) { watchdog('image', 'The image %file could not be desaturated because the imagefilter() function is not available in this PHP installation.', array('%file' => $image->source)); return FALSE; } diff --git a/modules/system/system.admin.inc b/modules/system/system.admin.inc index f80d2a8fc..e3926043e 100644 --- a/modules/system/system.admin.inc +++ b/modules/system/system.admin.inc @@ -52,7 +52,7 @@ function system_main_admin_page($arg = NULL) { $block['show'] = TRUE; if (empty($content)) { // If no items found below, but access checks did not fail, show. - $block['title'] = l($item['title'], $item['href'], $item['localized_options']); + $block['title'] = l($item['title'], $item['href'], $item['localized_options']); } else { // Theme items below. @@ -1552,7 +1552,7 @@ function system_image_toolkit_settings() { // Get the toolkit's settings form. $function = 'image_' . $current_toolkit . '_settings'; - if (drupal_function_exists($function)) { + if (function_exists($function)) { $form['image_toolkit_settings'] = $function(); } diff --git a/modules/system/system.install b/modules/system/system.install index d8c2e5e65..df678015a 100644 --- a/modules/system/system.install +++ b/modules/system/system.install @@ -44,7 +44,7 @@ function system_requirements($phase) { 'severity' => REQUIREMENT_INFO, 'weight' => -9 ); - } + } } // Web server information. @@ -953,6 +953,11 @@ function system_schema() { 'not null' => TRUE, 'default' => 0, ), + 'file' => array( + 'description' => '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'), @@ -1237,13 +1242,6 @@ function system_schema() { 'not null' => TRUE, 'default' => '' ), - 'suffix' => array( - 'description' => "The part of the function name after the module, which is the hook this function implements, if any.", - 'type' => 'varchar', - 'length' => 68, - 'not null' => TRUE, - 'default' => '' - ), 'weight' => array( 'description' => "The order in which this module's hooks should be invoked relative to other modules. Equal-weighted modules are ordered by name.", 'type' => 'int', @@ -1253,7 +1251,7 @@ function system_schema() { ), 'primary key' => array('name', 'type'), 'indexes' => array( - 'hook' => array('type', 'suffix', 'weight', 'module'), + 'hook' => array('type', 'weight', 'module'), ), ); @@ -1399,6 +1397,12 @@ function system_schema() { 'not null' => TRUE, 'default' => 0, ), + 'bootstrap' => array( + 'description' => "Boolean indicating whether this module is loaded during Drupal's early bootstrapping phase (e.g. even before the page cache is consulted).", + 'type' => 'int', + 'not null' => TRUE, + 'default' => 0, + ), 'schema_version' => array( 'description' => "The module's database schema version number. -1 if the module is not installed (its tables do not exist); 0 or the largest N of the module's hook_update_N() function that has either been run or existed when the module was first installed.", 'type' => 'int', @@ -1421,6 +1425,7 @@ function system_schema() { 'primary key' => array('filename'), 'indexes' => array( 'modules' => array('type', 'status', 'weight', 'name'), + 'bootstrap' => array('type', 'status', 'bootstrap', 'weight', 'name'), 'type_name' => array('type', 'name'), ), ); @@ -1711,19 +1716,17 @@ function system_update_7005() { */ 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' => ''), 'module' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''), - 'suffix' => array('type' => 'varchar', 'length' => 68, 'not null' => TRUE, 'default' => ''), 'weight' => array('type' => 'int', 'not null' => TRUE, 'default' => 0), ), 'primary key' => array('name', 'type'), 'indexes' => array( - 'hook' => array('type', 'suffix', 'weight', 'module'), + 'hook' => array('type', 'weight', 'module'), ), ); $schema['registry_file'] = array( @@ -1919,11 +1922,10 @@ function system_update_7013() { } /** - * Drop the bootstrap column from the {system} table. + * Drop the bootstrap column from the {system} table. This was reverted. */ function system_update_7014() { $ret = array(); - db_drop_field($ret, 'system', 'bootstrap'); return $ret; } diff --git a/modules/system/system.module b/modules/system/system.module index c304bf061..0d01643ee 100644 --- a/modules/system/system.module +++ b/modules/system/system.module @@ -501,18 +501,22 @@ function system_menu() { 'page callback' => 'ajax_form_callback', 'access callback' => TRUE, 'type' => MENU_CALLBACK, + 'file path' => 'includes', + 'file' => 'form.inc', ); $items['system/timezone'] = array( 'title' => 'Time zone', 'page callback' => 'system_timezone', 'access callback' => TRUE, 'type' => MENU_CALLBACK, + 'file' => 'system.admin.inc', ); $items['system/run-cron-image'] = array( 'title' => 'Execute cron', 'page callback' => 'system_run_cron_image', 'access callback' => 'system_run_cron_image_access', 'type' => MENU_CALLBACK, + 'file' => 'system.admin.inc', ); $items['admin'] = array( 'title' => 'Administer', @@ -520,18 +524,21 @@ function system_menu() { 'page callback' => 'system_main_admin_page', 'weight' => 9, 'menu_name' => 'management', + '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'), 'type' => MENU_DEFAULT_LOCAL_TASK, + 'file' => 'system.admin.inc', ); $items['admin/by-module'] = array( 'title' => 'By module', @@ -539,6 +546,7 @@ function system_menu() { 'access arguments' => array('access administration pages'), 'type' => MENU_LOCAL_TASK, 'weight' => 2, + 'file' => 'system.admin.inc', ); // Menu items that are basically just menu blocks. @@ -550,6 +558,7 @@ function system_menu() { 'page callback' => 'system_settings_overview', 'access callback' => 'system_admin_menu_block_access', 'access arguments' => array('admin/settings', 'access administration pages'), + 'file' => 'system.admin.inc', ); $items['admin/structure'] = array( 'title' => 'Structure', @@ -559,6 +568,7 @@ function system_menu() { 'page callback' => 'system_admin_menu_block_page', 'access callback' => 'system_admin_menu_block_access', 'access arguments' => array('admin/structure', 'access administration pages'), + 'file' => 'system.admin.inc', ); // Appearance. $items['admin/appearance'] = array( @@ -569,18 +579,21 @@ function system_menu() { 'access arguments' => array('administer site configuration'), 'position' => 'left', 'weight' => -6, + 'file' => 'system.admin.inc', ); $items['admin/appearance/select'] = array( 'title' => 'List', 'description' => 'Select the default theme for your site.', 'type' => MENU_DEFAULT_LOCAL_TASK, 'weight' => -1, + 'file' => 'system.admin.inc', ); $items['admin/appearance/settings'] = array( 'title' => 'Configure', 'page arguments' => array('system_theme_settings'), 'access arguments' => array('administer site configuration'), 'type' => MENU_LOCAL_TASK, + 'file' => 'system.admin.inc', ); // Theme configuration subtabs. $items['admin/appearance/settings/global'] = array( @@ -596,6 +609,7 @@ function system_menu() { 'type' => MENU_LOCAL_TASK, 'access callback' => '_system_themes_access', 'access arguments' => array($theme), + 'file' => 'system.admin.inc', ); } @@ -604,12 +618,14 @@ function system_menu() { 'title' => 'Configuration and modules', 'page callback' => 'system_admin_config_page', 'access arguments' => array('access administration pages'), + 'file' => 'system.admin.inc', ); $items['admin/config/config'] = array( 'title' => 'Configuration', 'access arguments' => array('administer site configuration'), 'type' => MENU_DEFAULT_LOCAL_TASK, 'weight' => -10, + 'file' => 'system.admin.inc', ); $items['admin/config/modules'] = array( 'title' => 'Modules', @@ -617,6 +633,7 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_modules'), 'access arguments' => array('administer site configuration'), + 'file' => 'system.admin.inc', 'type' => MENU_LOCAL_TASK, 'weight' => 10, ); @@ -634,11 +651,25 @@ function system_menu() { 'page arguments' => array('system_modules_uninstall'), 'access arguments' => array('administer site configuration'), 'type' => MENU_LOCAL_TASK, + 'file' => 'system.admin.inc', ); $items['admin/config/modules/uninstall/confirm'] = array( 'title' => 'Uninstall', 'access arguments' => array('administer site configuration'), 'type' => MENU_CALLBACK, + 'file' => 'system.admin.inc', + ); + + // Development menu category. + $items['admin/development'] = array( + 'title' => 'Development', + 'description' => 'Development tools.', + 'position' => 'right', + 'weight' => -7, + 'page callback' => 'system_admin_menu_block_page', + 'access callback' => 'system_admin_menu_block_access', + 'access arguments' => array('admin/development', 'access administration pages'), + 'file' => 'system.admin.inc', ); // Actions. @@ -646,7 +677,8 @@ function system_menu() { 'title' => 'Actions', 'description' => 'Manage the actions defined for your site.', 'access arguments' => array('administer actions'), - 'page callback' => 'system_actions_manage' + 'page callback' => 'system_actions_manage', + 'file' => 'system.admin.inc', ); $items['admin/settings/actions/manage'] = array( 'title' => 'Manage actions', @@ -654,6 +686,7 @@ function system_menu() { 'page callback' => 'system_actions_manage', 'type' => MENU_DEFAULT_LOCAL_TASK, 'weight' => -2, + 'file' => 'system.admin.inc', ); $items['admin/settings/actions/configure'] = array( 'title' => 'Configure an advanced action', @@ -661,6 +694,7 @@ function system_menu() { 'page arguments' => array('system_actions_configure'), 'access arguments' => array('administer actions'), 'type' => MENU_CALLBACK, + 'file' => 'system.admin.inc', ); $items['admin/settings/actions/delete/%actions'] = array( 'title' => 'Delete action', @@ -669,12 +703,14 @@ function system_menu() { 'page arguments' => array('system_actions_delete_form', 4), 'access arguments' => array('administer actions'), 'type' => MENU_CALLBACK, + 'file' => 'system.admin.inc', ); $items['admin/settings/actions/orphan'] = array( 'title' => 'Remove orphans', 'page callback' => 'system_actions_remove_orphans', 'access arguments' => array('administer actions'), 'type' => MENU_CALLBACK, + 'file' => 'system.admin.inc', ); // IP address blocking. @@ -683,6 +719,7 @@ 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/%'] = array( 'title' => 'IP address blocking', @@ -690,6 +727,7 @@ function system_menu() { 'page callback' => 'system_ip_blocking', 'access arguments' => array('block IP addresses'), 'type' => MENU_CALLBACK, + 'file' => 'system.admin.inc', ); $items['admin/settings/ip-blocking/delete/%blocked_ip'] = array( 'title' => 'Delete IP address', @@ -697,17 +735,19 @@ function system_menu() { 'page arguments' => array('system_ip_blocking_delete', 4), 'access arguments' => array('block IP addresses'), 'type' => MENU_CALLBACK, + 'file' => 'system.admin.inc', ); // Configuration. $items['admin/config/development'] = array( - 'title' => 'Development', - 'description' => 'Development tools.', - 'position' => 'left', - 'weight' => 10, - 'page callback' => 'system_admin_menu_block_page', - 'access callback' => 'system_admin_menu_block_access', - 'access arguments' => array('admin/config/development', 'access administration pages'), + 'title' => 'Development', + 'description' => 'Development tools.', + 'position' => 'left', + 'weight' => 10, + 'page callback' => 'system_admin_menu_block_page', + 'access callback' => 'system_admin_menu_block_access', + 'access arguments' => array('admin/config/development', 'access administration pages'), + 'file' => 'system.admin.inc', ); $items['admin/config/development/maintenance'] = array( 'title' => 'Maintenance mode', @@ -715,6 +755,7 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_site_maintenance_mode'), 'access arguments' => array('administer site configuration'), + 'file' => 'system.admin.inc', ); $items['admin/config/development/performance'] = array( 'title' => 'Performance', @@ -722,15 +763,17 @@ 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/config/media'] = array( - 'title' => 'Media', - 'description' => 'Media tools.', - 'position' => 'left', - 'weight' => 10, - 'page callback' => 'system_admin_menu_block_page', - 'access callback' => 'system_admin_menu_block_access', - 'access arguments' => array('admin/config/media', 'access administration pages'), + 'title' => 'Media', + 'description' => 'Media tools.', + 'position' => 'left', + 'weight' => 10, + 'page callback' => 'system_admin_menu_block_page', + 'access callback' => 'system_admin_menu_block_access', + 'access arguments' => array('admin/config/media', 'access administration pages'), + 'file' => 'system.admin.inc', ); $items['admin/config/media/file-system'] = array( 'title' => 'File system', @@ -738,6 +781,7 @@ 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/config/media/image-toolkit'] = array( 'title' => 'Image toolkit', @@ -745,6 +789,15 @@ 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/settings/performance'] = array( + 'title' => 'Performance', + 'description' => 'Enable or disable page caching for anonymous users and set CSS and JS bandwidth optimization options.', + 'page callback' => 'drupal_get_form', + 'page arguments' => array('system_performance_settings'), + 'access arguments' => array('administer site configuration'), + 'file' => 'system.admin.inc', ); $items['admin/config/development/logging'] = array( 'title' => 'Logging and errors', @@ -752,15 +805,17 @@ function system_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('system_logging_settings'), 'access arguments' => array('administer site configuration'), + 'file' => 'system.admin.inc', ); $items['admin/config/regional'] = array( - 'title' => 'Regional and language', - 'description' => 'Regional settings, localization and translation.', - 'position' => 'left', - 'weight' => -7, - 'page callback' => 'system_admin_menu_block_page', - 'access callback' => 'system_admin_menu_block_access', - 'access arguments' => array('admin/config/regional', 'access administration pages'), + 'title' => 'Regional and language', + 'description' => 'Regional settings, localization and translation.', + 'position' => 'left', + 'weight' => -7, + 'page callback' => 'system_admin_menu_block_page', + 'access callback' => 'system_admin_menu_block_access', + 'access arguments' => array('admin/config/regional', 'access administration pages'), + 'file' => 'system.admin.inc', ); $items['admin/config/regional/settings'] = array( 'title' => 'Regional settings', @@ -769,14 +824,16 @@ function system_menu() { 'page arguments' => array('system_regional_settings'), 'access arguments' => array('administer site configuration'), 'weight' => -10, + 'file' => 'system.admin.inc', ); $items['admin/config/regional/settings/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', ); - + // Settings. $items['admin/settings/site-information'] = array( 'title' => 'Site information', @@ -784,6 +841,7 @@ 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/rss-publishing'] = array( 'title' => 'RSS publishing', @@ -791,6 +849,7 @@ 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/clean-urls'] = array( 'title' => 'Clean URLs', @@ -798,6 +857,7 @@ 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', @@ -805,6 +865,7 @@ function system_menu() { 'page arguments' => array(array('status' => TRUE)), 'access callback' => TRUE, 'type' => MENU_CALLBACK, + 'file' => 'system.admin.inc', ); // Reports. @@ -816,6 +877,7 @@ function system_menu() { 'access arguments' => array('admin/reports', 'access site reports'), 'weight' => 5, 'position' => 'left', + 'file' => 'system.admin.inc', ); $items['admin/reports/status'] = array( 'title' => 'Status report', @@ -823,24 +885,28 @@ 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', ); // 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; } @@ -1275,7 +1341,7 @@ function system_filetransfer_backends() { 'weight' => 0, ); } - + if (ini_get('allow_url_fopen')) { $backends['ftp_wrapper'] = array( 'title' => t('FTP using file streams'), @@ -1284,7 +1350,7 @@ function system_filetransfer_backends() { 'weight' => 10, ); } - + // SSH2 lib connection is only available if the proper PHP extension is // installed. if (function_exists('ssh2_connect')) { @@ -1310,7 +1376,7 @@ function system_filetransfer_backends() { function system_get_filetransfer_settings_form($filetransfer_backend_name, $defaults) { $available_backends = module_invoke_all('filetransfer_backends'); $form = call_user_func($available_backends[$filetransfer_backend_name]['settings_form']); - + foreach ($form as $name => &$element) { if (isset($defaults[$name])) { $element['#default_value'] = $defaults[$name]; @@ -1342,30 +1408,30 @@ function system_filetransfer_backend_form_ssh() { */ function _system_filetransfer_backend_form_common() { $form = array(); - + $form['hostname'] = array ( '#type' => 'textfield', '#title' => t('Host'), '#default_value' => 'localhost', ); - + $form['port'] = array ( '#type' => 'textfield', '#title' => t('Port'), '#default_value' => NULL, ); - + $form['username'] = array ( '#type' => 'textfield', '#title' => t('Username'), ); - + $form['password'] = array ( '#type' => 'password', '#title' => t('Password'), '#description' => t('This is not saved in the database and is only used to test the connection'), ); - + return $form; } @@ -1644,7 +1710,7 @@ function system_admin_menu_block($item) { */ function system_check_directory($form_element) { $directory = $form_element['#value']; - + if (!is_dir($directory) && !drupal_mkdir($directory, NULL, TRUE)) { // If the directory does not exists and cannot be created. form_set_error($form_element['#parents'][0], t('The directory %directory does not exist and could not be created.', array('%directory' => $directory))); @@ -1801,6 +1867,7 @@ function _system_get_module_data() { 'version' => NULL, 'php' => DRUPAL_MINIMUM_PHP, 'files' => array(), + 'bootstrap' => 0, ); // Read info files for each module. @@ -1839,6 +1906,22 @@ function system_get_module_data() { ksort($modules); system_get_files_database($modules, 'module'); system_update_files_database($modules, 'module'); + // Refresh bootstrap status. + $bootstrap_modules = array(); + foreach (bootstrap_hooks() as $hook) { + foreach (module_implements($hook) as $module) { + $bootstrap_modules[] = $module; + } + } + $query = db_update('system')->fields(array('bootstrap' => 0)); + if ($bootstrap_modules) { + db_update('system') + ->fields(array('bootstrap' => 1)) + ->condition('name', $bootstrap_modules, 'IN') + ->execute(); + $query->condition('name', $bootstrap_modules, 'NOT IN'); + } + $query->execute(); $modules = _module_build_dependencies($modules); return $modules; } @@ -2588,7 +2671,7 @@ function system_actions_configure($form_state, $action = NULL) { function system_actions_configure_validate($form, $form_state) { $function = actions_function_lookup($form_state['values']['actions_action']) . '_validate'; // Hand off validation to the action. - if (drupal_function_exists($function)) { + if (function_exists($function)) { $function($form, $form_state); } } @@ -2748,7 +2831,7 @@ function system_send_email_action($object, $context) { } $recipient = token_replace($context['recipient'], $context); - + $language = user_preferred_language($account); $params = array('context' => $context); @@ -2941,10 +3024,11 @@ function theme_meta_generator_header($version = VERSION) { * Implement hook_image_toolkits(). */ function system_image_toolkits() { + include_once DRUPAL_ROOT . '/' . drupal_get_path('module', 'system') . '/' . 'image.gd.inc'; return array( 'gd' => array( 'title' => t('GD2 image manipulation toolkit'), - 'available' => drupal_function_exists('image_gd_check_settings') && image_gd_check_settings(), + 'available' => function_exists('image_gd_check_settings') && image_gd_check_settings(), ), ); } @@ -2972,18 +3056,18 @@ function system_retrieve_file($url, $destination = NULL, $overwrite = TRUE) { } $parsed_url = parse_url($url); $local = is_dir(file_directory_path() . '/' . $destination) ? $destination . '/' . basename($parsed_url['path']) : $destination; - + if (!$overwrite && file_exists($local)) { drupal_set_message(t('@remote could not be saved. @local already exists', array('@remote' => $url, '@local' => $local)), 'error'); return FALSE; } - + $result = drupal_http_request($url); if ($result->code != 200 || !file_save_data($result->data, $local)) { drupal_set_message(t('@remote could not be saved.', array('@remote' => $url)), 'error'); return FALSE; } - + return $local; } diff --git a/modules/taxonomy/taxonomy.module b/modules/taxonomy/taxonomy.module index f2cfa376e..495aa28fd 100644 --- a/modules/taxonomy/taxonomy.module +++ b/modules/taxonomy/taxonomy.module @@ -196,6 +196,7 @@ 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/structure/taxonomy/list'] = array( @@ -210,6 +211,7 @@ function taxonomy_menu() { 'page arguments' => array('taxonomy_form_vocabulary'), 'access arguments' => array('administer taxonomy'), 'type' => MENU_LOCAL_ACTION, + 'file' => 'taxonomy.admin.inc', ); $items['taxonomy/term/%taxonomy_term'] = array( @@ -220,6 +222,7 @@ function taxonomy_menu() { 'page arguments' => array(2), 'access arguments' => array('access content'), 'type' => MENU_CALLBACK, + 'file' => 'taxonomy.pages.inc', ); $items['taxonomy/term/%taxonomy_term/view'] = array( @@ -234,6 +237,7 @@ function taxonomy_menu() { 'access arguments' => array('administer taxonomy'), 'type' => MENU_LOCAL_TASK, 'weight' => 10, + 'file' => 'taxonomy.pages.inc', ); $items['taxonomy/term/%taxonomy_term/feed'] = array( 'title' => 'Taxonomy term', @@ -243,12 +247,14 @@ function taxonomy_menu() { 'page arguments' => array(2), 'access arguments' => array('access content'), 'type' => MENU_CALLBACK, + 'file' => 'taxonomy.feeds.inc', ); $items['taxonomy/autocomplete'] = array( 'title' => 'Autocomplete taxonomy', 'page callback' => 'taxonomy_autocomplete', 'access arguments' => array('access content'), 'type' => MENU_CALLBACK, + 'file' => 'taxonomy.pages.inc', ); // TODO: remove with taxonomy_term_node_* $items['taxonomy/autocomplete/legacy'] = array( @@ -266,6 +272,7 @@ function taxonomy_menu() { 'title arguments' => array(3), 'access arguments' => array('administer taxonomy'), 'type' => MENU_CALLBACK, + 'file' => 'taxonomy.admin.inc', ); $items['admin/structure/taxonomy/%taxonomy_vocabulary/edit'] = array( @@ -281,6 +288,7 @@ function taxonomy_menu() { 'access arguments' => array('administer taxonomy'), 'type' => MENU_LOCAL_TASK, 'weight' => -10, + 'file' => 'taxonomy.admin.inc', ); $items['admin/structure/taxonomy/%taxonomy_vocabulary/list/add'] = array( @@ -289,6 +297,7 @@ function taxonomy_menu() { 'page arguments' => array('taxonomy_form_term', 3), 'access arguments' => array('administer taxonomy'), 'type' => MENU_LOCAL_ACTION, + 'file' => 'taxonomy.admin.inc', ); return $items; @@ -1933,7 +1942,7 @@ function taxonomy_field_schema($field) { function taxonomy_field_validate($obj_type, $object, $field, $instance, $langcode, $items, &$errors) { $allowed_values = taxonomy_allowed_values($field); $widget = field_info_widget_types($instance['widget']['type']); - + // Check we don't exceed the allowed number of values for widgets with custom // behavior for multiple values (taxonomy_autocomplete widget). if ($widget['behaviors']['multiple values'] == FIELD_BEHAVIOR_CUSTOM && $field['cardinality'] >= 2) { @@ -2092,7 +2101,7 @@ function _taxonomy_clean_field_cache($term) { foreach ($field['settings']['allowed_values'] as $tree) { $vids[$tree['vid']] = $tree['vid']; } - + // Check this term's vocabulary against those used for the field's options. if (in_array($term->vid, $vids)) { $conditions = array(array('value', $term->tid)); diff --git a/modules/taxonomy/taxonomy.pages.inc b/modules/taxonomy/taxonomy.pages.inc index 7d50436da..488db5762 100644 --- a/modules/taxonomy/taxonomy.pages.inc +++ b/modules/taxonomy/taxonomy.pages.inc @@ -82,6 +82,7 @@ function taxonomy_term_feed($term) { function taxonomy_term_edit($term) { if (isset($term)) { drupal_set_title($term->name); + include_once DRUPAL_ROOT . '/'. drupal_get_path('module', 'taxonomy') . '/taxonomy.admin.inc'; return drupal_get_form('taxonomy_form_term', taxonomy_vocabulary_load($term->vid), (array)$term); } return drupal_not_found(); diff --git a/modules/tracker/tracker.module b/modules/tracker/tracker.module index 11c0f7d5a..89ea0e826 100644 --- a/modules/tracker/tracker.module +++ b/modules/tracker/tracker.module @@ -28,6 +28,7 @@ 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', @@ -48,6 +49,7 @@ 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.module b/modules/translation/translation.module index 6bfef4e18..8c1b5b07f 100644 --- a/modules/translation/translation.module +++ b/modules/translation/translation.module @@ -63,6 +63,7 @@ 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.module b/modules/trigger/trigger.module index d6fedc64f..c085741a0 100644 --- a/modules/trigger/trigger.module +++ b/modules/trigger/trigger.module @@ -40,6 +40,7 @@ function trigger_menu() { 'description' => 'Tell Drupal when to execute actions.', 'page callback' => 'trigger_assign', 'access arguments' => array('administer actions'), + 'file' => 'trigger.admin.inc', ); // Explicitly define the system menu item so we can label it "cron" rather @@ -50,6 +51,7 @@ function trigger_menu() { 'page arguments' => array('system'), 'access arguments' => array('administer actions'), 'type' => MENU_LOCAL_TASK, + 'file' => 'trigger.admin.inc', ); // We want contributed modules to be able to describe @@ -73,6 +75,7 @@ function trigger_menu() { 'page arguments' => array($module), 'access arguments' => array('administer actions'), 'type' => MENU_LOCAL_TASK, + 'file' => 'trigger.admin.inc', ); } $items['admin/structure/trigger/unassign'] = array( @@ -82,6 +85,7 @@ 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.module b/modules/update/update.module index 626560e92..f41ec8b61 100644 --- a/modules/update/update.module +++ b/modules/update/update.module @@ -132,6 +132,7 @@ function update_menu() { 'page callback' => 'update_status', 'access arguments' => array('administer site configuration'), 'weight' => 10, + 'file' => 'update.report.inc', ); $items['admin/settings/updates'] = array( 'title' => 'Updates', @@ -139,12 +140,14 @@ function update_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('update_settings'), 'access arguments' => array('administer site configuration'), + 'file' => 'update.settings.inc', ); $items['admin/reports/updates/check'] = array( 'title' => 'Manual update check', 'page callback' => 'update_manual_status', 'access arguments' => array('administer site configuration'), 'type' => MENU_CALLBACK, + 'file' => 'update.fetch.inc', ); return $items; diff --git a/modules/upload/upload.module b/modules/upload/upload.module index 9625e8263..26a284439 100644 --- a/modules/upload/upload.module +++ b/modules/upload/upload.module @@ -99,6 +99,7 @@ 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.admin.inc b/modules/user/user.admin.inc index 1ec1221b2..b7f3ff4a1 100644 --- a/modules/user/user.admin.inc +++ b/modules/user/user.admin.inc @@ -938,41 +938,3 @@ function theme_user_filters($form) { return $output; } - -/** - * Implementation of hook_modules_installed(). - */ -function user_modules_installed($modules) { - // Assign all available permissions to the administrator role. - $rid = variable_get('user_admin_role', 0); - if ($rid) { - foreach ($modules as $module) { - if ($permissions = module_invoke($module, 'permission')) { - foreach (array_keys($permissions) as $permission) { - db_insert('role_permission') - ->fields(array( - 'rid' => $rid, - 'permission' => $permission, - ))->execute(); - } - } - } - } -} - -/** - * Implement hook_modules_uninstalled(). - */ -function user_modules_uninstalled($modules) { - $permissions = array(); - foreach ($modules as $module) { - if (drupal_function_exists($module . '_permission')) { - $permissions = array_merge($permissions, array_keys(module_invoke($module, 'permission'))); - } - } - if (!empty($permissions)) { - db_delete('role_permission') - ->condition('permission', $permissions, 'IN') - ->execute(); - } -} diff --git a/modules/user/user.module b/modules/user/user.module index a35154dc2..926e6cc32 100644 --- a/modules/user/user.module +++ b/modules/user/user.module @@ -433,7 +433,7 @@ function user_save($account, $edit = array(), $category = 'account') { if (($picture->status & FILE_STATUS_PERMANENT) == 0) { $info = image_get_info($picture->uri); $picture_directory = variable_get('file_default_scheme', 'public') . '://' . variable_get('user_picture_path', 'pictures'); - + // Prepare the pictures directory. file_prepare_directory($picture_directory, FILE_CREATE_DIRECTORY); $destination = file_stream_wrapper_uri_normalize($picture_directory . '/picture-' . $account->uid . '.' . $info['extension']); @@ -1298,6 +1298,7 @@ function user_menu() { 'access callback' => 'user_access', 'access arguments' => array('access user profiles'), 'type' => MENU_CALLBACK, + 'file' => 'user.pages.inc', ); // Registration and login pages. @@ -1306,6 +1307,7 @@ function user_menu() { 'page callback' => 'user_page', 'access callback' => TRUE, 'type' => MENU_CALLBACK, + 'file' => 'user.pages.inc', ); $items['user/login'] = array( @@ -1328,6 +1330,7 @@ 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', @@ -1335,6 +1338,7 @@ function user_menu() { 'page arguments' => array('user_pass_reset', 2, 3, 4), 'access callback' => TRUE, 'type' => MENU_CALLBACK, + 'file' => 'user.pages.inc', ); $items['user/logout'] = array( @@ -1343,6 +1347,7 @@ function user_menu() { 'page callback' => 'user_logout', 'weight' => 10, 'menu_name' => 'user-menu', + 'file' => 'user.pages.inc', ); // User listing pages. @@ -1354,6 +1359,7 @@ function user_menu() { 'access arguments' => array('administer users'), 'position' => 'left', 'weight' => -4, + 'file' => 'user.admin.inc', ); $items['admin/people/list'] = array( 'title' => 'List', @@ -1382,6 +1388,7 @@ function user_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('user_admin_settings'), 'access arguments' => array('administer users'), + 'file' => 'user.admin.inc', 'weight' => -10, ); $items['admin/config/people/accounts/settings'] = array( @@ -1397,6 +1404,7 @@ function user_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('user_admin_new_role'), 'access arguments' => array('administer permissions'), + 'file' => 'user.admin.inc', 'weight' => -9, ); $items['admin/config/people/roles/edit'] = array( @@ -1411,6 +1419,7 @@ function user_menu() { 'page callback' => 'drupal_get_form', 'page arguments' => array('user_admin_permissions'), 'access arguments' => array('administer permissions'), + 'file' => 'user.admin.inc', 'weight' => -8, ); @@ -1424,6 +1433,7 @@ function user_menu() { 'access arguments' => array(1), 'weight' => -10, 'menu_name' => 'user-menu', + 'file' => 'user.pages.inc', ); $items['user/%user/view'] = array( @@ -1439,6 +1449,7 @@ function user_menu() { 'access callback' => 'user_cancel_access', 'access arguments' => array(1), 'type' => MENU_CALLBACK, + 'file' => 'user.pages.inc', ); $items['user/%user/cancel/confirm/%/%'] = array( @@ -1448,6 +1459,7 @@ function user_menu() { 'access callback' => 'user_cancel_access', 'access arguments' => array(1), 'type' => MENU_CALLBACK, + 'file' => 'user.pages.inc', ); $items['user/%user/edit'] = array( @@ -1457,6 +1469,7 @@ function user_menu() { 'access callback' => 'user_edit_access', 'access arguments' => array(1), 'type' => MENU_LOCAL_TASK, + 'file' => 'user.pages.inc', ); $items['user/%user_category/edit/account'] = array( @@ -1480,6 +1493,7 @@ function user_menu() { 'weight' => $category['weight'], 'load arguments' => array('%map', '%index'), 'tab_parent' => 'user/%/edit', + 'file' => 'user.pages.inc', ); } } @@ -1711,7 +1725,7 @@ function user_login_authenticate_validate($form, &$form_state) { /** * The final validation handler on the login form. - * + * * Sets a form error if user has not been authenticated, or if too many * logins have been attempted. This validation function should always * be the last one. @@ -3025,3 +3039,41 @@ function _user_forms(&$edit, $account, $category, $hook = 'form') { return empty($groups) ? FALSE : $groups; } + +/** + * Implementation of hook_modules_installed(). + */ +function user_modules_installed($modules) { + // Assign all available permissions to the administrator role. + $rid = variable_get('user_admin_role', 0); + if ($rid) { + foreach ($modules as $module) { + if ($permissions = module_invoke($module, 'permission')) { + foreach (array_keys($permissions) as $permission) { + db_insert('role_permission') + ->fields(array( + 'rid' => $rid, + 'permission' => $permission, + ))->execute(); + } + } + } + } +} + +/** + * Implement hook_modules_uninstalled(). + */ +function user_modules_uninstalled($modules) { + $permissions = array(); + foreach ($modules as $module) { + if (function_exists($module . '_permission')) { + $permissions = array_merge($permissions, array_keys(module_invoke($module, 'permission'))); + } + } + if (!empty($permissions)) { + db_delete('role_permission') + ->condition('permission', $permissions, 'IN') + ->execute(); + } +} |