array(
'LABEL' => 'MySQL 3.x',
'SCHEMA' => 'mysql',
'DELIM' => ';',
'DELIM_BASIC' => ';',
'COMMENTS' => 'remove_remarks'
),
'mysql4' => array(
'LABEL' => 'MySQL 4.x',
'SCHEMA' => 'mysql',
'DELIM' => ';',
'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',
'DELIM' => 'GO',
'DELIM_BASIC' => ';',
'COMMENTS' => 'remove_comments'
),
'msaccess' => array(
'LABEL' => 'MS Access [ ODBC ]',
'SCHEMA' => '',
'DELIM' => '',
'DELIM_BASIC' => ';',
'COMMENTS' => ''
),
'mssql-odbc' => array(
'LABEL' => 'MS SQL Server [ ODBC ]',
'SCHEMA' => 'mssql',
'DELIM' => 'GO',
'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) )
{
include('../config.'.$phpEx);
}
//
// Obtain various vars
//
$confirm = ( isset($HTTP_POST_VARS['confirm']) ) ? true : false;
$cancel = ( isset($HTTP_POST_VARS['cancel']) ) ? true : false;
if ( isset($HTTP_POST_VARS['install_step']) || isset($HTTP_GET_VARS['install_step']) )
{
$install_step = ( isset($HTTP_POST_VARS['install_step']) ) ? $HTTP_POST_VARS['install_step'] : $HTTP_GET_VARS['install_step'];
}
else
{
$install_step = '';
}
$upgrade = ( !empty($HTTP_POST_VARS['upgrade']) ) ? $HTTP_POST_VARS['upgrade']: '';
$upgrade_now = ( !empty($HTTP_POST_VARS['upgrade_now']) ) ? $HTTP_POST_VARS['upgrade_now']:'';
$dbms = isset($HTTP_POST_VARS['dbms']) ? $HTTP_POST_VARS['dbms'] : '';
$language = ( !empty($HTTP_POST_VARS['language']) ) ? $HTTP_POST_VARS['language'] : $default_language;
$dbhost = ( !empty($HTTP_POST_VARS['dbhost']) ) ? $HTTP_POST_VARS['dbhost'] : '';
$dbuser = ( !empty($HTTP_POST_VARS['dbuser']) ) ? $HTTP_POST_VARS['dbuser'] : '';
$dbpasswd = ( !empty($HTTP_POST_VARS['dbpasswd']) ) ? $HTTP_POST_VARS['dbpasswd'] : '';
$dbname = ( !empty($HTTP_POST_VARS['dbname']) ) ? $HTTP_POST_VARS['dbname'] : '';
$table_prefix = ( !empty($HTTP_POST_VARS['prefix']) ) ? $HTTP_POST_VARS['prefix'] : '';
$admin_name = ( !empty($HTTP_POST_VARS['admin_name']) ) ? $HTTP_POST_VARS['admin_name'] : '';
$admin_pass1 = ( !empty($HTTP_POST_VARS['admin_pass1']) ) ? $HTTP_POST_VARS['admin_pass1'] : '';
$admin_pass2 = ( !empty($HTTP_POST_VARS['admin_pass2']) ) ? $HTTP_POST_VARS['admin_pass2'] : '';
$ftp_path = ( !empty($HTTP_POST_VARS['ftp_path']) ) ? $HTTP_POST_VARS['ftp_path'] : '';
$ftp_user = ( !empty($HTTP_POST_VARS['ftp_user']) ) ? $HTTP_POST_VARS['ftp_user'] : '';
$ftp_pass = ( !empty($HTTP_POST_VARS['ftp_pass']) ) ? $HTTP_POST_VARS['ftp_pass'] : '';
$server_name = ( !empty($HTTP_POST_VARS['server_name']) ) ? $HTTP_POST_VARS['server_name'] : '';
$server_port = ( !empty($HTTP_POST_VARS['server_port']) ) ? $HTTP_POST_VARS['server_port'] : '';
$board_email = ( !empty($HTTP_POST_VARS['board_email']) ) ? $HTTP_POST_VARS['board_email'] : '';
$script_path = ( !empty($HTTP_POST_VARS['script_path']) ) ? $HTTP_POST_VARS['script_path'] : '';
//
// Do we install/upgrade/update or quit back to index?
//
if ( !defined('PHPBB_INSTALLED') )
{
include($phpbb_root_path . 'includes/functions_admin.'.$phpEx);
include($phpbb_root_path . 'includes/session.'.$phpEx);
//
// Import language file, setup template ...
//
include($phpbb_root_path . 'language/lang_' . $language . '/lang_main.'.$phpEx);
include($phpbb_root_path . 'language/lang_' . $language . '/lang_admin.'.$phpEx);
if ( $upgrade == 1 )
{
require('upgrade.'.$phpEx);
$install_step = 1;
}
}
else
{
header("Location: ../index.$phpEx");
exit;
}
//
// What shall we do?
//
if ( !empty($HTTP_POST_VARS['send_file']) && $HTTP_POST_VARS['send_file'] == 1 && !defined("PHPBB_INSTALLED") && empty($HTTP_POST_VARS['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.
//
$HTTP_POST_VARS['config_data'] = stripslashes($HTTP_POST_VARS['config_data']);
header("Content-Type: text/x-delimtext; name=\"config.$phpEx\"");
header("Content-disposition: attachment; filename=config.$phpEx");
echo $HTTP_POST_VARS['config_data'];
exit;
}
else if ( !empty($HTTP_POST_VARS['send_file']) && $HTTP_POST_VARS['send_file'] == 2 && !defined("PHPBB_INSTALLED") )
{
//
// Ok we couldn't write the config file so let's try ftping it.
//
$HTTP_POST_VARS['config_data'] = stripslashes($HTTP_POST_VARS['config_data']);
$s_hidden_fields = '';
$s_hidden_fields .= '';
if ( $upgrade == 1 )
{
$s_hidden_fields .= '';
}
$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")
);
$template->pparse("body");
exit;
}
else if( !empty($HTTP_POST_VARS['ftp_file']) && !defined("PHPBB_INSTALLED") )
{
//
// Here we'll actually send the file...
//
$HTTP_POST_VARS['config_data'] = stripslashes($HTTP_POST_VARS['config_data']);
$conn_id = @ftp_connect('localhost');
$login_result = @ftp_login($conn_id, "$ftp_user", "$ftp_pass");
if ( !$conn_id || !$login_result )
{
//
// Error couldn't get connected... Go back to option to send file...
//
$s_hidden_fields = '';
$s_hidden_fields .= '';
page_header($lang['NoFTP_config'], "install.$phpEx");
if ( $upgrade == 1 )
{
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$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_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+
$fp = @fopen($tmpfname, 'w');
@fwrite($fp, $HTTP_POST_VARS['config_data']);
@fclose($fp);
//
// Now ftp it across.
//
@ftp_chdir($conn_id, $ftp_dir);
$res = ftp_put($conn_id, '../config.'.$phpEx, $tmpfname, FTP_ASCII);
@ftp_quit($conn_id);
unlink($tmpfname);
if( $upgrade == 1 )
{
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 = '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
$s_hidden_fields .= '';
page_header($lang['Inst_Step_2'], "../login.$phpEx");
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") )
{
//
// 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($HTTP_SERVER_VARS['SERVER_NAME']) || !empty($HTTP_ENV_VARS['SERVER_NAME']) )
{
$server_name = ( !empty($HTTP_SERVER_VARS['SERVER_NAME']) ) ? $HTTP_SERVER_VARS['SERVER_NAME'] : $HTTP_ENV_VARS['SERVER_NAME'];
}
else if ( !empty($HTTP_SERVER_VARS['HTTP_HOST']) || !empty($HTTP_ENV_VARS['HTTP_HOST']) )
{
$server_name = ( !empty($HTTP_SERVER_VARS['HTTP_HOST']) ) ? $HTTP_SERVER_VARS['HTTP_HOST'] : $HTTP_ENV_VARS['HTTP_HOST'];
}
else
{
$server_name = '';
}
if ( !empty($HTTP_SERVER_VARS['SERVER_PORT']) || !empty($HTTP_ENV_VARS['SERVER_PORT']) )
{
$server_port = ( !empty($HTTP_SERVER_VARS['SERVER_PORT']) ) ? $HTTP_SERVER_VARS['SERVER_PORT'] : $HTTP_ENV_VARS['SERVER_PORT'];
}
else
{
$server_port = '80';
}
$script_path = preg_replace('/install\/install\.'.$phpEx.'/i', '', $HTTP_SERVER_VARS['PHP_SELF']);
//
//
//
$instruction_text = $lang['Inst_Step_0'];
/*
if ( (($HTTP_POST_VARS['admin_pass1'] != $HTTP_POST_VARS['admin_pass2']) && $install_step != '0') || ( empty($HTTP_POST_VARS['admin_pass1']) && !empty($dbhost)) )
{
$instruction_text = $lang['Password_mismatch'] . '
' . $instruction_text;
}
*/
$lang_options = language_select($language, 'language', '../language');
foreach( $available_dbms as $dbms_name => $details )
{
$selected = ( $dbms_name == $dbms ) ? ' selected="selected' : '';
$dbms_options .= '';
}
$upgrade_option = '';
$upgrade_option .= '';
$upgrade_option .= '';
$s_hidden_fields = '';
page_header($instruction_text, "install.$phpEx");
?>
' . $lang['ftp_option'] . '
'; $template->assign_vars(array( "L_CHOOSE_FTP" => $lang['ftp_choose'], "L_ATTEMPT_FTP" => $lang['Attempt_ftp'], "L_SEND_FILE" => $lang['Send_file']) ); } else { $s_hidden_fields .= ''; } if ( $upgrade == 1 ) { $s_hidden_fields .= ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; $template->assign_block_vars("switch_upgrade_install", array()); $template->assign_vars(array( "L_UPGRADE_INST" => $lang['continue_upgrade'], "L_UPGRADE_SUBMIT" => $lang['upgrade_submit']) ); } $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'); exit; } $result = @fputs($fp, $config_data, strlen($config_data)); @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'] ) { 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 = ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; $s_hidden_fields .= ''; } else { $s_hidden_fields = ''; } page_header($lang['Inst_Step_2'], "../login.$phpEx"); page_footer($lang['Finish_Install'], $s_hidden_fields); exit; } } // // addslashes to vars if magic_quotes_gpc is off this is a security precaution // to prevent someone trying to break out of a SQL statement. // function slash_input_data(&$data) { if ( is_array($data) ) { while( list($k, $v) = each($data) ) { $data[$k] = ( is_array($v) ) ? slash_input_data($v) : addslashes($v); } @reset($data); } return $data; } // // // function page_header($l_instructions, $s_action) { global $phpEx, $lang; ?>![]() |
Powered by phpBB © 2002 phpBB Group
|