From b737021a905a33c8eb4331692475cca7791e533c Mon Sep 17 00:00:00 2001 From: Thomas Bruederli Date: Sat, 27 Dec 2014 14:53:21 +0100 Subject: Improve plugin selection in installer; check already selected plugins --- installer/config.php | 9 +++++---- program/include/rcmail_install.php | 7 ++++--- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/installer/config.php b/installer/config.php index 82d7f55d6..7e69603fc 100644 --- a/installer/config.php +++ b/installer/config.php @@ -680,10 +680,11 @@ echo $select_param_folding->show(strval($RCI->getprop('mime_param_folding'))); $plugins = $RCI->list_plugins(); foreach($plugins as $p) { - $p_check = new html_checkbox(array('name' => '_plugins_'.$p['name'], 'id' => 'cfgplugin_'.$p['name'])); - echo '
'.$p['name'].'
'; - echo $p_check->show(0, array('value' => $p['name'])); - echo '
'; + $p_check = new html_checkbox(array('name' => '_plugins_'.$p['name'], 'id' => 'cfgplugin_'.$p['name'], 'value' => $p['name'])); + echo '
'; + echo '
'; } ?> diff --git a/program/include/rcmail_install.php b/program/include/rcmail_install.php index 26c613a11..2ba90693f 100644 --- a/program/include/rcmail_install.php +++ b/program/include/rcmail_install.php @@ -578,17 +578,18 @@ class rcmail_install foreach (glob($plugin_dir . '*') as $path) { - if (is_dir($path) && file_exists($path.'/composer.json')) + if (is_dir($path) && is_readable($path.'/composer.json')) { $file_json = json_decode(file_get_contents($path.'/composer.json')); - $plugin_desc = $file_json->description; + $plugin_desc = $file_json->description ?: 'N/A'; } else { $plugin_desc = 'N/A'; } - $plugins[] = array('name' => substr($path, strlen($plugin_dir)), 'desc' => $plugin_desc); + $name = substr($path, strlen($plugin_dir)); + $plugins[] = array('name' => $name, 'desc' => $plugin_desc, 'enabled' => in_array($name, $this->config['plugins'])); } return $plugins; -- cgit v1.2.3