diff --git a/cron.php b/cron.php index 84927b75e721436c8baca8d8bc0bfa8d158bc800..01e10eb3b1da6a6c84c49032ff3246472759fc01 100644 --- a/cron.php +++ b/cron.php @@ -3,7 +3,7 @@ /** * @file - * Handles incoming requests to fire of regularly-scheduled tasks (cron jobs). + * Handles incoming requests to fire off regularly-scheduled tasks (cron jobs). */ include_once 'includes/bootstrap.inc'; diff --git a/database/updates.inc b/database/updates.inc index 4466dc9ba8c4c74814f65453794393df579722fe..25dd9eea852c12e2e527d460b84fed66aff97e4f 100644 --- a/database/updates.inc +++ b/database/updates.inc @@ -1303,7 +1303,7 @@ function update_98() { /** * Works for both PostgreSQL and MySQL */ - $result = db_query("SELECT pid, src FROM {url_alias} WHERE src LIKE 'taxonomy/%%'", $from); + $result = db_query("SELECT pid, src FROM {url_alias} WHERE src LIKE 'taxonomy/%%'"); while ($alias = db_fetch_object($result)) { list(, $page, $op, $terms) = explode('/', $alias->src); if ($page == 'feed' || $page == 'page') { diff --git a/includes/bootstrap.inc b/includes/bootstrap.inc index e92547109f5a78fd52f526cff2007c3c197854f0..291eb5bbd1ac6c959a89b592127cb93e23b8fe58 100644 --- a/includes/bootstrap.inc +++ b/includes/bootstrap.inc @@ -1,5 +1,5 @@ <?php -/* $Id$ */ +// $Id$ /** * @file @@ -393,13 +393,6 @@ function watchdog($type, $message, $link = NULL) { db_query("INSERT INTO {watchdog} (uid, type, message, link, location, hostname, timestamp) VALUES (%d, '%s', '%s', '%s', '%s', '%s', %d)", $user->uid, $type, $message, $link, request_uri(), $_SERVER['REMOTE_ADDR'], time()); } -/** - * @name Page messages - * - * Functions to get and set the message of the current page. - * @{ - */ - /** * Set a message for the user to see. * @@ -436,8 +429,6 @@ function drupal_get_messages() { return $messages; } -/* @} */ - unset($conf); $config = conf_init(); @@ -448,4 +439,5 @@ function drupal_get_messages() { // Initialize configuration variables, using values from conf.php if available. $conf = variable_init(isset($conf) ? $conf : array()); + ?> diff --git a/includes/common.inc b/includes/common.inc index 72324c5f086565729225bac799f777be8d6e3063..b138d79b572bcbc030be8a1d6179a671f5adad8a 100644 --- a/includes/common.inc +++ b/includes/common.inc @@ -10,10 +10,7 @@ */ /** - * @name Page title - * - * Functions to get and set the title of the current page. - * @{ + * Set the title of the current page, for display on the page and in the title bar. */ function drupal_set_title($title = NULL) { static $stored_title; @@ -24,6 +21,9 @@ function drupal_set_title($title = NULL) { return $stored_title; } +/** + * Get the title of the current page, for display on the page and in the title bar. + */ function drupal_get_title() { $title = drupal_set_title(); @@ -33,18 +33,13 @@ function drupal_get_title() { return $title; } -/* @} */ /** - * @name Page breadcrumbs + * Set the breadcrumb trail for the current page. * - * Functions to get and set the breadcrumb trail of the current page. - * @{ - */ - -/** - * @param $breadcrumb Array of links, starting with "home" and proceeding up - * to but not including the current page. + * @param $breadcrumb + * Array of links, starting with "home" and proceeding up to but not including + * the current page. */ function drupal_set_breadcrumb($breadcrumb = NULL) { static $stored_breadcrumb; @@ -55,6 +50,9 @@ function drupal_set_breadcrumb($breadcrumb = NULL) { return $stored_breadcrumb; } +/** + * Get the breadcrumb trail for the current page. + */ function drupal_get_breadcrumb() { $breadcrumb = drupal_set_breadcrumb(); @@ -64,15 +62,10 @@ function drupal_get_breadcrumb() { return $breadcrumb; } -/* @} */ /** - * @name HTML head contents - * - * Set and get output that should be in the \<head\> tag. - * @{ + * Add output to the head tag of the HTML page. */ - function drupal_set_html_head($data = NULL) { static $stored_head = ''; @@ -82,6 +75,9 @@ function drupal_set_html_head($data = NULL) { return $stored_head; } +/** + * Retrieve output to be displayed in the head tag of the HTML page. + */ function drupal_get_html_head() { global $base_url; @@ -91,14 +87,10 @@ function drupal_get_html_head() { return $output . drupal_set_html_head(); } -/* @} */ /** - * @name URL path alias - * - * Functions to handle path aliases. + * Return an array mapping path aliases to their internal Drupal paths. */ - function drupal_get_path_map($action = '') { static $map = NULL; @@ -107,7 +99,7 @@ function drupal_get_path_map($action = '') { } if (is_null($map)) { - $map = array(); // make $map non-null in case no aliases are defined + $map = array(); // Make $map non-null in case no aliases are defined. $result = db_query('SELECT * FROM {url_alias}'); while ($data = db_fetch_object($result)) { $map[$data->dst] = $data->src; @@ -117,6 +109,9 @@ function drupal_get_path_map($action = '') { return $map; } +/** + * Regenerate the path map from the information in the database. + */ function drupal_rebuild_path_map() { drupal_get_path_map('rebuild'); } @@ -151,17 +146,13 @@ function drupal_get_normal_path($path) { return $path; } } -/* @} */ /** - * @name HTTP headers - * - * Functions to get and set the HTTP headers of the current page. - * @{ + * Set an HTTP response header for the current page. */ function drupal_set_header($header = NULL) { // We use an array to guarantee there are no leading or trailing delimiters. - // This can cause header("") to get called when serving the page later, which + // Otherwise, header('') could get called when serving the page later, which // ends HTTP headers prematurely on some PHP versions. static $stored_headers = array(); @@ -172,16 +163,17 @@ function drupal_set_header($header = NULL) { return implode("\n", $stored_headers); } +/** + * Get the HTTP response headers for the current page. + */ function drupal_get_headers() { return drupal_set_header(); } -/* @} */ /** * @name HTTP handling - * - * Functions to properly handle HTTP responses. * @{ + * Functions to properly handle HTTP responses. */ /** @@ -316,7 +308,7 @@ function drupal_http_request($url, $headers = array(), $method = 'GET', $data = $path .= '?'. $uri['query']; } - // Create http request. + // Create HTTP request. $defaults = array( 'Host' => 'Host: '. $uri['host'], 'User-Agent' => 'User-Agent: Drupal (+http://www.drupal.org/)', @@ -365,7 +357,7 @@ function drupal_http_request($url, $headers = array(), $method = 'GET', $data = 500 => 'Internal Server Error', 501 => 'Not Implemented', 502 => 'Bad Gateway', 503 => 'Service Unavailable', 504 => 'Gateway Time-out', 505 => 'HTTP Version not supported' ); // RFC 2616 states that all unknown HTTP codes must be treated the same as - // the base code in their class: + // the base code in their class. if (!isset($responses[$code])) { $code = floor($code / 100) * 100; } @@ -393,7 +385,9 @@ function drupal_http_request($url, $headers = array(), $method = 'GET', $data = $result->code = $code; return $result; } -/* @} */ +/** + * @} End of "HTTP handling". + */ /** * Log errors in the database rather than displaying them to the user. @@ -436,9 +430,8 @@ function fix_gpc_magic() { /** * @name Conversion - * - * Converts data structures to a different type. * @{ + * Converts data structures to different types. */ /** @@ -473,13 +466,15 @@ function object2array($object) { return $array; } -/* @} */ + +/** + * @} End of "Conversion". + */ /** * @name Messages - * - * Frequently used messages. * @{ + * Frequently used messages. */ /** @@ -499,7 +494,9 @@ function message_na() { return t('n/a'); } -/* @} */ +/** + * @} End of "Messages". + */ /** * Initialize the localization system. @@ -525,23 +522,23 @@ function locale_initialize() { * Translate strings to the current locale. * * When using t(), try to put entire sentences and strings in one t() call. - * This makes it easier for translators. We are unafraid of HTML markup within - * translation strings if necessary. The suggested syntax for a link embedded - * within a translation string is for example: - * @verbatim + * This makes it easier for translators. HTML markup within translation strings + * is acceptable, if necessary. The suggested syntax for a link embedded + * within a translation string is: + * @code * $msg = t('You must log in below or <a href="%url">create a new * account</a> before viewing the next page.', array('%url' * => url('user/register'))); - * @endverbatim + * @endcode * We suggest the same syntax for links to other sites. This makes it easy to * change link URLs if needed (which happens often) without requiring updates * to translations. * * @param $string - * A string containing the english string to translate. + * A string containing the English string to translate. * @param $args * An associative array of replacements to make after translation. Incidences - * of any key in this array are replaces with the corresponding value. + * of any key in this array are replaced with the corresponding value. * @return * The translated string. */ @@ -572,10 +569,9 @@ function drupal_specialchars($input, $quotes = ENT_NOQUOTES) { } /** - * @name Validation - * - * Functions to validate user input. + * @defgroup validation Input validation * @{ + * Functions to validate user input. */ /** @@ -603,7 +599,7 @@ function valid_email_address($mail) { * @param $url * The URL to verify. * @param $absolute - * Whether the URL is absolute (beginning with a scheme such as http). + * Whether the URL is absolute (beginning with a scheme such as "http:"). * @return * TRUE if the URL is in a valid format. */ @@ -657,28 +653,33 @@ function valid_input_data($data) { return TRUE; } -/* @} */ +/** + * @} End of "defgroup validation". + */ /** * @defgroup search Search interface * @{ + * The Drupal search interface manages a global search mechanism. + * + * Modules may plug into this system to provide searches of different types of + * data. Most of the system is handled by search.module, so this must be enabled + * for all of the search features to work. */ /** - * Format a single result entry of a search query: + * Format a single result entry of a search query. + * + * Modules may implement hook_search_item() in order to override this default + * function to display search results. * - * @param $item a single search result as returned by <i>module</i>_search of - * type array('count' => ..., 'link' => ..., 'title' => ..., 'user' => ..., - * 'date' => ..., 'keywords' => ...) - * @param $type module type of this item + * @param $item + * A single search result as returned by hook_search(). The result should be + * an array with keys "count", "link", "title", "user", "date", and "keywords". + * @param $type + * The type of item found, such as "user" or "comment". */ function search_item($item, $type) { - - /* - ** Modules may implement hook_search_item() hook in order to overwrite - ** the default function to display search results. - */ - if (module_hook($type, 'search_item')) { $output = module_invoke($type, 'search_item', $item); } @@ -693,17 +694,22 @@ function search_item($item, $type) { /** * Render a generic search form. * - * "Generic" means "universal usable" - that is, usable not only from - * 'site.com/search', but also as a simple search box (without "Restrict search - * to", help text, etc) from theme's header etc. This means: provide options to - * only conditionally render certain parts of this form. + * This form must be usable not only within "http://example.com/search", but also + * as a simple search box (without "Restrict search to", help text, etc.), in the + * theme's header, and so forth. This means we must provide options to + * conditionally render certain parts of this form. * - * @param $action Form action. Defaults to 'site.com/search'. - * @param $keys string containing keywords for the search. - * @param $options != 0: Render additional form fields/text ("Restrict search - * to", help text, etc). + * @param $action + * Form action. Defaults to "search". + * @param $keys + * The search string entered by the user, containing keywords for the search. + * @param $options + * Whether to render the optional form fields and text ("Restrict search + * to", help text, etc.). + * @return + * An HTML string containing the search form. */ -function search_form($action = NULL, $keys = NULL, $options = NULL) { +function search_form($action = '', $keys = '', $options = FALSE) { $edit = $_POST['edit']; if (!$action) { @@ -728,8 +734,8 @@ function search_form($action = NULL, $keys = NULL, $options = NULL) { return form($output, 'post', $action); } -/* - * Collect the search results: +/** + * Perform a global search on the given keys, and return the formatted results. */ function search_data($keys = NULL) { $edit = $_POST['edit']; @@ -755,23 +761,28 @@ function search_data($keys = NULL) { } /** - * Display the search form and the resulting data. + * Display a search form for a particular type of data. * - * @param $type If set, search only nodes of this type. Otherwise, search all - * types. - * @param $action Form action. Defaults to 'site.com/search'. - * @param $keys Query string. Defaults to global $keys. - * @param $options != 0: Render additional form fields/text ("Restrict search - * to", help text, etc). + * @param $type + * The type of content to search within. + * @param $action + * Form action. Defaults to "search". + * @param $keys + * The search string entered by the user, containing keywords for the search. + * @param $options + * Whether to render the optional form fields and text ("Restrict search + * to", help text, etc.). + * @return + * An HTML string containing the search form and results. */ -function search_type($type, $action = NULL, $keys = NULL, $options = NULL) { +function search_type($type, $action = '', $keys = '', $options = FALSE) { $_POST['edit']['type'][$type] = 'on'; return search_form($action, $keys, $options) . '<br />'. search_data($keys); } /** - * @} end of defgroup search + * @} End of "defgroup search". */ function check_form($text) { @@ -783,10 +794,9 @@ function check_file($filename) { } /** - * @name Formatting - * - * Functions to format numbers, strings, dates, etc. + * @defgroup format Formatting * @{ + * Functions to format numbers, strings, dates, etc. */ /** @@ -1032,13 +1042,18 @@ function format_name($object) { return $output; } -/* @} */ +/** + * @} End of "defgroup format". + */ /** * @defgroup form Form generation * @{ + * Functions to enable output of HTML forms and form elements. * - * + * Drupal uses these functions to achieve consistency in its form presentation, + * while at the same time simplifying code and reducing the amount of HTML that + * must be explicily generated by modules. */ /** @@ -1500,7 +1515,7 @@ function form_weight($title = NULL, $name = 'weight', $value = 0, $delta = 10, $ } /** - * @} end of defgroup form + * @} End of "defgroup form". */ /** @@ -1527,11 +1542,9 @@ function url($path = NULL, $query = NULL, $fragment = NULL, $absolute = FALSE) { static $script; if (empty($script)) { - /* - ** On some webservers such as IIS we can't omit "index.php". As such we - ** generate "index.php?q=foo" instead of "?q=foo" on anything that is not - ** Apache. - */ + // On some web servers, such as IIS, we can't omit "index.php". So, we + // generate "index.php?q=foo" instead of "?q=foo" on anything that is not + // Apache. $script = (strpos($_SERVER['SERVER_SOFTWARE'], 'Apache') === false) ? 'index.php' : ''; } @@ -1745,10 +1758,8 @@ function drupal_xml_parser_create(&$data) { $encoding = $match[1]; } - /* - * Unsupported encodings are converted here into UTF-8. - * Requires the iconv, GNU recode or mbstring PHP extension. - */ + // Unsupported encodings are converted here into UTF-8. + // Requires the iconv, GNU recode or mbstring PHP extension. $php_supported = array('utf-8', 'iso-8859-1', 'us-ascii'); if (!in_array(strtolower($encoding), $php_supported)) { if (function_exists('iconv')) { @@ -1788,7 +1799,7 @@ function drupal_xml_parser_create(&$data) { * * Use this function whenever you want to chop off a string at an unsure * location. On the other hand, if you're sure that you're splitting on a - * character boundary (e.g. after using strpos or similar), you can safely use + * character boundary (e.g. after using strpos() or similar), you can safely use * substr() instead. * * @param $string @@ -1811,24 +1822,21 @@ function truncate_utf8($string, $len) { } /** - * Encodes MIME/HTTP header values that contain non US-ASCII - * characters. + * Encodes MIME/HTTP header values that contain non US-ASCII characters. * - * Example: mime_header_encode('tést.txt') returns '=?UTF-8?B?dMOpc3QudHh0?=' + * For example, mime_header_encode('tést.txt') returns "=?UTF-8?B?dMOpc3QudHh0?=". * - * For more info: http://www.rfc-editor.org/rfc/rfc2047.txt + * See http://www.rfc-editor.org/rfc/rfc2047.txt for more information. * + * Notes: + * - Only encode strings that contain non-ASCII characters. + * - The chunks come in groupings of 4 bytes when using base64 encoding. + * - trim() is used to ensure that no extra spacing is added by chunk_split() or + * preg_replace(). + * - Using \n as the chunk separator may cause problems on some systems and may + * have to be changed to \r\n or \r. */ function mime_header_encode($string, $charset = 'UTF-8') { - // Notes: - // - Only encode strings that contain non-ASCII characters. - // - The chunks come in groupings of 4 bytes when using base64 - // encoded. - // - trim() is used to ensure that no extra spacing is added by - // chunk_split() or preg_replace(). - // - Using \n as the chunk separator may cause problems on some - // systems and may have to be changed to \r\n or \r. - if (!preg_match('/^[\x20-\x7E]*$/', $string)) { $chunk_size = 75 - 7 - strlen($charset); $chunk_size -= $chunk_size % 4; @@ -1839,12 +1847,18 @@ function mime_header_encode($string, $charset = 'UTF-8') { } /** - * Wrapper around PHP's eval(). Uses output buffering to capture both returned - * and printed text. Unlike eval(), we require code to be surrounded by <?php ?> - * tags (in other words, we evaluate the code as if it were a stand-alone PHP - * file). + * Evaluate a string of PHP code. * - * @param $code The code to evaluate + * This is a wrapper around PHP's eval(). It uses output buffering to capture both + * returned and printed text. Unlike eval(), we require code to be surrounded by + * <?php ?> tags; in other words, we evaluate the code as if it were a stand-alone + * PHP file. + * + * @param $code + * The code to evaluate. + * @return + * A string containing the printed output of the code, followed by the returned + * output of the code. */ function drupal_eval($code) { ob_start(); @@ -1861,13 +1875,13 @@ function drupal_eval($code) { include_once 'includes/file.inc'; include_once 'includes/xmlrpc.inc'; -// set error handler: +// Set the Drupal custom error handler. set_error_handler('error_handler'); -// spit out the correct charset http header +// Emit the correct charset HTTP header. drupal_set_header('Content-Type: text/html; charset=utf-8'); -// initialize the _GET['q'] prior to loading the modules and invoking their 'init' hook: +// Initialize $_GET['q'] prior to loading modules and invoking hook_init(). if (!empty($_GET['q'])) { $_GET['q'] = drupal_get_normal_path(trim($_GET['q'], '/')); } @@ -1875,19 +1889,19 @@ function drupal_eval($code) { $_GET['q'] = drupal_get_normal_path(variable_get('site_frontpage', 'node')); } -// initialize installed modules: +// Initialize all enabled modules. module_init(); if ($_REQUEST && !user_access('bypass input data check')) { if (!valid_input_data($_REQUEST)) { - die('terminated request because of suspicious input data'); + die('Terminated request because of suspicious input data.'); } } -// initialize localization system: +// Initialize the localization system. $locale = locale_initialize(); -// initialize theme: +// Initialize the enabled theme. $theme = init_theme(); ?> diff --git a/includes/database.inc b/includes/database.inc index ddfaf5d4c54ebb7c80d3be55393283e785acdde2..7728611495b0667a458adc93c8e99e3b825461bb 100644 --- a/includes/database.inc +++ b/includes/database.inc @@ -9,6 +9,7 @@ /** * @defgroup database Database abstraction layer * @{ + * Allow the use of different database servers using the same code base. * * Drupal provides a slim database abstraction layer to provide developers with * the ability to support multiple database servers easily. The intent of this @@ -119,7 +120,7 @@ function db_set_active($name = 'default') { } /** - * @} end of defgroup database + * @} End of "defgroup database". */ // Initialize the default database. diff --git a/includes/database.mysql.inc b/includes/database.mysql.inc index ff0919fdcc9549fce72339e7ba65158205d79d87..e3c46557db02c1b1b6c27c3a9275c9d417e7e343 100644 --- a/includes/database.mysql.inc +++ b/includes/database.mysql.inc @@ -7,7 +7,7 @@ */ /** - * @addtogroup database + * @ingroup database * @{ */ @@ -286,7 +286,7 @@ function db_decode_blob($data) { } /** - * @} end of addtogroup database + * @} End of "ingroup database". */ ?> diff --git a/includes/database.pgsql.inc b/includes/database.pgsql.inc index 9ea863d5161788d6b02d6cdeab82f913c3c3ce42..95a36d3fa502f6e3c9e4ae03a5cbc1fc93036d5d 100644 --- a/includes/database.pgsql.inc +++ b/includes/database.pgsql.inc @@ -3,11 +3,11 @@ /** * @file - * Database interface code for postgresql database servers. + * Database interface code for PostgreSQL database servers. */ /** - * @addtogroup database + * @ingroup database * @{ */ @@ -279,7 +279,7 @@ function db_decode_blob($data) { } /** - * @} end of addtogroup database + * @} End of "ingroup database". */ ?> diff --git a/includes/file.inc b/includes/file.inc index 4018e5accbb2d8270565261df7fc05a85bfd0c3c..7fae2c7966398c8f21deaba5bb382df23cdaaa19 100644 --- a/includes/file.inc +++ b/includes/file.inc @@ -8,8 +8,8 @@ /** * @defgroup file File interface - * Common file handling functions. * @{ + * Common file handling functions. */ define('FILE_DOWNLOADS_PUBLIC', 1); diff --git a/includes/menu.inc b/includes/menu.inc index 26354247d70df908d763d12dc9595870ef4a8147..9ac5a26474aca19e602db33b022d9c98adc4f23d 100644 --- a/includes/menu.inc +++ b/includes/menu.inc @@ -9,6 +9,7 @@ /** * @defgroup menu Menu system * @{ + * Define the navigation menus, and route page requests to code based on URLs. * * The Drupal menu system drives both the navigation system from a user * perspective and the callback system that Drupal uses to respond to URLs @@ -66,10 +67,11 @@ */ /** - * @name Menu Flags + * @name Menu flags * @{ * Flags for use in the "type" attribute of menu items. */ + define('MENU_IS_ROOT', 0x0001); define('MENU_VISIBLE_IN_TREE', 0x0002); define('MENU_VISIBLE_IN_BREADCRUMB', 0x0004); @@ -79,12 +81,13 @@ define('MENU_CREATED_BY_ADMIN', 0x0040); define('MENU_IS_LOCAL_TASK', 0x0080); define('MENU_LINKS_TO_PARENT', 0x0200); + /** - * @} + * @} End of "Menu flags". */ /** - * @name Menu Item Types + * @name Menu item types * @{ * Menu item definitions provide one of these constants, which are shortcuts for * combinations of the above flags. @@ -148,7 +151,7 @@ define('MENU_CUSTOM_MENU', MENU_IS_ROOT | MENU_VISIBLE_IN_TREE | MENU_CREATED_BY_ADMIN | MENU_MODIFIABLE_BY_ADMIN); /** - * @} + * @} End of "Menu item types". */ /** @@ -156,11 +159,13 @@ * @{ * Status codes for menu callbacks. */ + define('MENU_FOUND', 1); define('MENU_NOT_FOUND', 2); define('MENU_ACCESS_DENIED', 3); + /** - * @} + * @} End of "Menu status codes". */ /** @@ -509,17 +514,10 @@ function menu_rebuild() { _menu_build(); } -/** - * @} end of defgroup menu - */ - -/** - * @addtogroup themeable - * @{ - */ - /** * Returns a rendered menu tree. + * + * @ingroup themeable */ function theme_menu_tree($pid = 1, $all = FALSE) { $menu = menu_get_menu(); @@ -550,6 +548,8 @@ function theme_menu_tree($pid = 1, $all = FALSE) { * * @param $mid * The menu ID to render. + * + * @ingroup themeable */ function theme_menu_item($mid) { $menu = menu_get_menu(); @@ -565,6 +565,8 @@ function theme_menu_item($mid) { /** * Returns the rendered local tasks. The default implementation renders * them as tabs. + * + * @ingroup themeable */ function theme_menu_local_tasks() { $local_tasks = menu_get_local_tasks(); @@ -599,6 +601,8 @@ function theme_menu_local_tasks() { * The menu ID to render. * @param $active * Whether this tab or a subtab is the active menu item. + * + * @ingroup themeable */ function theme_menu_local_task($mid, $active) { if ($active) { @@ -610,7 +614,7 @@ function theme_menu_local_task($mid, $active) { } /** - * @} end of addtogroup themeable + * @} End of "defgroup menu". */ /** diff --git a/includes/module.inc b/includes/module.inc index 62c2cbae9de057959591b48eb06fdf9788c11f08..c244c23f91581cf56b714b029750db3d0ecfa6cf 100644 --- a/includes/module.inc +++ b/includes/module.inc @@ -170,6 +170,8 @@ function module_exist($module) { /** * @defgroup hooks Hooks + * @{ + * Allow modules to interact with the Drupal core. * * Drupal's module system is based on the concept of "hooks". A hook is a PHP * function that is named foo_bar(), where "foo" is the name of the module (whose @@ -185,8 +187,6 @@ function module_exist($module) { * the module name is the hook definitions. For example, if the module file is * called example.module, then hook_help() as implemented by that module would be * defined as example_help(). - * - * @{ */ /** @@ -250,7 +250,7 @@ function module_invoke_all($hook, $a1 = NULL, $a2 = NULL, $a3 = NULL, $a4 = NULL } /** - * @} end of defgroup hooks + * @} End of "defgroup hooks". */ ?> diff --git a/includes/pager.inc b/includes/pager.inc index f3546a269c898c0ed96ef2250b523ebadd2c319d..913603d7adb3f43e311f7fc63cd20c255aa1528f 100644 --- a/includes/pager.inc +++ b/includes/pager.inc @@ -8,7 +8,6 @@ /** * Perform a paged database query. - * @ingroup database * * Use this function when doing select queries you wish to be able to page. The * pager uses LIMIT-based queries to fetch only the records required to render a @@ -44,6 +43,8 @@ * @return * A database query result resource, or FALSE if the query was not executed * correctly. + * + * @ingroup database */ function pager_query($query, $limit = 10, $element = 0, $count_query = NULL) { global $pager_from_array, $pager_total; @@ -65,11 +66,6 @@ function pager_query($query, $limit = 10, $element = 0, $count_query = NULL) { return call_user_func_array('db_query_range', array_merge(array($query), $args, array((int)$pager_from_array[$element], (int)$limit))); } -/** - * @addtogroup themeable - * @{ - */ - /** * Format a query pager. * @@ -86,6 +82,8 @@ function pager_query($query, $limit = 10, $element = 0, $count_query = NULL) { * An associative array of query string parameters to append to the pager links. * @return * An HTML string that generates the query pager. + * + * @ingroup themeable */ function theme_pager($tags = array(), $limit = 10, $element = 0, $attributes = array()) { global $pager_total; @@ -104,15 +102,11 @@ function theme_pager($tags = array(), $limit = 10, $element = 0, $attributes = a } } -/** - * @} end of addtogroup themeable - */ - /** * @name Pager pieces - * Use these pieces to construct your own custom pagers in your theme. Note - * that you should NOT modify this file to customize your pager. * @{ + * Use these pieces to construct your own custom pagers in your theme. Note that + * you should NOT modify this file to customize your pager. */ /** @@ -282,9 +276,9 @@ function pager_list($limit, $element = 0, $quantity = 5, $text = '', $attributes $pager_max++; $pager_current++; } -// End of marker calculations. + // End of marker calculations. -// Prepare for generation loop. + // Prepare for generation loop. $i = (int)$pager_first; if ($pager_last > $pager_max) { // Adjust "center" if at end of query. @@ -296,7 +290,7 @@ function pager_list($limit, $element = 0, $quantity = 5, $text = '', $attributes $pager_last = $pager_last + (1 - $i); $i = 1; } -// End of generation loop preparation. + // End of generation loop preparation. // When there is more than one page, create the pager list. if ($i != $pager_max) { @@ -325,7 +319,9 @@ function pager_list($limit, $element = 0, $quantity = 5, $text = '', $attributes return $output; } -/* @} End of member group pager pieces */ +/** + * @} End of "Pager pieces". + */ /** * Format a link to a specific query result page. @@ -360,14 +356,14 @@ function pager_link($from_new, $element, $attributes = array()) { function pager_load_array($value, $element, $old_array) { $new_array = $old_array; - // look for empty elements + // Look for empty elements. for ($i = 0; $i < $element; $i++) { if (!$new_array[$i]) { - // load found empty element with 0 + // Load found empty element with 0. $new_array[$i] = 0; } } - // update the changed element + // Update the changed element. $new_array[$element] = (int)$value; return $new_array; } diff --git a/includes/tablesort.inc b/includes/tablesort.inc index 064b8e8242210026dd24bed274e28046fb68e2d4..d41c3aab3bebdc27f0a3033de9c0c8e79d9e5a43 100644 --- a/includes/tablesort.inc +++ b/includes/tablesort.inc @@ -33,7 +33,6 @@ function tablesort_pager() { /** * Create an SQL sort clause. - * @ingroup database * * This function produces the ORDER BY clause to insert in your SQL queries, * assuring that the returned database table rows match the sort order chosen @@ -46,6 +45,8 @@ function tablesort_pager() { * Useful for sorting by important attributes like "sticky" first. * @return * An SQL string to append to the end of a query. + * + * @ingroup database */ function tablesort_sql($header, $before = '') { $ts = tablesort_init($header); diff --git a/includes/theme.inc b/includes/theme.inc index d9f8a5de63ba9fe717353ac3c23054bbd221251d..57c2b1724eb0c96930c73edbd6cd2b14f5763da9 100644 --- a/includes/theme.inc +++ b/includes/theme.inc @@ -322,13 +322,14 @@ function theme_get_styles() { /** * @defgroup themeable Themeable functions * @{ + * Functions that display HTML, and which can be customized by themes. * * All functions that produce HTML for display should be themeable. This means * that they should be named with the theme_ prefix, and invoked using theme() * rather than being called directly. This allows themes to override the display * of any Drupal object. * - * @see theme.inc + * The theme system is described and defined in theme.inc. */ /** @@ -805,7 +806,7 @@ function theme_blocks($region) { return $output; } /** - * @} end of defgroup themeable + * @} End of "defgroup themeable". */ function _theme_table_cell($cell, $header = 0) { diff --git a/modules/aggregator.module b/modules/aggregator.module index 65cfbf52acb16f2f1787ee7ab5f58351e8fdc133..57b98c50b06e6b062d9cb8c46a997bb61e3e0945 100644 --- a/modules/aggregator.module +++ b/modules/aggregator.module @@ -1019,12 +1019,11 @@ function aggregator_page_categories() { } /** - * @addtogroup themeable - * @{ + * Format a news feed. + * + * @ingroup themeable */ - function theme_aggregator_feed($feed) { - $output = ''; if ($feed->image) { @@ -1048,6 +1047,11 @@ function theme_aggregator_feed($feed) { return $output; } +/** + * Format an individual feed item for display in the block. + * + * @ingroup themeable + */ function theme_aggregator_block_item($item, $feed = 0) { global $user; @@ -1057,18 +1061,20 @@ function theme_aggregator_block_item($item, $feed = 0) { } } - // external link + // Display the external link to the item. $output .= "<a href=\"$item->link\">$item->title</a>\n"; return $output; } /** - * Returns a themed item heading for summary pages located at - * aggregator/sources and aggregator/categories. + * Return a themed item heading for summary pages located at "aggregator/sources" + * and "aggregator/categories". * * @param $item The item object from the aggregator module. * @return A string containing the output. + * + * @ingroup themeable */ function theme_aggregator_summary_item($item) { $output = '<a href="'. check_url($item->link) .'">'. $item->title .'</a> <span class="age">'. t('%age old', array('%age' => format_interval(time() - $item->timestamp))) .'</span>'; @@ -1078,6 +1084,11 @@ function theme_aggregator_summary_item($item) { return $output ."\n"; } +/** + * Format an individual feed item for display on the aggregator page. + * + * @ingroup themeable + */ function theme_aggregator_page_item($item) { static $last; @@ -1113,6 +1124,4 @@ function theme_aggregator_page_item($item) { return $output; } -/** @} End of addtogroup themeable */ - ?> diff --git a/modules/aggregator/aggregator.module b/modules/aggregator/aggregator.module index 65cfbf52acb16f2f1787ee7ab5f58351e8fdc133..57b98c50b06e6b062d9cb8c46a997bb61e3e0945 100644 --- a/modules/aggregator/aggregator.module +++ b/modules/aggregator/aggregator.module @@ -1019,12 +1019,11 @@ function aggregator_page_categories() { } /** - * @addtogroup themeable - * @{ + * Format a news feed. + * + * @ingroup themeable */ - function theme_aggregator_feed($feed) { - $output = ''; if ($feed->image) { @@ -1048,6 +1047,11 @@ function theme_aggregator_feed($feed) { return $output; } +/** + * Format an individual feed item for display in the block. + * + * @ingroup themeable + */ function theme_aggregator_block_item($item, $feed = 0) { global $user; @@ -1057,18 +1061,20 @@ function theme_aggregator_block_item($item, $feed = 0) { } } - // external link + // Display the external link to the item. $output .= "<a href=\"$item->link\">$item->title</a>\n"; return $output; } /** - * Returns a themed item heading for summary pages located at - * aggregator/sources and aggregator/categories. + * Return a themed item heading for summary pages located at "aggregator/sources" + * and "aggregator/categories". * * @param $item The item object from the aggregator module. * @return A string containing the output. + * + * @ingroup themeable */ function theme_aggregator_summary_item($item) { $output = '<a href="'. check_url($item->link) .'">'. $item->title .'</a> <span class="age">'. t('%age old', array('%age' => format_interval(time() - $item->timestamp))) .'</span>'; @@ -1078,6 +1084,11 @@ function theme_aggregator_summary_item($item) { return $output ."\n"; } +/** + * Format an individual feed item for display on the aggregator page. + * + * @ingroup themeable + */ function theme_aggregator_page_item($item) { static $last; @@ -1113,6 +1124,4 @@ function theme_aggregator_page_item($item) { return $output; } -/** @} End of addtogroup themeable */ - ?> diff --git a/modules/filter.module b/modules/filter.module index 849c9ca4db4448b8a6b7707e8fb9b71727bba256..5c6931eed4ad4d5199e0fef9cb07abac287f83f3 100644 --- a/modules/filter.module +++ b/modules/filter.module @@ -558,11 +558,9 @@ function filter_list_format($format) { /** * @name Filtering functions - * + * @{ * Modules which need to have content filtered can use these functions to * interact with the filter system. - * - * @{ */ /** @@ -666,7 +664,9 @@ function filter_access($format) { return isset($formats[$format]); } } -/* @} */ +/** + * @} End of "Filtering functions". + */ /** * Menu callback; show a page with long filter tips. @@ -710,16 +710,9 @@ function _filter_tips($format, $long = false) { } /** - * @addtogroup themeable - * @{ - */ - -/** - * Format filter tips + * Format a set of filter tips. * - * @param $tips - * @param $long - * @param $extra + * @ingroup themeable */ function theme_filter_tips($tips, $long = false, $extra = '') { $output = ''; @@ -758,13 +751,10 @@ function theme_filter_tips($tips, $long = false, $extra = '') { return $output; } -/** @} End of addtogroup themeable */ - /** * @name Standard filters - * - * Filters implemented by the filter.module. * @{ + * Filters implemented by the filter.module. */ /** @@ -879,6 +869,8 @@ function _filter_autop($text) { return $text; } -/* @} */ +/** + * @} End of "Standard filters". + */ ?> diff --git a/modules/filter/filter.module b/modules/filter/filter.module index 849c9ca4db4448b8a6b7707e8fb9b71727bba256..5c6931eed4ad4d5199e0fef9cb07abac287f83f3 100644 --- a/modules/filter/filter.module +++ b/modules/filter/filter.module @@ -558,11 +558,9 @@ function filter_list_format($format) { /** * @name Filtering functions - * + * @{ * Modules which need to have content filtered can use these functions to * interact with the filter system. - * - * @{ */ /** @@ -666,7 +664,9 @@ function filter_access($format) { return isset($formats[$format]); } } -/* @} */ +/** + * @} End of "Filtering functions". + */ /** * Menu callback; show a page with long filter tips. @@ -710,16 +710,9 @@ function _filter_tips($format, $long = false) { } /** - * @addtogroup themeable - * @{ - */ - -/** - * Format filter tips + * Format a set of filter tips. * - * @param $tips - * @param $long - * @param $extra + * @ingroup themeable */ function theme_filter_tips($tips, $long = false, $extra = '') { $output = ''; @@ -758,13 +751,10 @@ function theme_filter_tips($tips, $long = false, $extra = '') { return $output; } -/** @} End of addtogroup themeable */ - /** * @name Standard filters - * - * Filters implemented by the filter.module. * @{ + * Filters implemented by the filter.module. */ /** @@ -879,6 +869,8 @@ function _filter_autop($text) { return $text; } -/* @} */ +/** + * @} End of "Standard filters". + */ ?> diff --git a/modules/forum.module b/modules/forum.module index 9be309d161f01cb80508420454daf5edf76170e8..478827107da565ad9fb920ff0fb0bb5d517a3e47 100644 --- a/modules/forum.module +++ b/modules/forum.module @@ -490,22 +490,10 @@ function forum_page($tid = 0, $display = 'all') { } } -/** - * @addtogroup themeable - * @{ - */ - /** * Format the forum body. * - * @param forums - * @param topics - * @param parents - * @param tid - * @param sortby - * @param forum_per_page - * - * @return the output for the forum body. + * @ingroup themeable */ function theme_forum_display($forums, $topics, $parents, $tid, $sortby, $forum_per_page) { global $user; @@ -575,11 +563,7 @@ function theme_forum_display($forums, $topics, $parents, $tid, $sortby, $forum_p /** * Format the forum listing. * - * @param forums - * @param parents - * @param tid - * - * @return output for the forum listing. + * @ingroup themeable */ function theme_forum_list($forums, $parents, $tid) { global $user; @@ -632,12 +616,7 @@ function theme_forum_list($forums, $parents, $tid) { /** * Format the topic listing. * - * @param tid - * @param topics - * @param sortby - * @param forum_per_page - * - * @return output for the topic list. + * @ingroup themeable */ function theme_forum_topic_list($tid, $topics, $sortby, $forum_per_page) { global $forum_topic_list_header; @@ -674,8 +653,6 @@ function theme_forum_topic_list($tid, $topics, $sortby, $forum_per_page) { return $output; } -/** @} End of addtogroup themeable */ - function _forum_icon($new_posts, $num_posts = 0, $comment_mode = 0, $sticky = 0) { $base_path = variable_get('forum_icon_path', ''); diff --git a/modules/forum/forum.module b/modules/forum/forum.module index 9be309d161f01cb80508420454daf5edf76170e8..478827107da565ad9fb920ff0fb0bb5d517a3e47 100644 --- a/modules/forum/forum.module +++ b/modules/forum/forum.module @@ -490,22 +490,10 @@ function forum_page($tid = 0, $display = 'all') { } } -/** - * @addtogroup themeable - * @{ - */ - /** * Format the forum body. * - * @param forums - * @param topics - * @param parents - * @param tid - * @param sortby - * @param forum_per_page - * - * @return the output for the forum body. + * @ingroup themeable */ function theme_forum_display($forums, $topics, $parents, $tid, $sortby, $forum_per_page) { global $user; @@ -575,11 +563,7 @@ function theme_forum_display($forums, $topics, $parents, $tid, $sortby, $forum_p /** * Format the forum listing. * - * @param forums - * @param parents - * @param tid - * - * @return output for the forum listing. + * @ingroup themeable */ function theme_forum_list($forums, $parents, $tid) { global $user; @@ -632,12 +616,7 @@ function theme_forum_list($forums, $parents, $tid) { /** * Format the topic listing. * - * @param tid - * @param topics - * @param sortby - * @param forum_per_page - * - * @return output for the topic list. + * @ingroup themeable */ function theme_forum_topic_list($tid, $topics, $sortby, $forum_per_page) { global $forum_topic_list_header; @@ -674,8 +653,6 @@ function theme_forum_topic_list($tid, $topics, $sortby, $forum_per_page) { return $output; } -/** @} End of addtogroup themeable */ - function _forum_icon($new_posts, $num_posts = 0, $comment_mode = 0, $sticky = 0) { $base_path = variable_get('forum_icon_path', ''); diff --git a/modules/node.module b/modules/node.module index 10cb1b3c9c436c67373328b64951ea3c0a6fa41b..d750593cb189b31800dcea7ab0dbb5d7234e6662 100644 --- a/modules/node.module +++ b/modules/node.module @@ -65,13 +65,12 @@ function node_cron() { } /** - * Menu callback; presents node-specific imformation from admin/help. + * Menu callback; presents node-specific imformation from "admin/help". */ function node_help_page() { print theme('page', node_help('admin/help#node')); } - /** * Gather a listing of links to nodes. * @@ -131,7 +130,7 @@ function node_last_viewed($nid) { } /** - * Determines whether the supplied timestamp is newer than the user's last view + * Determine whether the supplied timestamp is newer than the user's last view * of a given node. * * @param $nid @@ -156,7 +155,7 @@ function node_is_new($nid, $timestamp) { } /** - * Autogenerate a teaser for the given body text. + * Automatically generate a teaser for the given body text. */ function node_teaser($body) { @@ -235,7 +234,7 @@ function node_teaser($body) { /** - * Determines the module that defines the node type of the given node. + * Determine the module that defines the node type of the given node. * * @param &$node * Either a node object, a node array, or a string containing the node type. @@ -273,7 +272,7 @@ function node_get_module_name($node) { * Get a list of all the defined node types. * * @return - * An list of all node types. + * A list of all node types. */ function node_list() { $types = array(); @@ -703,7 +702,7 @@ function node_admin_edit($node) { } /** - * Generate the content administation overview. + * Generate the content administration overview. */ function node_admin_nodes() { $filters = array( @@ -835,7 +834,7 @@ function node_default_settings() { } /** - * Generates an overview table of older revisions of a node. + * Generate an overview table of older revisions of a node. */ function node_revision_overview($nid) { if (user_access('administer nodes')) { @@ -1028,7 +1027,7 @@ function node_feed($nodes = 0, $channel = array()) { } /** - * Preform validation checks on the given node. + * Perform validation checks on the given node. */ function node_validate($node) { global $user; @@ -1670,11 +1669,9 @@ function node_access_join_sql($node_alias = 'n', $node_access_alias = 'na') { */ function node_access_where_sql($op = 'view', $node_access_alias = 'na') { if (user_access('administer nodes')) { - /** - * This number is being used in a SQL query in a boolean nature. - * It is "'1'" instead of "1" for database compatibility, as both - * Postgres and Mysql treat it as boolean in this case. - */ + // This number is being used in a SQL query as a boolean. + // It is "'1'" instead of "1" for database compatibility, as both + // PostgreSQL and MySQL treat it as boolean in this case. return "'1'"; } @@ -1718,7 +1715,7 @@ function node_access_grants($op, $uid = NULL) { } /** - * @} end of defgroup node_access + * @} End of "defgroup node_access". */ ?> diff --git a/modules/node/node.module b/modules/node/node.module index 10cb1b3c9c436c67373328b64951ea3c0a6fa41b..d750593cb189b31800dcea7ab0dbb5d7234e6662 100644 --- a/modules/node/node.module +++ b/modules/node/node.module @@ -65,13 +65,12 @@ function node_cron() { } /** - * Menu callback; presents node-specific imformation from admin/help. + * Menu callback; presents node-specific imformation from "admin/help". */ function node_help_page() { print theme('page', node_help('admin/help#node')); } - /** * Gather a listing of links to nodes. * @@ -131,7 +130,7 @@ function node_last_viewed($nid) { } /** - * Determines whether the supplied timestamp is newer than the user's last view + * Determine whether the supplied timestamp is newer than the user's last view * of a given node. * * @param $nid @@ -156,7 +155,7 @@ function node_is_new($nid, $timestamp) { } /** - * Autogenerate a teaser for the given body text. + * Automatically generate a teaser for the given body text. */ function node_teaser($body) { @@ -235,7 +234,7 @@ function node_teaser($body) { /** - * Determines the module that defines the node type of the given node. + * Determine the module that defines the node type of the given node. * * @param &$node * Either a node object, a node array, or a string containing the node type. @@ -273,7 +272,7 @@ function node_get_module_name($node) { * Get a list of all the defined node types. * * @return - * An list of all node types. + * A list of all node types. */ function node_list() { $types = array(); @@ -703,7 +702,7 @@ function node_admin_edit($node) { } /** - * Generate the content administation overview. + * Generate the content administration overview. */ function node_admin_nodes() { $filters = array( @@ -835,7 +834,7 @@ function node_default_settings() { } /** - * Generates an overview table of older revisions of a node. + * Generate an overview table of older revisions of a node. */ function node_revision_overview($nid) { if (user_access('administer nodes')) { @@ -1028,7 +1027,7 @@ function node_feed($nodes = 0, $channel = array()) { } /** - * Preform validation checks on the given node. + * Perform validation checks on the given node. */ function node_validate($node) { global $user; @@ -1670,11 +1669,9 @@ function node_access_join_sql($node_alias = 'n', $node_access_alias = 'na') { */ function node_access_where_sql($op = 'view', $node_access_alias = 'na') { if (user_access('administer nodes')) { - /** - * This number is being used in a SQL query in a boolean nature. - * It is "'1'" instead of "1" for database compatibility, as both - * Postgres and Mysql treat it as boolean in this case. - */ + // This number is being used in a SQL query as a boolean. + // It is "'1'" instead of "1" for database compatibility, as both + // PostgreSQL and MySQL treat it as boolean in this case. return "'1'"; } @@ -1718,7 +1715,7 @@ function node_access_grants($op, $uid = NULL) { } /** - * @} end of defgroup node_access + * @} End of "defgroup node_access". */ ?> diff --git a/modules/search.module b/modules/search.module index 4143cfda2223d27993bcea7930caad2915de55c1..f42c1e2bad08cfffde8bdf76901fd9bb5c0ed088 100644 --- a/modules/search.module +++ b/modules/search.module @@ -246,7 +246,7 @@ function update_index($search_array) { // Trash any existing entries in the search index for this node, // in case it is a modified node. - db_query("DELETE from {search_index} where lno = '". $node['lno'] ."' and type = '". $node_type ."'"); + db_query("DELETE from {search_index} WHERE lno = '". $node['lno'] ."' AND type = '". $node_type ."'"); // Build the word list (teaser not included, as it would give a // false count of the number of hits). diff --git a/modules/search/search.module b/modules/search/search.module index 4143cfda2223d27993bcea7930caad2915de55c1..f42c1e2bad08cfffde8bdf76901fd9bb5c0ed088 100644 --- a/modules/search/search.module +++ b/modules/search/search.module @@ -246,7 +246,7 @@ function update_index($search_array) { // Trash any existing entries in the search index for this node, // in case it is a modified node. - db_query("DELETE from {search_index} where lno = '". $node['lno'] ."' and type = '". $node_type ."'"); + db_query("DELETE from {search_index} WHERE lno = '". $node['lno'] ."' AND type = '". $node_type ."'"); // Build the word list (teaser not included, as it would give a // false count of the number of hits).