webmaster@1: '. t('Help topics') .'
'. t('Help is available on the following items:') .'
'. help_links_as_list(); webmaster@1: return $output; webmaster@1: } webmaster@1: webmaster@1: /** webmaster@1: * Menu callback; prints a page listing general help for a module. webmaster@1: */ webmaster@1: function help_page($name) { webmaster@1: $output = ''; webmaster@1: if (module_hook($name, 'help')) { webmaster@1: $module = drupal_parse_info_file(drupal_get_path('module', $name) .'/'. $name .'.info'); webmaster@1: drupal_set_title($module['name']); webmaster@1: webmaster@1: $temp = module_invoke($name, 'help', "admin/help#$name", drupal_help_arg()); webmaster@1: if (empty($temp)) { webmaster@1: $output .= t("No help is available for module %module.", array('%module' => $module['name'])); webmaster@1: } webmaster@1: else { webmaster@1: $output .= $temp; webmaster@1: } webmaster@1: webmaster@1: // Only print list of administration pages if the module in question has webmaster@1: // any such pages associated to it. webmaster@1: $admin_tasks = system_get_module_admin_tasks($name); webmaster@1: if (!empty($admin_tasks)) { webmaster@1: ksort($admin_tasks); webmaster@1: $output .= theme('item_list', $admin_tasks, t('@module administration pages', array('@module' => $module['name']))); webmaster@1: } webmaster@1: webmaster@1: } webmaster@1: return $output; webmaster@1: } webmaster@1: webmaster@1: function help_links_as_list() { webmaster@1: $empty_arg = drupal_help_arg(); webmaster@1: $module_info = module_rebuild_cache(); webmaster@1: webmaster@1: $modules = array(); webmaster@1: foreach (module_implements('help', TRUE) as $module) { webmaster@1: if (module_invoke($module, 'help', "admin/help#$module", $empty_arg)) { webmaster@1: $modules[$module] = $module_info[$module]->info['name']; webmaster@1: } webmaster@1: } webmaster@1: asort($modules); webmaster@1: webmaster@1: // Output pretty four-column list webmaster@1: $count = count($modules); webmaster@1: $break = ceil($count / 4); webmaster@1: $output = '