X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=install%2Findex.php;h=fc27f03038097a200e43db1cb57bf2ddf46d6ae2;hb=833c5906b0583f118cc1f059e257c39a7b8543cc;hp=f5f7aa7377166bdeadd205b2acc1841d6dfc5ebd;hpb=2805b4304e99e564926fb0c692b80a9d2c268222;p=fa-stable.git diff --git a/install/index.php b/install/index.php index f5f7aa73..fc27f030 100644 --- a/install/index.php +++ b/install/index.php @@ -23,7 +23,8 @@ include($path_to_root . "/includes/ui.inc"); include($path_to_root . "/includes/system_tests.inc"); include($path_to_root . "/admin/db/maintenance_db.inc"); include($path_to_root . "/includes/packages.inc"); -@include($path_to_root . "/installed_extensions.php"); +if (file_exists($path_to_root . "/installed_extensions.php")) + include($path_to_root . "/installed_extensions.php"); //------------------------------------------------------------------------------------------------- function subpage_title($txt) @@ -117,45 +118,23 @@ function install_connect_db() { global $db; $conn = $_SESSION['inst_set']; - - $db = mysql_connect($conn["host"] , $conn["dbuser"], $conn["dbpassword"]); - if(!$db) { - display_error('Cannot connect to database server. Host name, username and/or password incorrect.'); - return false; - } - if (!defined('TB_PREF')) - define('TB_PREF', $conn["tbpref"]); - if (!mysql_select_db($conn["dbname"], $db)) { - $sql = "CREATE DATABASE " . $conn["dbname"]; - if (!mysql_query($sql)) { - display_error('Cannot create database. Check your permissions to database creation or selct already created database.'); - return false; - } - return mysql_select_db($conn["dbname"], $db); + $db = db_create_db($conn); + if (!$db) { + display_error(_("Cannot connect to database. User or password is invalid or you have no permittions to create database.")); } - return true; + return $db; } function do_install() { - global $path_to_root, $db_connections, $def_coy, $installed_extensions, + global $path_to_root, $db_connections, $def_coy, $installed_extensions, $tb_pref_counter, $dflt_lang, $installed_languages; $coa = $_SESSION['inst_set']['coa']; if (install_connect_db() && db_import($path_to_root.'/sql/'.$coa, $_SESSION['inst_set'])) { $con = $_SESSION['inst_set']; $table_prefix = $con['tbpref']; - update_company_prefs(array('coy_name'=>$con['name'])); - $admin = get_user_by_login('admin'); -// update_admin_password($con, md5($con['pass'])); - update_user_prefs($admin['id'], array('language' => $_POST['lang'], - 'password' => md5($con['pass']))); - - if (!copy($path_to_root. "/config.default.php", $path_to_root. "/config.php")) { - display_error(_("Cannot save system configuration file 'config.php'.")); - return false; - } $def_coy = 0; $tb_pref_counter = 0; @@ -167,6 +146,21 @@ function do_install() { 'dbname' => $con['dbname'], 'tbpref' => $table_prefix )); + + $_SESSION['wa_current_user']->cur_con = 0; + + update_company_prefs(array('coy_name'=>$con['name'])); + $admin = get_user_by_login('admin'); + update_user_prefs($admin['id'], array( + 'language' => $con['lang'], + 'password' => md5($con['pass']), + 'user_id' => $con['admin'])); + + if (!copy($path_to_root. "/config.default.php", $path_to_root. "/config.php")) { + display_error(_("Cannot save system configuration file 'config.php'.")); + return false; + } + $err = write_config_db($table_prefix != ""); if ($err == -1) { @@ -180,10 +174,10 @@ function do_install() { return false; } // update default language - include_once($path_to_root . "/lang/installed_languages.inc"); + if (file_exists($path_to_root . "/lang/installed_languages.inc")) + include_once($path_to_root . "/lang/installed_languages.inc"); $dflt_lang = $_POST['lang']; write_lang(); - return true; } return false; @@ -261,17 +255,18 @@ elseif(get_post('install_langs')) elseif(get_post('install_coas')) { $ret = true; - + $next_extension_id = 0; + if (isset($_POST['coas'])) foreach($_POST['coas'] as $package => $ok) { $ret &= install_extension($package); } if ($ret) { - include($path_to_root.'/installed_extensions.php'); + if (file_exists($path_to_root . '/installed_extensions.php')) + include($path_to_root.'/installed_extensions.php'); $_POST['Page'] = 5; } -} -elseif (isset($_POST['set_admin'])) { +} elseif (isset($_POST['set_admin'])) { // check company settings if (get_post('name')=='') { display_error(_('Company name cannot be empty.')); @@ -342,7 +337,7 @@ start_form(); } subpage_title(_('Database Server Settings')); start_table(TABLESTYLE); - text_row_ex(_("Server Host:"), 'host', 30); + text_row_ex(_("Server Host:"), 'host', 30, 60); text_row_ex(_("Database User:"), 'dbuser', 30); text_row_ex(_("Database Password:"), 'dbpassword', 30); text_row_ex(_("Database Name:"), 'dbname', 30); @@ -376,6 +371,11 @@ start_form(); $_POST[$name] = $val; set_focus('name'); } + if (!isset($installed_extensions)) { + $installed_extensions = array(); + update_extensions($installed_extensions); + } + subpage_title(_('Company Settings')); start_table(TABLESTYLE); text_row_ex(_("Company Name:"), 'name', 30); @@ -392,7 +392,8 @@ start_form(); case '6': // final screen subpage_title(_('FrontAccounting ERP has been installed successsfully.')); display_note(_('Please do not forget to remove install wizard folder.')); - $install_done = true; + session_unset(); + session_destroy(); hyperlink_no_params($path_to_root.'/index.php', _('Click here to start.')); break;