diff options
author | Paul S. Owen <psotfx@users.sourceforge.net> | 2003-03-17 17:34:20 +0000 |
---|---|---|
committer | Paul S. Owen <psotfx@users.sourceforge.net> | 2003-03-17 17:34:20 +0000 |
commit | f81602d72bb1378e1bbdbd6996549ceab8ba597b (patch) | |
tree | 34e90fad7af3e62b35133820a6393c95c395cb36 | |
parent | 28ed4efed1bfc2319c6b4db4d357ea10bb1c3d0a (diff) | |
download | forums-f81602d72bb1378e1bbdbd6996549ceab8ba597b.tar forums-f81602d72bb1378e1bbdbd6996549ceab8ba597b.tar.gz forums-f81602d72bb1378e1bbdbd6996549ceab8ba597b.tar.bz2 forums-f81602d72bb1378e1bbdbd6996549ceab8ba597b.tar.xz forums-f81602d72bb1378e1bbdbd6996549ceab8ba597b.zip |
It's alive! It's alive! ...
git-svn-id: file:///svn/phpbb/trunk@3659 89ea8834-ac86-4346-8a33-228a782c2dd0
-rw-r--r-- | phpBB/install/install.php | 939 |
1 files changed, 457 insertions, 482 deletions
diff --git a/phpBB/install/install.php b/phpBB/install/install.php index afb74c219a..f3598dc8cf 100644 --- a/phpBB/install/install.php +++ b/phpBB/install/install.php @@ -19,11 +19,13 @@ * ***************************************************************************/ -error_reporting (E_ERROR | E_WARNING | E_PARSE); // This will NOT report uninitialized variables +//error_reporting (E_ERROR | E_WARNING | E_PARSE); // This will NOT report uninitialized variables +error_reporting (E_ERROR | E_WARNING | E_PARSE | E_WARNING); // This will NOT report uninitialized variables set_magic_quotes_runtime(0); // Disable magic_quotes_runtime -if ( !get_magic_quotes_gpc() ) +if (!get_magic_quotes_gpc()) { + $_REQUEST = slash_input_data($_REQUEST); $_GET = slash_input_data($_GET); $_POST = slash_input_data($_POST); } @@ -34,44 +36,23 @@ require($phpbb_root_path . 'extension.inc'); require($phpbb_root_path . 'includes/functions.'.$phpEx); -/*************************************************************************** - * Install Customization Section - * - * This section can be modified to set up some basic default information - * used by the install script. Specifically the default theme data - * and the default template. - * - **************************************************************************/ -$default_language = 'en'; - -if ( isset($_SERVER['HTTP_ACCEPT_LANGUAGE']) ) -{ - $accept_lang_ary = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']); - foreach ( $accept_lang_ary as $accept_lang ) - { - // Set correct format ... guess full xx_YY form - $accept_lang = substr($accept_lang, 0, 2) . '_' . strtoupper(substr($accept_lang, 3, 2)); - if ( file_exists($phpbb_root_path . 'language/' . $accept_lang) ) - { - $default_language = $accept_lang; - break; - } - else - { - // No match on xx_YY so try xx - $accept_lang = substr($accept_lang, 0, 2); - if ( file_exists($phpbb_root_path . 'language/' . $accept_lang) ) - { - $default_language = $accept_lang; - break; - } - } - } -} +// Set some vars +define('ANONYMOUS', 1); +define('ACL_DENY', 0); +define('ACL_ALLOW', 1); +define('ACL_INHERIT', 2); +$default_language = 'en'; $default_template = 'subSilver'; $available_dbms = array( + 'firebird' => array( + 'LABEL' => 'FireBird', + 'SCHEMA' => 'firebird', + 'DELIM' => ';', + 'DELIM_BASIC' => ';', + 'COMMENTS' => 'remove_remarks' + ), 'mysql' => array( 'LABEL' => 'MySQL 3.x', 'SCHEMA' => 'mysql', @@ -86,13 +67,6 @@ $available_dbms = array( 'DELIM_BASIC' => ';', 'COMMENTS' => 'remove_remarks' ), - 'postgres' => array( - 'LABEL' => 'PostgreSQL 7.x', - 'SCHEMA' => 'postgres', - 'DELIM' => ';', - 'DELIM_BASIC' => ';', - 'COMMENTS' => 'remove_comments' - ), 'mssql' => array( 'LABEL' => 'MS SQL Server 7/2000', 'SCHEMA' => 'mssql', @@ -113,103 +87,113 @@ $available_dbms = array( 'DELIM' => 'GO', 'DELIM_BASIC' => ';', 'COMMENTS' => 'remove_comments' - ) + ), + 'postgres' => array( + 'LABEL' => 'PostgreSQL 7.x', + 'SCHEMA' => 'postgres', + 'DELIM' => ';', + 'DELIM_BASIC' => ';', + 'COMMENTS' => 'remove_comments' + ), ); -// -// Uncomment the following line to completely disable the ftp option... -// -// define('NO_FTP', true); - -/*************************************************************************** -* -* End Install Customization Section -* -***************************************************************************/ - -// -// Try opening config file -// -if ( @file_exists('../config.'.$phpEx) ) +// Try and load an appropriate language +if (!empty($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { - include('../config.'.$phpEx); + $accept_lang_ary = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']); + foreach ($accept_lang_ary as $accept_lang) + { + // Set correct format ... guess full xx_YY form + $accept_lang = substr($accept_lang, 0, 2) . '_' . strtoupper(substr($accept_lang, 3, 2)); + if (file_exists($phpbb_root_path . 'language/' . $accept_lang)) + { + $default_language = $accept_lang; + break; + } + else + { + // No match on xx_YY so try xx + $accept_lang = substr($accept_lang, 0, 2); + if (file_exists($phpbb_root_path . 'language/' . $accept_lang)) + { + $default_language = $accept_lang; + break; + } + } + } } -// // Obtain various vars -// -$confirm = ( isset($_POST['confirm']) ) ? true : false; -$cancel = ( isset($_POST['cancel']) ) ? true : false; - -if ( isset($_POST['install_step']) || isset($_GET['install_step']) ) -{ - $install_step = ( isset($_POST['install_step']) ) ? $_POST['install_step'] : $_GET['install_step']; -} -else -{ - $install_step = ''; -} - -$upgrade = ( !empty($_POST['upgrade']) ) ? $_POST['upgrade']: ''; -$upgrade_now = ( !empty($_POST['upgrade_now']) ) ? $_POST['upgrade_now']:''; +$confirm = (isset($_POST['confirm'])) ? true : false; +$cancel = (isset($_POST['cancel'])) ? true : false; +$install_step = (isset($_REQUEST['install_step'])) ? $_REQUEST['install_step'] : ''; +$upgrade = (!empty($_POST['upgrade'])) ? $_POST['upgrade']: ''; +$upgrade_now = (!empty($_POST['upgrade_now'])) ? $_POST['upgrade_now']:''; +$language = (!empty($_POST['language'])) ? htmlspecialchars($_POST['language']) : $default_language; $dbms = isset($_POST['dbms']) ? $_POST['dbms'] : ''; -$language = ( !empty($_POST['language']) ) ? $_POST['language'] : $default_language; +$dbhost = (!empty($_POST['dbhost'])) ? $_POST['dbhost'] : ''; +$dbuser = (!empty($_POST['dbuser'])) ? $_POST['dbuser'] : ''; +$dbpasswd = (!empty($_POST['dbpasswd'])) ? $_POST['dbpasswd'] : ''; +$dbname = (!empty($_POST['dbname'])) ? $_POST['dbname'] : ''; +$table_prefix = (!empty($_POST['prefix'])) ? $_POST['prefix'] : ''; -$dbhost = ( !empty($_POST['dbhost']) ) ? $_POST['dbhost'] : ''; -$dbuser = ( !empty($_POST['dbuser']) ) ? $_POST['dbuser'] : ''; -$dbpasswd = ( !empty($_POST['dbpasswd']) ) ? $_POST['dbpasswd'] : ''; -$dbname = ( !empty($_POST['dbname']) ) ? $_POST['dbname'] : ''; +$admin_name = (!empty($_POST['admin_name'])) ? htmlspecialchars($_POST['admin_name']) : ''; +$admin_pass1 = (!empty($_POST['admin_pass1'])) ? htmlspecialchars($_POST['admin_pass1']) : ''; +$admin_pass2 = (!empty($_POST['admin_pass2'])) ? htmlspecialchars($_POST['admin_pass2']) : ''; +$board_email1 = (!empty($_POST['board_email1'])) ? htmlspecialchars($_POST['board_email1']) : ''; +$board_email2 = (!empty($_POST['board_email2'])) ? htmlspecialchars($_POST['board_email2']) : ''; -$table_prefix = ( !empty($_POST['prefix']) ) ? $_POST['prefix'] : ''; +$server_name = (!empty($_POST['server_name'])) ? htmlspecialchars($_POST['server_name']) : ''; +$server_port = (!empty($_POST['server_port'])) ? htmlspecialchars($_POST['server_port']) : ''; +$script_path = (!empty($_POST['script_path'])) ? htmlspecialchars($_POST['script_path']) : ''; -$admin_name = ( !empty($_POST['admin_name']) ) ? $_POST['admin_name'] : ''; -$admin_pass1 = ( !empty($_POST['admin_pass1']) ) ? $_POST['admin_pass1'] : ''; -$admin_pass2 = ( !empty($_POST['admin_pass2']) ) ? $_POST['admin_pass2'] : ''; +$ftp_path = (!empty($_POST['ftp_path'])) ? $_POST['ftp_path'] : ''; +$ftp_user = (!empty($_POST['ftp_user'])) ? $_POST['ftp_user'] : ''; +$ftp_pass = (!empty($_POST['ftp_pass'])) ? $_POST['ftp_pass'] : ''; -$ftp_path = ( !empty($_POST['ftp_path']) ) ? $_POST['ftp_path'] : ''; -$ftp_user = ( !empty($_POST['ftp_user']) ) ? $_POST['ftp_user'] : ''; -$ftp_pass = ( !empty($_POST['ftp_pass']) ) ? $_POST['ftp_pass'] : ''; -$server_name = ( !empty($_POST['server_name']) ) ? $_POST['server_name'] : ''; -$server_port = ( !empty($_POST['server_port']) ) ? $_POST['server_port'] : ''; -$board_email = ( !empty($_POST['board_email']) ) ? $_POST['board_email'] : ''; -$script_path = ( !empty($_POST['script_path']) ) ? $_POST['script_path'] : ''; +// Try opening config file +if (@file_exists('../config.'.$phpEx)) +{ +// include('../config.'.$phpEx); +} + -// // Do we install/upgrade/update or quit back to index? -// -if ( !defined('PHPBB_INSTALLED') ) +if (defined('PHPBB_INSTALLED')) { - include($phpbb_root_path . 'includes/session.'.$phpEx); - include($phpbb_root_path . 'includes/functions_admin.'.$phpEx); +// redirect("../index.$phpEx"); +} - // Import language file, setup template ... - include($phpbb_root_path . 'language/' . $language . '/lang_main.'.$phpEx); - include($phpbb_root_path . 'language/' . $language . '/lang_admin.'.$phpEx); +// Include essential scripts +include($phpbb_root_path . 'includes/session.'.$phpEx); +include($phpbb_root_path . 'includes/acm/cache_file.'.$phpEx); +include($phpbb_root_path . 'includes/functions_admin.'.$phpEx); - if ( $upgrade == 1 ) - { - require('upgrade.'.$phpEx); - $install_step = 1; - } -} -else +// Import language file, setup template ... +include($phpbb_root_path . 'language/' . $language . '/lang_main.'.$phpEx); +include($phpbb_root_path . 'language/' . $language . '/lang_admin.'.$phpEx); + +// If we're upgrading include that script +if ($upgrade) { - header("Location: ../index.$phpEx"); - exit; + require('upgrade.' . $phpEx); + $install_step = 1; } -// +// Instantiate classes for future use +$user = new user(); +$auth = new auth(); +$cache = new acm(); + + // What shall we do? -// -if ( !empty($_POST['send_file']) && $_POST['send_file'] == 1 && !defined("PHPBB_INSTALLED") && empty($_POST['upgrade_now']) ) +if (!empty($_POST['send_file']) && $_POST['send_file'] == 1 && !defined('PHPBB_INSTALLED') && empty($_POST['upgrade_now'])) { - // // We need to stripslashes no matter what the setting of magic_quotes_gpc is // because we add slahes at the top if its off, and they are added automaticlly // if it is on. - // $_POST['config_data'] = stripslashes($_POST['config_data']); header("Content-Type: text/x-delimtext; name=\"config.$phpEx\""); @@ -218,192 +202,187 @@ if ( !empty($_POST['send_file']) && $_POST['send_file'] == 1 && !defined("PHPBB exit; } -else if ( !empty($_POST['send_file']) && $_POST['send_file'] == 2 && !defined("PHPBB_INSTALLED") ) +else if (!empty($_POST['send_file']) && $_POST['send_file'] == 2 && !defined("PHPBB_INSTALLED")) { - // // Ok we couldn't write the config file so let's try ftping it. - // - $_POST['config_data'] = stripslashes($_POST['config_data']); $s_hidden_fields = '<input type="hidden" name="config_data" value="' . htmlspecialchars($_POST['config_data']) . '" />'; $s_hidden_fields .= '<input type="hidden" name="ftp_file" value="1" />'; - if ( $upgrade == 1 ) + if ($upgrade == 1) { $s_hidden_fields .= '<input type="hidden" name="upgrade" value="1" />'; } - $template->assign_block_vars("switch_ftp_file", array()); - $template->assign_block_vars("switch_common_install", array()); - - $template->assign_vars(array( - "L_INSTRUCTION_TEXT" => $lang['ftp_instructs'], - "L_FTP_INFO" => $lang['ftp_info'], - "L_FTP_PATH" => $lang['ftp_path'], - "L_FTP_PASS" => $lang['ftp_password'], - "L_FTP_USER" => $lang['ftp_username'], - "L_SUBMIT" => $lang['Transfer_config'], - - "S_HIDDEN_FIELDS" => $s_hidden_fields, - "S_FORM_ACTION" => "install.$phpEx") - ); + page_header($lang['ftp_instructs']); - $template->pparse("body"); +?> + <tr> + <th colspan="2"><?php echo $lang['ftp_info']; ?></th> + </tr> + <tr> + <td class="row1" align="right"><span class="gen"><?php echo $lang['ftp_path']; ?></span></td> + <td class="row2"><input type="text" name="ftp_dir"></td> + </tr> + <tr> + <td class="row1" align="right"><span class="gen"><?php echo $lang['ftp_password']; ?></span></td> + <td class="row2"><input type="text" name="ftp_user"></td> + </tr> + <tr> + <td class="row1" align="right"><span class="gen"><?php echo $lang['ftp_username']; ?></span></td> + <td class="row2"><input type="password" name="ftp_pass"></td> + </tr> +<?php + page_common_form($s_hidden_fields, $lang['Transfer_config']); + page_footer(); exit; } -else if( !empty($_POST['ftp_file']) && !defined("PHPBB_INSTALLED") ) +else if (!empty($_POST['ftp_file']) && !defined("PHPBB_INSTALLED")) { - // // Here we'll actually send the file... - // $_POST['config_data'] = stripslashes($_POST['config_data']); $conn_id = @ftp_connect('localhost'); - $login_result = @ftp_login($conn_id, "$ftp_user", "$ftp_pass"); + $login_result = @ftp_login($conn_id, $ftp_user, $ftp_pass); - if ( !$conn_id || !$login_result ) + if (!$conn_id || !$login_result) { - // // Error couldn't get connected... Go back to option to send file... - // $s_hidden_fields = '<input type="hidden" name="config_data" value="' . htmlspecialchars($_POST['config_data']) . '" />'; $s_hidden_fields .= '<input type="hidden" name="send_file" value="1" />'; page_header($lang['NoFTP_config'], "install.$phpEx"); - if ( $upgrade == 1 ) + if ($upgrade) { $s_hidden_fields .= '<input type="hidden" name="upgrade" value="1" />'; - $s_hidden_fields .= '<input type="hidden" name="dbms" value="'.$dmbs.'" />'; - $s_hidden_fields .= '<input type="hidden" name="prefix" value="'.$table_prefix.'" />'; - $s_hidden_fields .= '<input type="hidden" name="dbhost" value="'.$dbhost.'" />'; - $s_hidden_fields .= '<input type="hidden" name="dbname" value="'.$dbname.'" />'; - $s_hidden_fields .= '<input type="hidden" name="dbuser" value="'.$dbuser.'" />'; - $s_hidden_fields .= '<input type="hidden" name="dbpasswd" value="'.$dbpasswd.'" />'; + $s_hidden_fields .= '<input type="hidden" name="dbms" value="' . $dmbs . '" />'; + $s_hidden_fields .= '<input type="hidden" name="prefix" value="' . $table_prefix . '" />'; + $s_hidden_fields .= '<input type="hidden" name="dbhost" value="' . $dbhost . '" />'; + $s_hidden_fields .= '<input type="hidden" name="dbname" value="' . $dbname . '" />'; + $s_hidden_fields .= '<input type="hidden" name="dbuser" value="' . $dbuser . '" />'; + $s_hidden_fields .= '<input type="hidden" name="dbpasswd" value="' . $dbpasswd . '" />'; $s_hidden_fields .= '<input type="hidden" name="install_step" value="1" />'; $s_hidden_fields .= '<input type="hidden" name="admin_pass1" value="1" />'; $s_hidden_fields .= '<input type="hidden" name="admin_pass2" value="1" />'; - $s_hidden_fields .= '<input type="hidden" name="server_port" value="'.$server_port.'" />'; - $s_hidden_fields .= '<input type="hidden" name="server_name" value="'.$server_name.'" />'; - $s_hidden_fields .= '<input type="hidden" name="script_path" value="'.$script_path.'" />'; - $s_hidden_fields .= '<input type="hidden" name="board_email" value="'.$board_email.'" />'; - - $template->assign_block_vars("switch_upgrade_install", array()); - $template->assign_vars(array( - "L_UPGRADE_INST" => $lang['continue_upgrade'], - "L_UPGRADE_SUBMIT" => $lang['upgrade_submit']) - ); + $s_hidden_fields .= '<input type="hidden" name="server_port" value="' . $server_port . '" />'; + $s_hidden_fields .= '<input type="hidden" name="server_name" value="' . $server_name . '" />'; + $s_hidden_fields .= '<input type="hidden" name="script_path" value="' . $script_path . '" />'; + $s_hidden_fields .= '<input type="hidden" name="board_email1" value="' . $board_email1 . '" />'; + $s_hidden_fields .= '<input type="hidden" name="board_email2" value="' . $board_email2 . '" />'; + + page_upgrade_form(); + } + else + { + page_common_form($s_hidden_fields, $lang['Download_config']); } page_footer($lang['Download_config'], $s_hidden_fields); - exit; } else { - // // Write out a temp file... - // $tmpfname = @tempnam('/tmp', 'cfg'); - - @unlink($tmpfname); // unlink for safety on php4.0.3+ + @unlink($tmpfname); $fp = @fopen($tmpfname, 'w'); - @fwrite($fp, $_POST['config_data']); - @fclose($fp); - // // Now ftp it across. - // @ftp_chdir($conn_id, $ftp_dir); - - $res = ftp_put($conn_id, '../config.'.$phpEx, $tmpfname, FTP_ASCII); - + $res = @ftp_put($conn_id, 'config.' . $phpEx, $tmpfname, FTP_ASCII); @ftp_quit($conn_id); unlink($tmpfname); - if( $upgrade == 1 ) + if ($upgrade) { require('upgrade.'.$phpEx); exit; } - // - // Ok we are basically done with the install process let's go on and let the user - // configure their board now. We are going to do this by calling the admin_board.php - // from the normal board admin section. - // - $s_hidden_fields = '<input type="hidden" name="username" value="' . $admin_name . '" />'; - $s_hidden_fields .= '<input type="hidden" name="password" value="' . $admin_pass1 . '" />'; - $s_hidden_fields .= '<input type="hidden" name="redirect" value="adm/index.php" />'; - $s_hidden_fields .= '<input type="hidden" name="submit" value="' . $lang['Login'] . '" />'; - - page_header($lang['Inst_Step_2'], "../login.$phpEx"); - page_footer($lang['Finish_Install'], $s_hidden_fields); + $sql = "SELECT * + FROM {$table_prefix}config"; + $result = $db->sql_query($sql); - exit(); - } + $config = array(); + while ($row = $db->sql_fetchrow($result)) + { + $config[$row['config_name']] = $row['config_value']; + } + $db->sql_freeresult($result); + + // Log user in + $auth->login($admin_name, $admin_pass1); + page_header($lang['Inst_Step_2'], "../adm/index.$phpEx$SID"); + page_footer($lang['Finish_Install'], $s_hidden_fields); + exit; + } } -else if ( ( empty($install_step) || $admin_pass1 != $admin_pass2 || empty($admin_pass1) || $dbhost == '' ) && !defined("PHPBB_INSTALLED") ) +else if ((empty($install_step) || $admin_pass1 != $admin_pass2 || $board_email1 != $board_email2 || empty($admin_pass1) || $dbhost == '') && !defined("PHPBB_INSTALLED")) { - // // Ok we haven't installed before so lets work our way through the various // steps of the install process. This could turn out to be quite a lengty // process. - // + // Step 0 gather the pertinant info for database setup... // Namely dbms, dbhost, dbname, dbuser, and dbpasswd. - // - // // Guess at some basic info used for install.. - // - if ( !empty($_SERVER['SERVER_NAME']) || !empty($_ENV['SERVER_NAME']) ) + if (!empty($_SERVER['SERVER_NAME']) || !empty($_ENV['SERVER_NAME'])) { - $server_name = ( !empty($_SERVER['SERVER_NAME']) ) ? $_SERVER['SERVER_NAME'] : $_ENV['SERVER_NAME']; + $server_name = (!empty($_SERVER['SERVER_NAME'])) ? $_SERVER['SERVER_NAME'] : $_ENV['SERVER_NAME']; } - else if ( !empty($_SERVER['HTTP_HOST']) || !empty($_ENV['HTTP_HOST']) ) + else if (!empty($_SERVER['HTTP_HOST']) || !empty($_ENV['HTTP_HOST'])) { - $server_name = ( !empty($_SERVER['HTTP_HOST']) ) ? $_SERVER['HTTP_HOST'] : $_ENV['HTTP_HOST']; + $server_name = (!empty($_SERVER['HTTP_HOST'])) ? $_SERVER['HTTP_HOST'] : $_ENV['HTTP_HOST']; } else { $server_name = ''; } - if ( !empty($_SERVER['SERVER_PORT']) || !empty($_ENV['SERVER_PORT']) ) + if (!empty($_SERVER['SERVER_PORT']) || !empty($_ENV['SERVER_PORT'])) { - $server_port = ( !empty($_SERVER['SERVER_PORT']) ) ? $_SERVER['SERVER_PORT'] : $_ENV['SERVER_PORT']; + $server_port = (!empty($_SERVER['SERVER_PORT'])) ? $_SERVER['SERVER_PORT'] : $_ENV['SERVER_PORT']; } else { $server_port = '80'; } - $script_path = preg_replace('/install\/install\.'.$phpEx.'/i', '', $_SERVER['PHP_SELF']); + $script_path = preg_replace('#install\/install\.'.$phpEx.'#i', '', $_SERVER['PHP_SELF']); - // - // - // + // Generate installation form $instruction_text = $lang['Inst_Step_0']; -/* - if ( (($_POST['admin_pass1'] != $_POST['admin_pass2']) && $install_step != '0') || ( empty($_POST['admin_pass1']) && !empty($dbhost)) ) + + if (!empty($install_step)) { - $instruction_text = $lang['Password_mismatch'] . '<br />' . $instruction_text; + if ((($_POST['admin_pass1'] != $_POST['admin_pass2'])) || + (empty($_POST['admin_pass1']) || empty($dbhost)) && $_POST['cur_lang'] == $language) + { + $error = $lang['Password_mismatch']; + } + + if ((($_POST['board_email1'] != $_POST['board_email2'])) || + (empty($_POST['board_email1']) || empty($dbhost)) && $_POST['cur_lang'] == $language) + { + $error = $lang['INSTALL_EMAIL_MISMATCH']; + } } -*/ + $lang_options = language_select($language, 'language', '../language'); - foreach( $available_dbms as $dbms_name => $details ) + foreach($available_dbms as $dbms_name => $details) { - $selected = ( $dbms_name == $dbms ) ? ' selected="selected' : ''; + $selected = ($dbms_name == $dbms) ? ' selected="selected' : ''; $dbms_options .= '<option value="' . $dbms_name . '">' . $details['LABEL'] . '</option>'; } @@ -421,42 +400,54 @@ else if ( ( empty($install_step) || $admin_pass1 != $admin_pass2 || empty($admin </tr> <tr> <td class="row1" align="right" width="40%"><span class="gen"><?php echo $lang['Default_lang']; ?>: </span></td> - <td class="row2"><?php echo $lang_options; ?></select></td> + <td class="row2"><select name="lang"><?php echo $lang_options; ?></select></td> </tr> <tr> <td class="row1" align="right"><span class="gen"><?php echo $lang['dbms']; ?>: </span></td> - <td class="row2"><select name="dbms" onchange="if(document.install_form.upgrade.options[upgrade.selectedIndex].value == 1) { document.install_form.dbms.selectedIndex=0}"><?php echo $dbms_options; ?></select></td> + <td class="row2"><select name="dbms" onchange="if (document.install_form.upgrade.options[upgrade.selectedIndex].value == 1) { document.install_form.dbms.selectedIndex=0}"><?php echo $dbms_options; ?></select></td> </tr> <tr> <td class="row1" align="right"><span class="gen"><?php echo $lang['Install_Method']; ?>: </span></td> - <td class="row2"><select name="upgrade" onchange="if( this.options[this.selectedIndex].value == 1 ) { document.install_form.dbms.selectedIndex=0; }"><?php echo $upgrade_option; ?></select></td> + <td class="row2"><select name="upgrade" onchange="if (this.options[this.selectedIndex].value == 1) { document.install_form.dbms.selectedIndex=0; }"><?php echo $upgrade_option; ?></select></td> </tr> <tr> <th colspan="2"><?php echo $lang['DB_config']; ?></th> </tr> <tr> <td class="row1" align="right"><span class="gen"><?php echo $lang['DB_Host']; ?>: </span></td> - <td class="row2"><input type="text" name="dbhost" value="<?php echo ( $dbhost != '' ) ? $dbhost : ''; ?>" /></td> + <td class="row2"><input type="text" name="dbhost" value="<?php echo ($dbhost != '') ? $dbhost : ''; ?>" /></td> </tr> <tr> <td class="row1" align="right"><span class="gen"><?php echo $lang['DB_Name']; ?>: </span></td> - <td class="row2"><input type="text" name="dbname" value="<?php echo ( $dbname != '' ) ? $dbname : ''; ?>" /></td> + <td class="row2"><input type="text" name="dbname" value="<?php echo ($dbname != '') ? $dbname : ''; ?>" /></td> </tr> <tr> <td class="row1" align="right"><span class="gen"><?php echo $lang['DB_Username']; ?>: </span></td> - <td class="row2"><input type="text" name="dbuser" value="<?php echo ( $dbuser != '' ) ? $dbuser : ''; ?>" /></td> + <td class="row2"><input type="text" name="dbuser" value="<?php echo ($dbuser != '') ? $dbuser : ''; ?>" /></td> </tr> <tr> <td class="row1" align="right"><span class="gen"><?php echo $lang['DB_Password']; ?>: </span></td> - <td class="row2"><input type="password" name="dbpasswd" value="<?php echo ( $dbpasswd != '' ) ? $dbpasswd : ''; ?>" /></td> + <td class="row2"><input type="password" name="dbpasswd" value="<?php echo ($dbpasswd != '') ? $dbpasswd : ''; ?>" /></td> </tr> <tr> <td class="row1" align="right"><span class="gen"><?php echo $lang['Table_Prefix']; ?>: </span></td> - <td class="row2"><input type="text" name="prefix" value="<?php echo ( !empty($table_prefix) ) ? $table_prefix : 'phpbb_'; ?>" /></td> + <td class="row2"><input type="text" name="prefix" value="<?php echo (!empty($table_prefix)) ? $table_prefix : 'phpbb_'; ?>" /></td> </tr> <tr> <th colspan="2"><?php echo $lang['Admin_config']; ?></th> </tr> +<?php + + if ($error) + { +?> + <tr> + <td class="row1" colspan="2" align="center"><span class="gen" style="color:red"><?php echo $error; ?></span></td> + </tr> +<?php + + } +?> <tr> <td class="row1" align="right"><span class="gen"><?php echo $lang['Server_name']; ?>: </span></td> <td class="row2"><input type="text" name="server_name" value="<?php echo $server_name; ?>" /></td> @@ -471,19 +462,23 @@ else if ( ( empty($install_step) || $admin_pass1 != $admin_pass2 || empty($admin </tr> <tr> <td class="row1" align="right"><span class="gen"><?php echo $lang['Admin_Username']; ?>: </span></td> - <td class="row2"><input type="text" name="admin_name" value="<?php echo ( $admin_name != '' ) ? $admin_name : ''; ?>" /></td> + <td class="row2"><input type="text" name="admin_name" value="<?php echo ($admin_name != '') ? $admin_name : ''; ?>" /></td> </tr> <tr> - <td class="row1" align="right"><span class="gen"><?php echo $lang['Admin_email']; ?>: </span></td> - <td class="row2"><input type="text" name="board_email" value="<?php echo ( $board_email != '' ) ? $board_email : ''; ?>" /></td> + <td class="row1" align="right"><span class="gen"><?php echo $lang['ADMIN_EMAIL']; ?>: </span></td> + <td class="row2"><input type="text" name="board_email1" value="<?php echo ($board_email1 != '') ? $board_email1 : ''; ?>" /></td> </tr> <tr> + <td class="row1" align="right"><span class="gen"><?php echo $lang['ADMIN_EMAIL_CONFIRM']; ?>: </span></td> + <td class="row2"><input type="text" name="board_email2" value="<?php echo ($board_email2 != '') ? $board_email2 : ''; ?>" /></td> + </tr> + <tr> <td class="row1" align="right"><span class="gen"><?php echo $lang['Admin_Password']; ?>: </span></td> - <td class="row2"><input type="password" name="admin_pass1" value="<?php echo ( $admin_pass1 != '' ) ? $admin_pass1 : ''; ?>" /></td> + <td class="row2"><input type="password" name="admin_pass1" value="<?php echo ($admin_pass1 != '') ? $admin_pass1 : ''; ?>" /></td> </tr> <tr> <td class="row1" align="right"><span class="gen"><?php echo $lang['Admin_Password_confirm']; ?>: </span></td> - <td class="row2"><input type="password" name="admin_pass2" value="<?php echo ( $admin_pass2 != '' ) ? $admin_pass2 : ''; ?>" /></td> + <td class="row2"><input type="password" name="admin_pass2" value="<?php echo ($admin_pass2 != '') ? $admin_pass2 : ''; ?>" /></td> </tr> <?php @@ -495,303 +490,260 @@ else { $load_extensions = ''; - // // Go ahead and create the DB, then populate it // - // MS Access is slightly different in that a pre-built, pre- - // populated DB is supplied, all we need do here is update - // the relevant entries - // - if ( isset($dbms) ) + // MS Access is slightly different in that a pre-built, pre-populated DB is supplied, + // all we need do here is update the relevant entries + $check_exts = ''; + $check_other = array(); + switch ($dbms) { - switch ( $dbms ) - { - case 'msaccess': - case 'mssql-odbc': - $check_exts = 'odbc'; - $check_other = 'odbc'; - break; - case 'mssql': - $check_exts = 'mssql'; - $check_other = 'sybase'; - break; - case 'mysql': - case 'mysql4': - $check_exts = 'mysql'; - $check_other = 'mysql'; - break; - case 'postgres': - $check_exts = 'pgsql'; - $check_other = 'pgsql'; - break; - } + case 'firebird': + $check_exts = 'interbase'; + $check_other[] = 'interbase'; + case 'mysql': + case 'mysql4': + $check_exts = 'mysql'; + $check_other[] = 'mysql'; + break; + case 'msaccess': + case 'mssql-odbc': + $check_exts = 'odbc'; + $check_other[] = 'odbc'; + break; + case 'mssql': + $check_exts = 'mssql'; + $check_other[] = 'sybase'; + break; + case 'postgres': + $check_exts = 'pgsql'; + $check_other[] = 'pgsql'; + break; + } - if ( !extension_loaded( $check_exts ) && !extension_loaded( $check_other ) ) - { -/* $template->assign_block_vars("switch_error_install", array()); + // Add additionale extension checks to this array + $check_other = array_merge($check_other, array()); - $template->assign_vars(array( - "L_ERROR_TITLE" => $lang['Installer_Error'], - "L_ERROR" => $lang['Install_No_Ext']) - ); - $template->pparse('body'); */ + if (!extension_loaded($check_exts) && !extension_loaded($check_other)) + { + // Try to load the Extensions + $loaded_extension = TRUE; - // Try to load the Extensions - $loaded_extension = FALSE; + if ((!@ini_get('safe_mode') || strtoupper(@ini_get('safe_mode')) == 'OFF') && + (@ini_get('enable_dl') || strtoupper(@ini_get('enable_dl')) == 'ON')) + { + $suffix = ((defined('PHP_OS')) && (preg_match('#win#i', PHP_OS))) ? '.dll' : '.so'; - if ( (!@ini_get('safe_mode')) && (@ini_get('enable_dl')) ) + if (!@extension_loaded($check_exts)) { - $suffix = ( (defined('PHP_OS')) && (eregi('win', PHP_OS)) ) ? '.dll' : '.so'; - - if (!@extension_loaded($check_exts)) + if (!@dl($check_exts . $suffix)) { - if (@dl($check_exts . $suffix)) - { - $load_extensions .= ($load_extensions == '') ? $check_exts . $suffix : ',' . $check_exts . $suffix; - $loaded_extension = TRUE; - } + $loaded_extension = FALSE; } - - if (!$loaded_extension) + else { - if (!@extension_loaded($check_other)) - { - if (@dl($check_other . $suffix)) - { - $load_extensions .= ($load_extensions == '') ? $check_other . $suffix : ',' . $check_other . $suffix; - $loaded_extension = TRUE; - } - } + $load_extensions .= ($load_extensions == '') ? $check_exts . $suffix : ',' . $check_exts . $suffix; } - } - - if (!$loaded_extension) + + foreach ($check_other as $extension) { - die("Error during installation: no $check_exts extension"); + if (!@extension_loaded($extension)) + { + if (!@dl($extension . $suffix)) + { + $loaded_extension = FALSE; + break; + } + else if ($loaded_extension) + { + $load_extensions .= ($load_extensions == '') ? $check_exts . $suffix : ',' . $check_exts . $suffix; + } + } } } - include($phpbb_root_path . 'db/' . $dbms . '.' . $phpEx); - - $db = new sql_db($dbhost, $dbuser, $dbpasswd, $dbname, $dbport, false); - } - - // Add another Extension Checks here if you want, please do not specify the suffix - $check_extensions = array(); - $suffix = ( (defined('PHP_OS')) && (eregi('win', PHP_OS)) ) ? '.dll' : '.so'; - - foreach ($check_extensions as $extension) - { - if (!@extension_loaded($extension)) + if (!$loaded_extension) { - if ( (!@ini_get('safe_mode')) && (@ini_get('enable_dl')) ) - { - if (@dl($extension . $suffix)) - { - $load_extensions .= ($load_extensions == '') ? $extension . $suffix : ',' . $extension . $suffix; - } - } + page_header($lang['Install'], ''); + page_error($lang['Installer_Error'], $lang['INSTALL_EXT_FAILED']); + page_footer(); + exit; } } - + + // Load the appropriate database class + include($phpbb_root_path . 'includes/db/' . $dbms . '.' . $phpEx); + + // Instantiate the database + $db = new sql_db($dbhost, $dbuser, $dbpasswd, $dbname, $dbport, false); + + // Load the appropriate schema and basic data $dbms_schema = 'schemas/' . $available_dbms[$dbms]['SCHEMA'] . '_schema.sql'; $dbms_basic = 'schemas/' . $available_dbms[$dbms]['SCHEMA'] . '_basic.sql'; + // How should we treat this schema? $remove_remarks = $available_dbms[$dbms]['COMMENTS'];; $delimiter = $available_dbms[$dbms]['DELIM']; $delimiter_basic = $available_dbms[$dbms]['DELIM_BASIC']; - if ( $install_step == 1 || $reinstall ) + if ($install_step == 1 || $reinstall) { - if ( $upgrade != 1 ) + if ($upgrade != 1) { - if ( $dbms != 'msaccess' ) + if ($dbms != 'msaccess') { - - // + // NOTE: trigger_error does not work here. + $db->return_on_error = true; + // Ok we have the db info go ahead and read in the relevant schema // and work on building the table.. probably ought to provide some // kind of feedback to the user as we are working here in order // to let them know we are actually doing something. - // $sql_query = @fread(@fopen($dbms_schema, 'r'), @filesize($dbms_schema)); - $sql_query = preg_replace('/phpbb_/is', $table_prefix, $sql_query); + $sql_query = preg_replace('#phpbb_#is', $table_prefix, $sql_query); $sql_query = $remove_remarks($sql_query); $sql_query = split_sql_file($sql_query, $delimiter); - $sql_count = count($sql_query); - // NOTE: trigger_error does not work here. - $db->return_on_error = true; - for($i = 0; $i < $sql_count; $i++) + foreach ($sql_query as $sql) { - if (!$db->sql_query($sql_query[$i])) + if (!$db->sql_query($sql)) { - $error = $db->sql_error($sql_query[$i]); - echo "<br />ERROR: " . $error['message'] . "<br />"; + $error = $db->sql_error(); + page_header($lang['Install'], ''); + page_error($lang['Installer_Error'], $lang['Install_db_error'] . '<br />' . $error['message']); + page_footer(); + exit; } } - // // Ok tables have been built, let's fill in the basic information - // $sql_query = @fread(@fopen($dbms_basic, 'r'), @filesize($dbms_basic)); - $sql_query = preg_replace('/phpbb_/', $table_prefix, $sql_query); + $sql_query = preg_replace('#phpbb_#', $table_prefix, $sql_query); $sql_query = $remove_remarks($sql_query); $sql_query = split_sql_file($sql_query, $delimiter_basic); - $sql_count = count($sql_query); - for($i = 0; $i < $sql_count; $i++) + foreach ($sql_query as $sql) { - $db->sql_query($sql_query[$i]); + if (!$db->sql_query($sql)) + { + $error = $db->sql_error(); + page_header($lang['Install'], ''); + page_error($lang['Installer_Error'], $lang['Install_db_error'] . '<br />' . $error['message']); + page_footer(); + exit; + } } } - // - // Ok at this point they have entered their admin password, let's go - // ahead and create the admin account with some basic default information - // that they can customize later, and write out the config file. After - // this we are going to pass them over to the admin_forum.php script - // to set up their forum defaults. - // - $admin_pass_md5 = ( $confirm && $userdata['user_level'] == ADMIN ) ? $admin_pass1 : md5($admin_pass1); - $error = ''; - - // - // Update the default admin user with their information. - // - $sql = "INSERT INTO " . $table_prefix . "config (config_name, config_value) - VALUES ('board_startdate', " . time() . ")"; - $db->sql_query($sql); - - $sql = "INSERT INTO " . $table_prefix . "config (config_name, config_value) - VALUES ('default_lang', '" . str_replace("\'", "''", $language) . "')"; - $db->sql_query($sql); - - $sql = "UPDATE " . $table_prefix . "config - SET config_value = '" . $server_name . "' - WHERE config_name = 'server_name'"; - $db->sql_query($sql); - - $sql = "UPDATE " . $table_prefix . "config - SET config_value = '" . $server_port . "' - WHERE config_name = 'server_port'"; - $db->sql_query($sql); - - $sql = "UPDATE " . $table_prefix . "config - SET config_value = '" . $script_path . "' - WHERE config_name = 'script_path'"; - $db->sql_query($sql); - - $sql = "UPDATE " . $table_prefix . "config - SET config_value = '" . $board_email . "' - WHERE config_name = 'board_email'"; - $db->sql_query($sql); - - $sql = "UPDATE " . $table_prefix . "config - SET config_value = '" . $server_name . "' - WHERE config_name = 'cookie_domain'"; - $db->sql_query($sql); - - $sql = "UPDATE " . $table_prefix . "config - SET config_value = '" . $admin_name . "' - WHERE config_name = 'newest_username'"; - $db->sql_query($sql); - - $sql = "UPDATE " . $table_prefix . "users - SET username = '" . str_replace("\'", "''", $admin_name) . "', user_password='" . str_replace("\'", "''", $admin_pass_md5) . "', user_lang = '" . str_replace("\'", "''", $language) . "', user_email='" . str_replace("\'", "''", $board_email) . "' - WHERE username = 'Admin'"; - $db->sql_query($sql); - - $sql = "UPDATE " . $table_prefix . "moderator_cache - SET username = '" . $admin_name . "' - WHERE username = 'Admin'"; - $db->sql_query($sql); - - $sql = "UPDATE " . $table_prefix . "forums - SET forum_last_poster_name = '" . $admin_name . "' - WHERE forum_last_poster_name = 'Admin'"; - $db->sql_query($sql); - - $sql = "UPDATE " . $table_prefix . "topics - SET topic_first_poster_name = '" . $admin_name . "', topic_last_poster_name = '" . $admin_name . "' + // Set default config and post data + $sql_ary = array( + "INSERT INTO " . $table_prefix . "config (config_name, config_value) + VALUES ('board_startdate', " . time() . ")", + "INSERT INTO " . $table_prefix . "config (config_name, config_value) + VALUES ('default_lang', '" . $db->sql_escape($language) . "')", + "UPDATE " . $table_prefix . "config + SET config_value = '" . $db->sql_escape($server_name) . "' + WHERE config_name = 'server_name'", + "UPDATE " . $table_prefix . "config + SET config_value = '" . $db->sql_escape($server_port) . "' + WHERE config_name = 'server_port'", + "UPDATE " . $table_prefix . "config + SET config_value = '" . $db->sql_escape($script_path) . "' + WHERE config_name = 'script_path'", + "UPDATE " . $table_prefix . "config + SET config_value = '" . $db->sql_escape($board_email) . "' + WHERE config_name = 'board_email'", + "UPDATE " . $table_prefix . "config + SET config_value = '" . $db->sql_escape($server_name) . "' + WHERE config_name = 'cookie_domain'", + "UPDATE " . $table_prefix . "config + SET config_value = '" . $db->sql_escape($admin_name) . "' + WHERE config_name = 'newest_username'", + "UPDATE " . $table_prefix . "users + SET username = '" . $db->sql_escape($admin_name) . "', user_password='" . $db->sql_escape(md5($admin_pass1)) . "', user_lang = '" . $db->sql_escape($language) . "', user_email='" . $db->sql_escape($board_email) . "' + WHERE username = 'Admin'", + "UPDATE " . $table_prefix . "moderator_cache + SET username = '" . $db->sql_escape($admin_name) . "' + WHERE username = 'Admin'", + "UPDATE " . $table_prefix . "forums + SET forum_last_poster_name = '" . $db->sql_escape($admin_name) . "' + WHERE forum_last_poster_name = 'Admin'", + "UPDATE " . $table_prefix . "topics + SET topic_first_poster_name = '" . $db->sql_escape($admin_name) . "', topic_last_poster_name = '" . $db->sql_escape($admin_name) . "' WHERE topic_first_poster_name = 'Admin' - OR topic_last_poster_name = 'Admin'"; - $db->sql_query($sql); - - $sql = "UPDATE " . $table_prefix . "users - SET user_regdate = " . time(); - $db->sql_query($sql); + OR topic_last_poster_name = 'Admin'", + "UPDATE " . $table_prefix . "users + SET user_regdate = " . time() + ); -/* if ( $error != '' ) + foreach ($sql_ary as $sql) { - $template->assign_block_vars("switch_error_install", array()); - - $template->assign_vars(array( - "L_ERROR_TITLE" => $lang['Installer_Error'], - "L_ERROR" => $lang['Install_db_error'] . '<br /><br />' . $error) - ); - - $template->pparse('body'); - - exit; - }*/ + if (!$db->sql_query($sql)) + { + $error = $db->sql_error(); + page_header($lang['Install'], ''); + page_error($lang['Installer_Error'], $lang['Install_db_error'] . '<br />' . $error['message']); + page_footer(); + exit; + } + } } - if ( !$reinstall && !$upgrade_now ) + if (!$upgrade_now) { -// $template->assign_block_vars("switch_common_install", array()); - - // // Write out the config file. - // - $config_data = '<?php'."\n\n"; - $config_data .= "//\n// phpBB 2.x auto-generated config file\n// Do not change anything in this file!\n//\n\n"; - $config_data .= '$dbms = "' . $dbms . '";' . "\n\n"; - $config_data .= '$dbhost = "' . $dbhost . '";' . "\n"; - $config_data .= '$dbport = "' . $dbport . '";' . "\n"; - $config_data .= '$dbname = "' . $dbname . '";' . "\n"; - $config_data .= '$dbuser = "' . $dbuser . '";' . "\n"; - $config_data .= '$dbpasswd = "' . $dbpasswd . '";' . "\n\n"; + $config_data = "<?php\n"; + $config_data .= "// phpBB 2.x auto-generated config file\n// Do not change anything in this file!\n"; + $config_data .= "\$dbms = '$dbms';\n"; + $config_data .= "\$dbhost = '$dbhost';\n"; + $config_data .= "\$dbport = '$dbport';\n"; + $config_data .= "\$dbname = '$dbname';\n"; + $config_data .= "\$dbuser = '$dbuser';\n"; + $config_data .= "\$dbpasswd = '$dbpasswd';\n\n"; + $config_data .= "\$table_prefix = '$table_prefix';\n"; $config_data .= "\$acm_type = 'file';\n"; - $config_data .= '$table_prefix = "' . $table_prefix . '";' . "\n\n"; - $config_data .= '$load_extensions = "' . $load_extensions . '";' . "\n\n"; - $config_data .= 'define(\'PHPBB_INSTALLED\', true);'."\n\n"; + $config_data .= "\$load_extensions = '$load_extensions';\n\n"; + $config_data .= "define('PHPBB_INSTALLED', true);\n"; $config_data .= '?' . '>'; // Done this to prevent highlighting editors getting confused! @umask(0111); $no_open = FALSE; - if ( !($fp = fopen('../config.'.$phpEx, 'w')) ) + if (!($fp = @fopen('../config.'.$phpEx, 'w'))) { - // // Unable to open the file writeable do something here as an attempt // to get around that... - // $s_hidden_fields = '<input type="hidden" name="config_data" value="' . htmlspecialchars($config_data) . '" />'; - if ( extension_loaded('ftp') && !defined('NO_FTP') ) + if (extension_loaded('ftp') && !defined('NO_FTP')) { - $template->assign_block_vars('switch_ftp_option', array()); - - $lang['Unwriteable_config'] .= '<p>' . $lang['ftp_option'] . '</p>'; - - $template->assign_vars(array( - "L_CHOOSE_FTP" => $lang['ftp_choose'], - "L_ATTEMPT_FTP" => $lang['Attempt_ftp'], - "L_SEND_FILE" => $lang['Send_file']) - ); + page_header($lang['Unwriteable_config'] . '<p>' . $lang['ftp_option'] . '</p>'); +?> + <tr> + <th colspan="2"><?php echo $lang['ftp_choose']; ?></th> + </tr> + <tr> + <td class="row1" align="right" width="50%"><span class="gen"><?php echo $lang['Attempt_ftp']; ?></span></td> + <td class="row2"><input type="radio" name="send_file" value="2"></td> + </tr> + <tr> + <td class="row1" align="right" width="50%"><span class="gen"><?php echo $lang['Send_file']; ?></span></td> + <td class="row2"><input type="radio" name="send_file" value="1"></td> + </tr> +<?php } else { + page_header($lang['Unwriteable_config']); $s_hidden_fields .= '<input type="hidden" name="send_file" value="1" />'; } - if ( $upgrade == 1 ) + if ($upgrade == 1) { $s_hidden_fields .= '<input type="hidden" name="upgrade" value="1" />'; $s_hidden_fields .= '<input type="hidden" name="dbms" value="'.$dbms.'" />'; @@ -808,24 +760,14 @@ else $s_hidden_fields .= '<input type="hidden" name="script_path" value="'.$script_path.'" />'; $s_hidden_fields .= '<input type="hidden" name="board_email" value="'.$board_email.'" />'; - $template->assign_block_vars("switch_upgrade_install", array()); - $template->assign_vars(array( - "L_UPGRADE_INST" => $lang['continue_upgrade'], - "L_UPGRADE_SUBMIT" => $lang['upgrade_submit']) - ); + page_upgrade_form(); + } + else + { + page_common_form($s_hidden_fields, $lang['Download_config']); } - /*$template->assign_vars(array( - "L_INSTRUCTION_TEXT" => $lang['Unwriteable_config'], - "L_SUBMIT" => $lang['Download_config'], - - "S_HIDDEN_FIELDS" => $s_hidden_fields, - "S_FORM_ACTION" => "install.$phpEx") - ); - - $template->pparse('body'); - */ - + page_footer(); exit; } @@ -834,42 +776,35 @@ else @fclose($fp); $upgrade_now = $lang['upgrade_submit']; } - else - { -// $template->assign_block_vars("switch_common_install", array()); - } - // // First off let's check and see if we are supposed to be doing an upgrade. - // - if ( $upgrade == 1 && $upgrade_now == $lang['upgrade_submit'] ) + if ($upgrade && $upgrade_now == $lang['upgrade_submit']) { define('INSTALLING', true); require('upgrade.'.$phpEx); exit; } - // - // Ok we are basically done with the install process let's go on - // and let the user configure their board now. - // - // We are going to do this by calling the admin_board.php from the - // normal board admin section. - // - if ( !$reinstall ) - { - $s_hidden_fields = '<input type="hidden" name="username" value="' . $admin_name . '" />'; - $s_hidden_fields .= '<input type="hidden" name="password" value="' . $admin_pass1 . '" />'; - $s_hidden_fields .= '<input type="hidden" name="redirect" value="adm/index.php" />'; - $s_hidden_fields .= '<input type="hidden" name="login" value="true" />'; - } - else + + // Load the basic configuration data + define('SESSIONS_TABLE', $table_prefix . 'sessions'); + define('USERS_TABLE', $table_prefix . 'users'); + + $sql = "SELECT * + FROM {$table_prefix}config"; + $result = $db->sql_query($sql); + + $config = array(); + while ($row = $db->sql_fetchrow($result)) { - $s_hidden_fields = ''; + $config[$row['config_name']] = $row['config_value']; } + $db->sql_freeresult($result); - page_header($lang['Inst_Step_2'], "../login.$phpEx"); - page_footer($lang['Finish_Install'], $s_hidden_fields); + // Log user in + $auth->login($admin_name, $admin_pass1); + page_header($lang['Inst_Step_2'], "../adm/index.$phpEx$SID"); + page_footer($lang['Finish_Install'], $s_hidden_fields); exit; } } @@ -878,11 +813,11 @@ else // to prevent someone trying to break out of a SQL statement. function slash_input_data(&$data) { - if ( is_array($data) ) + if (is_array($data)) { - foreach ( $data as $k => $v ) + foreach ($data as $k => $v) { - $data[$k] = ( is_array($v) ) ? slash_input_data($v) : addslashes($v); + $data[$k] = (is_array($v)) ? slash_input_data($v) : addslashes($v); } } return $data; @@ -935,11 +870,11 @@ function page_footer($l_submit, $s_hidden_fields) ?> <tr> - <td class="cat" align="center" colspan="2"><?php echo $s_hidden_fields; ?><input class="mainoption" type="submit" value="<?php echo $l_submit; ?>" /></td> + <td class="cat" colspan="2" align="center"><?php echo $s_hidden_fields; ?><input class="mainoption" type="submit" value="<?php echo $l_submit; ?>" /></td> </tr> </table></form> -<div align="center"><span class="copyright">Powered by phpBB <?php echo $config['version']; ?> © 2002 <a href="http://www.phpbb.com/" target="_phpbb" class="copyright">phpBB Group</a></span></div> +<div class="copyright" align="center">Powered by phpBB <?php echo $config['version']; ?> © 2003 <a href="http://www.phpbb.com/" target="_phpbb" class="copyright">phpBB Group</a></div> <br clear="all" /> @@ -949,4 +884,44 @@ function page_footer($l_submit, $s_hidden_fields) } +function page_common_form($hidden, $submit) +{ + +?> + <tr> + <td class="cat" colspan="2" align="center"><?php echo $hidden; ?><input class="mainoption" type="submit" value="<?php echo $submit; ?>" /></td> + </tr> +<?php + +} + +function page_upgrade_form() +{ + global $lang; + +?> + <tr> + <td class="cat" colspan="2" align="center"><?php echo $lang['continue_upgrade']; ?></td> + </tr> + <tr> + <td class="cat" colspan="2" align="center"><input type="submit" name="upgrade_now" value="<?php echo $lang['upgrade_submit']; ?>" /></td> + </tr> +<?php + +} + +function page_error($error_title, $error) +{ + +?> + <tr> + <th><?php echo $error_title; ?></th> + </tr> + <tr> + <td class="row1" align="center"><span class="gen"><?php echo $error; ?></span></td> + </tr> +<?php + +} + ?>
\ No newline at end of file |