| | |
| | | #!/usr/bin/php |
| | | #!/usr/bin/env php |
| | | <?php |
| | | |
| | | if (php_sapi_name() != 'cli') { |
| | | die('Not on the "shell" (php-cli).'); |
| | | } |
| | | define('INSTALL_PATH', realpath(dirname(__FILE__) . '/..') . '/' ); |
| | | |
| | | require_once INSTALL_PATH . 'program/include/iniset.php'; |
| | |
| | | $RCI->load_config(); |
| | | |
| | | if ($RCI->configured) { |
| | | $success = true; |
| | | |
| | | if ($messages = $RCI->check_config()) { |
| | | $success = false; |
| | | $err = 0; |
| | | |
| | | // list missing config options |
| | |
| | | echo "(These config options should be present in the current configuration)\n"; |
| | | |
| | | foreach ($messages['missing'] as $msg) { |
| | | echo '- ' . $msg['prop'] . ($msg['name'] ? ': ' . $msg['name'] : '') . "\n"; |
| | | echo "- '" . $msg['prop'] . ($msg['name'] ? "': " . $msg['name'] : "'") . "\n"; |
| | | $err++; |
| | | } |
| | | echo "\n"; |
| | |
| | | echo "(These config options have been replaced or renamed)\n"; |
| | | |
| | | foreach ($messages['replaced'] as $msg) { |
| | | echo "- " . $msg['prop'] . "\t\t was replaced by " . $msg['replacement'] . "\n"; |
| | | echo "- '" . $msg['prop'] . "' was replaced by '" . $msg['replacement'] . "'\n"; |
| | | $err++; |
| | | } |
| | | echo "\n"; |
| | |
| | | echo "(You still have some obsolete or inexistent properties set. This isn't a problem but should be noticed)\n"; |
| | | |
| | | foreach ($messages['obsolete'] as $msg) { |
| | | echo "- " . $msg['prop'] . ($msg['name'] ? ': ' . $msg['name'] : '') . "\n"; |
| | | echo "- '" . $msg['prop'] . ($msg['name'] ? "': " . $msg['name'] : "'") . "\n"; |
| | | $err++; |
| | | } |
| | | echo "\n"; |
| | |
| | | echo "Please fix your config files and run this script again!\n"; |
| | | echo "See ya.\n"; |
| | | } |
| | | |
| | | } |
| | | else { |
| | | |
| | | // check database schema |
| | | if ($RCI->config['db_dsnw']) { |
| | | $DB = new rcube_mdb2($RCI->config['db_dsnw'], '', false); |
| | | $DB->db_connect('w'); |
| | | if ($db_error_msg = $DB->is_error()) { |
| | | echo "Error connecting to database: $db_error_msg\n"; |
| | | $success = false; |
| | | } |
| | | else if ($RCI->db_schema_check($DB, false)) { |
| | | $updatefile = INSTALL_PATH . 'SQL/' . $DB->db_provider . '.update.sql'; |
| | | echo "WARNING: Database schema needs to be updated!\n"; |
| | | echo "Open $updatefile and execute all queries that are superscribed with the currently installed version number\n"; |
| | | $success = false; |
| | | } |
| | | } |
| | | |
| | | |
| | | if ($success) { |
| | | echo "This instance of RoundCube is up-to-date.\n"; |
| | | echo "Have fun!\n"; |
| | | } |
| | |
| | | |
| | | echo "\n"; |
| | | |
| | | ?> |
| | | ?> |