[ticket/10601] New approach in the update algorithm

- New approach in the database update algorithm

PHPBB3-10601
This commit is contained in:
Bruno Ais 2012-12-01 09:44:51 +00:00
parent 1d98915881
commit a0d5c52eb6

View file

@ -2750,28 +2750,25 @@ function change_database_data(&$no_updates, $version)
$config->set('site_home_text', ''); $config->set('site_home_text', '');
} }
// ticket/10601: Make inbox default. Add basename to ucp's pm category // PHPBB3-10601: Make inbox default. Add basename to ucp's pm category
// Check if this was already applied
$sql = 'SELECT module_id, module_basename, parent_id, left_id, right_id // Get the category wanted while checking, at the same time, if this has already been applied
$sql = 'SELECT module_id, module_basename
FROM ' . MODULES_TABLE . " FROM ' . MODULES_TABLE . "
WHERE module_basename = 'ucp_pm' WHERE module_basename <> 'ucp_pm' AND
module_langname='UCP_PM'
ORDER BY module_id"; ORDER BY module_id";
$result = $db->sql_query_limit($sql, 1); $result = $db->sql_query_limit($sql, 1);
if ($row = $db->sql_fetchrow($result)) if ($row = $db->sql_fetchrow($result))
{ {
// Checking if this is not a category // This update is still not applied. Applying it
if ($row['left_id'] === $row['right_id'] - 1)
{
// This update is still not applied. Applying it
$sql = 'UPDATE ' . MODULES_TABLE . " $sql = 'UPDATE ' . MODULES_TABLE . "
SET module_basename = 'ucp_pm' SET module_basename = 'ucp_pm'
WHERE module_id = " . (int) $row['parent_id']; WHERE module_id = " . (int) $row['module_id'];
_sql($sql, $errored, $error_ary); _sql($sql, $errored, $error_ary);
}
} }
$db->sql_freeresult($result); $db->sql_freeresult($result);