mirror of
https://github.com/phpbb/phpbb.git
synced 2025-02-19 07:41:08 +01:00
- fixed a referencing problem with objects (PHP4/5 conflict)
- user_group_auth can take data from both target and source database git-svn-id: file:///svn/phpbb/trunk@7002 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
parent
0af3306ee4
commit
b0d453098b
@ -1066,7 +1066,7 @@ function add_user_group($group_id, $user_id, $group_leader=false)
|
||||
* @param string $group The name of the special group to add to
|
||||
* @param string $select_query An SQL query to retrieve the user(s) to add to the group
|
||||
*/
|
||||
function user_group_auth($group, $select_query)
|
||||
function user_group_auth($group, $select_query, $use_src_db)
|
||||
{
|
||||
global $convert, $phpbb_root_path, $config, $user, $db, $src_db, $same_db;
|
||||
|
||||
@ -1089,7 +1089,7 @@ function user_group_auth($group, $select_query)
|
||||
return;
|
||||
}
|
||||
|
||||
if ($same_db)
|
||||
if ($same_db || !$use_src_db)
|
||||
{
|
||||
$sql = 'INSERT INTO ' . USER_GROUP_TABLE . ' (user_id, group_id, user_pending)
|
||||
' . str_replace('{' . strtoupper($group) . '}', $group_id . ', 0', $select_query);
|
||||
|
@ -698,22 +698,22 @@ function phpbb_convert_authentication($mode)
|
||||
|
||||
if ($mode == 'start')
|
||||
{
|
||||
user_group_auth('guests', 'SELECT user_id, {GUESTS} FROM ' . USERS_TABLE . ' WHERE user_id = ' . ANONYMOUS);
|
||||
user_group_auth('registered', 'SELECT user_id, {REGISTERED} FROM ' . USERS_TABLE . ' WHERE user_id <> ' . ANONYMOUS);
|
||||
user_group_auth('guests', 'SELECT user_id, {GUESTS} FROM ' . USERS_TABLE . ' WHERE user_id = ' . ANONYMOUS, false);
|
||||
user_group_auth('registered', 'SELECT user_id, {REGISTERED} FROM ' . USERS_TABLE . ' WHERE user_id <> ' . ANONYMOUS, false);
|
||||
|
||||
// Selecting from old table
|
||||
$auth_sql = 'SELECT ';
|
||||
$auth_sql .= (!empty($config['increment_user_id'])) ? 'user_id + 1 as user_id' : 'user_id';
|
||||
$auth_sql .= ', {ADMINISTRATORS} FROM ' . $convert->src_table_prefix . 'users WHERE user_level = 1';
|
||||
|
||||
user_group_auth('administrators', $auth_sql);
|
||||
user_group_auth('administrators', $auth_sql, true);
|
||||
|
||||
// Put administrators into global moderators group too...
|
||||
$auth_sql = 'SELECT ';
|
||||
$auth_sql .= (!empty($config['increment_user_id'])) ? 'user_id + 1 as user_id' : 'user_id';
|
||||
$auth_sql .= ', {GLOBAL_MODERATORS} FROM ' . $convert->src_table_prefix . 'users WHERE user_level = 1';
|
||||
|
||||
user_group_auth('global_moderators', $auth_sql);
|
||||
user_group_auth('global_moderators', $auth_sql, true);
|
||||
}
|
||||
else if ($mode == 'first')
|
||||
{
|
||||
|
@ -407,7 +407,7 @@ class install_convert extends module
|
||||
else
|
||||
{
|
||||
$src_dbpasswd = htmlspecialchars_decode($src_dbpasswd);
|
||||
$connect_test = connect_check_db(true, $error, $available_dbms[$src_dbms], false, $src_dbhost, $src_dbuser, $src_dbpasswd, $src_dbname, $src_dbport, ($src_dbms == $dbms) ? false : true);
|
||||
$connect_test = connect_check_db(true, $error, $available_dbms[$src_dbms], $src_table_prefix, $src_dbhost, $src_dbuser, $src_dbpasswd, $src_dbname, $src_dbport, true, ($src_dbms == $dbms) ? false : true);
|
||||
}
|
||||
|
||||
// The forum prefix of the old and the new forum can only be the same if two different databases are used.
|
||||
@ -421,7 +421,7 @@ class install_convert extends module
|
||||
{
|
||||
// initiate database connection to old db if old and new db differ
|
||||
global $src_db, $same_db;
|
||||
$src_db = $same_db = null;
|
||||
$src_db = $same_db = false;
|
||||
|
||||
if ($src_dbms != $dbms || $src_dbhost != $dbhost || $src_dbport != $dbport || $src_dbname != $dbname || $src_dbuser != $dbuser)
|
||||
{
|
||||
@ -432,7 +432,14 @@ class install_convert extends module
|
||||
}
|
||||
else
|
||||
{
|
||||
$src_db = &$db;
|
||||
if (version_compare(PHP_VERSION, '5.0.0-dev', '<'))
|
||||
{
|
||||
$src_db = &$db;
|
||||
}
|
||||
else
|
||||
{
|
||||
$src_db = $db;
|
||||
}
|
||||
$same_db = true;
|
||||
}
|
||||
|
||||
@ -660,7 +667,14 @@ class install_convert extends module
|
||||
}
|
||||
else
|
||||
{
|
||||
$src_db = &$db;
|
||||
if (version_compare(PHP_VERSION, '5.0.0-dev', '<'))
|
||||
{
|
||||
$src_db = &$db;
|
||||
}
|
||||
else
|
||||
{
|
||||
$src_db = $db;
|
||||
}
|
||||
$same_db = true;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user