| | |
| | | $RCI->load_config(); |
| | | |
| | | if ($RCI->configured) { |
| | | $success = true; |
| | | |
| | | if ($messages = $RCI->check_config()) { |
| | | $success = false; |
| | | $err = 0; |
| | | |
| | | // list missing config options |
| | |
| | | // Success! |
| | | if ($write1 && $write2) { |
| | | echo "Done.\n"; |
| | | echo "Your configuration files are now up-tp-date!\n"; |
| | | echo "Your configuration files are now up-to-date!\n"; |
| | | } |
| | | else { |
| | | echo "Failed to write config files!\n"; |
| | |
| | | echo "Please fix your config files and run this script again!\n"; |
| | | echo "See ya.\n"; |
| | | } |
| | | |
| | | } |
| | | else { |
| | | echo "This instance of RoundCube is up-to-date.\n"; |
| | | |
| | | // 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)) { |
| | | $db_map = array('pgsql' => 'postgres', 'mysqli' => 'mysql', 'sqlsrv' => 'mssql'); |
| | | $updatefile = INSTALL_PATH . 'SQL/' . (isset($db_map[$DB->db_provider]) ? $db_map[$DB->db_provider] : $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"; |
| | | } |
| | | } |
| | | else { |
| | | echo "This instance of RoundCube is not yet configured!\n"; |
| | | echo "This instance of Roundcube is not yet configured!\n"; |
| | | echo "Open http://url-to-roundcube/installer/ in your browser and follow the instuctions.\n"; |
| | | } |
| | | |