summaryrefslogtreecommitdiff
path: root/bin/update.sh
diff options
context:
space:
mode:
Diffstat (limited to 'bin/update.sh')
-rwxr-xr-xbin/update.sh22
1 files changed, 10 insertions, 12 deletions
diff --git a/bin/update.sh b/bin/update.sh
index b5000bbe5..133d9f7ab 100755
--- a/bin/update.sh
+++ b/bin/update.sh
@@ -5,7 +5,7 @@
| bin/update.sh |
| |
| This file is part of the Roundcube Webmail client |
- | Copyright (C) 2010-2011, The Roundcube Dev Team |
+ | Copyright (C) 2010-2013, The Roundcube Dev Team |
| |
| Licensed under the GNU General Public License version 3 or |
| any later version with exceptions for skins & plugins. |
@@ -25,7 +25,7 @@ require_once INSTALL_PATH . 'program/include/clisetup.php';
require_once INSTALL_PATH . 'installer/rcube_install.php';
// get arguments
-$opts = rcube_utils::get_opt(array('v' => 'version'));
+$opts = rcube_utils::get_opt(array('v' => 'version', 'y' => 'accept'));
// ask user if no version is specified
if (!$opts['version']) {
@@ -39,10 +39,6 @@ if (!$opts['version']) {
$RCI = rcube_install::get_instance();
$RCI->load_config();
-if ($opts['version'] && version_compare(version_parse($opts['version']), version_parse(RCMAIL_VERSION), '>=') && !$RCI->legacy_config)
- die("Nothing to be done here. Bye!\n");
-
-
if ($RCI->configured) {
$success = true;
@@ -82,11 +78,13 @@ if ($RCI->configured) {
// ask user to update config files
if ($err) {
- echo "Do you want me to fix your local configuration? (y/N)\n";
- $input = trim(fgets(STDIN));
+ if (!$opts['accept']) {
+ echo "Do you want me to fix your local configuration? (y/N)\n";
+ $input = trim(fgets(STDIN));
+ }
// positive: let's merge the local config with the defaults
- if (strtolower($input) == 'y') {
+ if ($opts['accept'] || strtolower($input) == 'y') {
$error = $written = false;
// backup current config
@@ -146,8 +144,8 @@ if ($RCI->configured) {
}
}
- // check database schema
- if ($RCI->config['db_dsnw']) {
+ // update database schema
+ if ($RCI->config['db_dsnw'] && $opts['version'] && version_compare(version_parse($opts['version']), version_parse(RCMAIL_VERSION), '<')) {
echo "Executing database schema update.\n";
system(INSTALL_PATH . "bin/updatedb.sh --package=roundcube --version=" . $opts['version']
. " --dir=" . INSTALL_PATH . DIRECTORY_SEPARATOR . "SQL", $res);
@@ -156,7 +154,7 @@ if ($RCI->configured) {
}
// index contacts for fulltext searching
- if (version_compare(version_parse($opts['version']), '0.6.0', '<')) {
+ if ($opts['version'] && version_compare(version_parse($opts['version']), '0.6.0', '<')) {
system(INSTALL_PATH . 'bin/indexcontacts.sh');
}