diff --git a/js/server_plugins.js b/js/server_plugins.js new file mode 100644 index 0000000000..8c155d3302 --- /dev/null +++ b/js/server_plugins.js @@ -0,0 +1,13 @@ +/** + * Functions used in server plugins pages + */ + +$(function() { + // Add tabs + $('#pluginsTabs').tabs({ + // Tab persistence + cookie: { name: 'pma_serverStatusTabs', expires: 1 }, + // Fixes line break in the menu bar when the page overflows and scrollbar appears + show: function() { menuResize(); } + }); +}); \ No newline at end of file diff --git a/server_plugins.php b/server_plugins.php index d85701c04c..3738583793 100644 --- a/server_plugins.php +++ b/server_plugins.php @@ -18,6 +18,13 @@ if (! defined('PMA_NO_VARIABLES_IMPORT')) { */ require_once './libraries/common.inc.php'; +/** + * JS includes + */ +$GLOBALS['js_include'][] = 'jquery/jquery-ui-1.8.custom.js'; +$GLOBALS['js_include'][] = 'jquery/jquery.cookie.js'; +$GLOBALS['js_include'][] = 'server_plugins.js'; + /** * Does the common work */ @@ -29,7 +36,6 @@ require './libraries/server_common.inc.php'; */ require './libraries/server_links.inc.php'; - /** * Displays the sub-page heading */ @@ -40,7 +46,6 @@ echo '

' . "\n" . "\n" . __('Plugins') . "\n" . '

' . "\n"; - /** * Prepare plugin list */ @@ -50,74 +55,146 @@ $sql = "SELECT p.plugin_name, p.plugin_type, p.is_active, m.module_name, m.modul JOIN data_dictionary.modules m USING (module_name) ORDER BY m.module_name, p.plugin_type, p.plugin_name"; $res = PMA_DBI_query($sql); +$plugins = array(); $modules = array(); while ($row = PMA_DBI_fetch_assoc($res)) { + $plugins[$row['plugin_type']][] = $row; $modules[$row['module_name']]['info'] = $row; $modules[$row['module_name']]['plugins'][$row['plugin_type']][] = $row; } PMA_DBI_free_result($res); +// sort plugin list (modules are already sorted) +ksort($plugins); + /** * Displays the page */ ?> - - - - - - - - - - - - - $module) { - $odd_row = !$odd_row; -?> - - - - - - - - - - + + + +
- - - $plugin_list) { - ?> - - - + + + +
- ' : '') . htmlspecialchars($plugin_list[$i]['plugin_name']); - if (!$plugin_list[$i]['is_active']) { - echo ' ' . __('disabled') . ''; +
+
    +
  • +
  • +
+ +
+ +
+ $plugin_list) { + $key = preg_replace('/[^a-z]/i', '', $plugin_type); + sort($plugin_list); + ?> + + + + + + + + + + + + + + + + + + + + + + + + +
+ ' + : ''; ?> + +
+ +
+
+ + + + + + + + + + + + + $module) { + $odd_row = !$odd_row; + ?> + + + + + + + + + + - - - -
+ + + $plugin_list) { + ?> + + + - - - -
+ ' : '') . htmlspecialchars($plugin_list[$i]['plugin_name']); + if (!$plugin_list[$i]['is_active']) { + echo ' ' . __('disabled') . ''; + } } - } - ?> -
-
+ ?> +
+
+ + getImgPath(); ?>col_hide.png); color: #CCC; diff --git a/themes/pmahomme/css/theme_right.css.php b/themes/pmahomme/css/theme_right.css.php index a6ce99fbe6..079af9b367 100644 --- a/themes/pmahomme/css/theme_right.css.php +++ b/themes/pmahomme/css/theme_right.css.php @@ -63,11 +63,16 @@ h2 img{display:none;} h2 a img{display:inline;} -.data{ +.data, +.data_full_width { margin: 0 0 12px 0; position: relative; } +.data_full_width { + width: 100%; +} + h3 { font-weight: bold; }