diff options
author | Dries Buytaert <dries@buytaert.net> | 2008-05-05 21:10:48 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2008-05-05 21:10:48 +0000 |
commit | 6ab934660c2abaf3350dacd0368e75f7f8fce90e (patch) | |
tree | fc22b4a123171e8826db84adef528d00df225e42 | |
parent | bca16fdef6108c5ba6e4a8b3f88417e92ee2991d (diff) | |
download | brdo-6ab934660c2abaf3350dacd0368e75f7f8fce90e.tar.gz brdo-6ab934660c2abaf3350dacd0368e75f7f8fce90e.tar.bz2 |
- Patch #192962 by gpk et al: ghop #24, module administration page improvements.
-rw-r--r-- | modules/system/system.admin.inc | 17 | ||||
-rw-r--r-- | modules/system/system.css | 4 | ||||
-rw-r--r-- | themes/garland/style.css | 4 |
3 files changed, 24 insertions, 1 deletions
diff --git a/modules/system/system.admin.inc b/modules/system/system.admin.inc index fc7868cc2..43416c9c5 100644 --- a/modules/system/system.admin.inc +++ b/modules/system/system.admin.inc @@ -639,6 +639,8 @@ function system_modules($form_state = array()) { } } + // Used when checking if module implements a help page. + $help_arg = module_exists('help') ? drupal_help_arg() : FALSE; // Array for disabling checkboxes in callback system_module_disable. $disabled = array(); // Traverse the files retrieved and build the form. @@ -646,6 +648,15 @@ function system_modules($form_state = array()) { $form['name'][$filename] = array('#value' => $file->info['name']); $form['version'][$filename] = array('#value' => $file->info['version']); $form['description'][$filename] = array('#value' => t($file->info['description'])); + + // Generate link for module's help page, if there is one. + if ($help_arg && module_hook($filename, 'help')) { + if (module_invoke($filename, 'help', "admin/help#$filename", $help_arg)) { + // Module has a help page. + $form['help'][$filename] = array('#value' => theme('more_help_link', url("admin/help/$filename"))); + } + } + $options[$filename] = ''; // Ensure this module is compatible with this version of core and php. if (_system_is_incompatible($incompatible_core, $files, $file) || _system_is_incompatible($incompatible_php, $files, $file)) { @@ -2078,7 +2089,11 @@ function theme_system_modules($form) { $rows = array(); foreach ($modules as $key => $module) { $row = array(); - $description = drupal_render($form['description'][$key]); + $description = ''; + if (isset($form['help'][$key])) { + $description = '<div class="module-help">'. drupal_render($form['help'][$key]) .'</div>'; + } + $description .= drupal_render($form['description'][$key]); if (isset($form['status']['#incompatible_modules_core'][$key])) { unset($form['status'][$key]); $status = theme('image', 'misc/watchdog-error.png', t('incompatible'), t('Incompatible with this version of Drupal core')); diff --git a/modules/system/system.css b/modules/system/system.css index ff77303d6..919417ec9 100644 --- a/modules/system/system.css +++ b/modules/system/system.css @@ -163,6 +163,10 @@ tr.merge-up, tr.merge-up td, tr.merge-up th { .more-link { text-align: right; /* LTR */ } +.module-help { + margin-left: 1em; /* LTR */ + float: right; /* LTR */ +} .nowrap { white-space: nowrap; } diff --git a/themes/garland/style.css b/themes/garland/style.css index 8c310c7e9..9f4fb07aa 100644 --- a/themes/garland/style.css +++ b/themes/garland/style.css @@ -250,6 +250,10 @@ span.submitted, .description { color: #898989; } +.description .more-help-link { + font-size: 0.92em; +} + .description { line-height: 150%; margin-bottom: 0.75em; |