|
|
|
@ -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');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|