1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-07-30 21:40:43 +02:00

Split the final step of the install into 2 steps

This should help to avoid any timeouts on slow servers with the amount being done


git-svn-id: file:///svn/phpbb/trunk@6127 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
Graham Eames
2006-06-26 20:13:07 +00:00
parent 2cc905b28e
commit c476382934
2 changed files with 36 additions and 4 deletions

View File

@@ -25,7 +25,7 @@ if (!empty($setmodules))
'module_filename' => substr(basename(__FILE__), 0, -strlen($phpEx)-1),
'module_order' => 10,
'module_subs' => '',
'module_stages' => array('INTRO', 'REQUIREMENTS', 'DATABASE', 'ADMINISTRATOR', 'CONFIG_FILE', 'ADVANCED', 'FINAL'),
'module_stages' => array('INTRO', 'REQUIREMENTS', 'DATABASE', 'ADMINISTRATOR', 'CONFIG_FILE', 'ADVANCED', 'CREATE_TABLE', 'FINAL'),
'module_reqs' => ''
);
}
@@ -84,8 +84,12 @@ class install_install extends module
break;
case 'final' :
case 'create_table':
$this->load_schema($mode, $sub);
break;
case 'final' :
$this->add_modules($mode, $sub);
$this->add_language($mode, $sub);
$this->add_bots($mode, $sub);
@@ -889,7 +893,7 @@ class install_install extends module
$submit = $lang['NEXT_STEP'];
$url = $this->p_master->module_url . "?mode=$mode&sub=final";
$url = $this->p_master->module_url . "?mode=$mode&sub=create_table";
$template->assign_vars(array(
'BODY' => $lang['STAGE_ADVANCED_EXPLAIN'],
@@ -1156,7 +1160,22 @@ class install_install extends module
$this->p_master->db_error($error['message'], $sql, __LINE__, __FILE__);
}
}
foreach ($this->request_vars as $var)
{
$s_hidden_fields .= '<input type="hidden" name="' . $var . '" value="' . $$var . '" />';
}
$submit = $lang['NEXT_STEP'];
$url = $this->p_master->module_url . "?mode=$mode&amp;sub=final";
$template->assign_vars(array(
'BODY' => $lang['STAGE_CREATE_TABLE_EXPLAIN'],
'L_SUBMIT' => $submit,
'S_HIDDEN' => $s_hidden_fields,
'U_ACTION' => $url,
));
}
/**
@@ -1172,6 +1191,17 @@ class install_install extends module
$$var = request_var($var, '');
}
// Load the appropriate database class if not already loaded
include($phpbb_root_path . 'includes/db/' . $dbms . '.' . $phpEx);
// Instantiate the database
$sql_db = 'dbal_' . $dbms;
$db = new $sql_db();
$db->sql_connect($dbhost, $dbuser, $dbpasswd, $dbname, $dbport, false);
// NOTE: trigger_error does not work here.
$db->return_on_error = true;
include_once($phpbb_root_path . 'includes/constants.' . $phpEx);
include_once($phpbb_root_path . 'includes/acp/acp_modules.' . $phpEx);