From 471d5593744db7fcbee602667e9e098da8cc1791 Mon Sep 17 00:00:00 2001 From: Thomas Bruederli Date: Sun, 5 Aug 2012 14:01:22 +0200 Subject: Update installto/update script to remove old default skins and copy all necessary files; repeat notice about missing config options after auto-update --- bin/installto.sh | 16 +++++++++++++--- bin/update.sh | 6 ++++++ installer/rcube_install.php | 4 ++-- 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/bin/installto.sh b/bin/installto.sh index 3a64476a6..7fdd1b909 100755 --- a/bin/installto.sh +++ b/bin/installto.sh @@ -5,7 +5,7 @@ | bin/installto.sh | | | | This file is part of the Roundcube Webmail client | - | Copyright (C) 2011, The Roundcube Dev Team | + | Copyright (C) 2012, The Roundcube Dev Team | | | | Licensed under the GNU General Public License version 3 or | | any later version with exceptions for skins & plugins. | @@ -50,14 +50,24 @@ if (strtolower($input) == 'y') { break; } } - foreach (array('index.php','.htaccess','config/main.inc.php.dist','config/db.inc.php.dist','CHANGELOG','README','UPGRADING') as $file) { + foreach (array('index.php','.htaccess','config/main.inc.php.dist','config/db.inc.php.dist','CHANGELOG','README.md','UPGRADING','LICENSE') as $file) { if (!system("rsync -av " . INSTALL_PATH . "$file $target_dir/$file")) { $err = true; break; } } echo "done.\n\n"; - + + if (is_dir("$target_dir/skins/default")) { + echo "Removing old default skin..."; + system("rm -rf $target_dir/skins/default"); + foreach (glob(INSTALL_PATH . "plugins/*/skins") as $plugin_skin_dir) { + $plugin_skin_dir = preg_replace('!^.*' . INSTALL_PATH . '!', '', $plugin_skin_dir); + system("rm -rf $target_dir/$plugin_skin_dir/default"); + } + echo "done.\n\n"; + } + if (!$err) { echo "Running update script at target...\n"; system("cd $target_dir && bin/update.sh --version=$oldversion"); diff --git a/bin/update.sh b/bin/update.sh index 60dc95b9d..797c69aa0 100755 --- a/bin/update.sh +++ b/bin/update.sh @@ -111,6 +111,12 @@ if ($RCI->configured) { if ($write1 && $write2) { echo "Done.\n"; echo "Your configuration files are now up-to-date!\n"; + + if ($messages['missing']) { + echo "But you still need to add the following missing options:\n"; + foreach ($messages['missing'] as $msg) + echo "- '" . $msg['prop'] . ($msg['name'] ? "': " . $msg['name'] : "'") . "\n"; + } } else { echo "Failed to write config files!\n"; diff --git a/installer/rcube_install.php b/installer/rcube_install.php index 01238596b..2fe85c5f6 100644 --- a/installer/rcube_install.php +++ b/installer/rcube_install.php @@ -5,7 +5,7 @@ | rcube_install.php | | | | This file is part of the Roundcube Webmail package | - | Copyright (C) 2008-2011, The Roundcube Dev Team | + | Copyright (C) 2008-2012, The Roundcube Dev Team | | | | Licensed under the GNU General Public License version 3 or | | any later version with exceptions for skins & plugins. | @@ -263,7 +263,7 @@ class rcube_install } else if (!empty($this->config['spellcheck_languages'])) { foreach ($this->config['spellcheck_languages'] as $lang => $descr) - if (!pspell_new($lang)) + if (!@pspell_new($lang)) $out['dependencies'][] = array('prop' => 'spellcheck_languages', 'explain' => "You are missing pspell support for language $lang ($descr)"); } -- cgit v1.2.3