mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-08 04:18:52 +00:00
- make viewforum work again
- remove the lower case functions, they were stupid anyway - added some indexes - added a group_name_clean column git-svn-id: file:///svn/phpbb/trunk@8315 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
parent
b4e64655af
commit
370e189f15
23 changed files with 197 additions and 460 deletions
|
@ -208,7 +208,7 @@ $dbms_type_map = array(
|
||||||
'UINT' => 'INT4', // unsigned
|
'UINT' => 'INT4', // unsigned
|
||||||
'UINT:' => 'INT4', // unsigned
|
'UINT:' => 'INT4', // unsigned
|
||||||
'USINT' => 'INT2', // unsigned
|
'USINT' => 'INT2', // unsigned
|
||||||
'BOOL' => 'INT2', // unsigned
|
'BOOL' => 'boolean', // unsigned
|
||||||
'TINT:' => 'INT2',
|
'TINT:' => 'INT2',
|
||||||
'VCHAR' => 'varchar(255)',
|
'VCHAR' => 'varchar(255)',
|
||||||
'VCHAR:' => 'varchar(%d)',
|
'VCHAR:' => 'varchar(%d)',
|
||||||
|
@ -228,7 +228,7 @@ $dbms_type_map = array(
|
||||||
'PDECIMAL:' => 'decimal(%d,3)',
|
'PDECIMAL:' => 'decimal(%d,3)',
|
||||||
'VCHAR_UNI' => 'varchar(255)',
|
'VCHAR_UNI' => 'varchar(255)',
|
||||||
'VCHAR_UNI:'=> 'varchar(%d)',
|
'VCHAR_UNI:'=> 'varchar(%d)',
|
||||||
'VCHAR_CI' => 'varchar_ci',
|
'VCHAR_CI' => 'varchar(255)',
|
||||||
'VARBINARY' => 'bytea',
|
'VARBINARY' => 'bytea',
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
@ -239,7 +239,7 @@ $supported_dbms = array('firebird', 'mssql', 'mysql', 'db2', 'oracle', 'postgres
|
||||||
|
|
||||||
foreach ($supported_dbms as $dbms)
|
foreach ($supported_dbms as $dbms)
|
||||||
{
|
{
|
||||||
$fp = fopen($schema_path . '_' . $dbms . '_schema.sql', 'wt');
|
$fp = fopen($schema_path . '' . $dbms . '_schema.sql', 'wt');
|
||||||
|
|
||||||
$line = '';
|
$line = '';
|
||||||
|
|
||||||
|
@ -999,6 +999,7 @@ function get_schema_struct()
|
||||||
'PRIMARY_KEY' => 'config_name',
|
'PRIMARY_KEY' => 'config_name',
|
||||||
'KEYS' => array(
|
'KEYS' => array(
|
||||||
'is_dynamic' => array('INDEX', 'is_dynamic'),
|
'is_dynamic' => array('INDEX', 'is_dynamic'),
|
||||||
|
'config_name' => array('INDEX', 'config_name'),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -1150,7 +1151,8 @@ function get_schema_struct()
|
||||||
'group_id' => array('UINT', NULL, 'auto_increment'),
|
'group_id' => array('UINT', NULL, 'auto_increment'),
|
||||||
'group_type' => array('TINT:4', 1),
|
'group_type' => array('TINT:4', 1),
|
||||||
'group_founder_manage' => array('BOOL', 0),
|
'group_founder_manage' => array('BOOL', 0),
|
||||||
'group_name' => array('VCHAR_CI', ''),
|
'group_name' => array('VCHAR_UNI', ''),
|
||||||
|
'group_name_clean' => array('VCHAR_UNI', ''),
|
||||||
'group_desc' => array('TEXT_UNI', ''),
|
'group_desc' => array('TEXT_UNI', ''),
|
||||||
'group_desc_bitfield' => array('VCHAR:255', ''),
|
'group_desc_bitfield' => array('VCHAR:255', ''),
|
||||||
'group_desc_options' => array('UINT:11', 7),
|
'group_desc_options' => array('UINT:11', 7),
|
||||||
|
@ -1803,8 +1805,8 @@ function get_schema_struct()
|
||||||
'user_perm_from' => array('UINT', 0),
|
'user_perm_from' => array('UINT', 0),
|
||||||
'user_ip' => array('VCHAR:40', ''),
|
'user_ip' => array('VCHAR:40', ''),
|
||||||
'user_regdate' => array('TIMESTAMP', 0),
|
'user_regdate' => array('TIMESTAMP', 0),
|
||||||
'username' => array('VCHAR_CI', ''),
|
'username' => array('VCHAR_UNI', ''),
|
||||||
'username_clean' => array('VCHAR_CI', ''),
|
'username_clean' => array('VCHAR_UNI', ''),
|
||||||
'user_password' => array('VCHAR_UNI:40', ''),
|
'user_password' => array('VCHAR_UNI:40', ''),
|
||||||
'user_passchg' => array('TIMESTAMP', 0),
|
'user_passchg' => array('TIMESTAMP', 0),
|
||||||
'user_pass_convert' => array('BOOL', 0),
|
'user_pass_convert' => array('BOOL', 0),
|
||||||
|
@ -1908,6 +1910,9 @@ function get_schema_struct()
|
||||||
'foe' => array('BOOL', 0),
|
'foe' => array('BOOL', 0),
|
||||||
),
|
),
|
||||||
'PRIMARY_KEY' => array('user_id', 'zebra_id'),
|
'PRIMARY_KEY' => array('user_id', 'zebra_id'),
|
||||||
|
'KEYS' => array(
|
||||||
|
'zebra_user' => array('INDEX', array('zebra_id', 'user_id')),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
return $schema_data;
|
return $schema_data;
|
||||||
|
@ -1963,86 +1968,6 @@ CONNECT phpbb/phpbb_password;
|
||||||
EOF;
|
EOF;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'postgres':
|
|
||||||
return <<<EOF
|
|
||||||
/*
|
|
||||||
Domain definition
|
|
||||||
*/
|
|
||||||
CREATE DOMAIN varchar_ci AS varchar(255) NOT NULL DEFAULT ''::character varying;
|
|
||||||
|
|
||||||
/*
|
|
||||||
Operation Functions
|
|
||||||
*/
|
|
||||||
CREATE FUNCTION _varchar_ci_equal(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) = LOWER($2)' LANGUAGE SQL STRICT;
|
|
||||||
CREATE FUNCTION _varchar_ci_not_equal(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) != LOWER($2)' LANGUAGE SQL STRICT;
|
|
||||||
CREATE FUNCTION _varchar_ci_less_than(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) < LOWER($2)' LANGUAGE SQL STRICT;
|
|
||||||
CREATE FUNCTION _varchar_ci_less_equal(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) <= LOWER($2)' LANGUAGE SQL STRICT;
|
|
||||||
CREATE FUNCTION _varchar_ci_greater_than(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) > LOWER($2)' LANGUAGE SQL STRICT;
|
|
||||||
CREATE FUNCTION _varchar_ci_greater_equals(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) >= LOWER($2)' LANGUAGE SQL STRICT;
|
|
||||||
|
|
||||||
/*
|
|
||||||
Operators
|
|
||||||
*/
|
|
||||||
CREATE OPERATOR <(
|
|
||||||
PROCEDURE = _varchar_ci_less_than,
|
|
||||||
LEFTARG = varchar_ci,
|
|
||||||
RIGHTARG = varchar_ci,
|
|
||||||
COMMUTATOR = >,
|
|
||||||
NEGATOR = >=,
|
|
||||||
RESTRICT = scalarltsel,
|
|
||||||
JOIN = scalarltjoinsel);
|
|
||||||
|
|
||||||
CREATE OPERATOR <=(
|
|
||||||
PROCEDURE = _varchar_ci_less_equal,
|
|
||||||
LEFTARG = varchar_ci,
|
|
||||||
RIGHTARG = varchar_ci,
|
|
||||||
COMMUTATOR = >=,
|
|
||||||
NEGATOR = >,
|
|
||||||
RESTRICT = scalarltsel,
|
|
||||||
JOIN = scalarltjoinsel);
|
|
||||||
|
|
||||||
CREATE OPERATOR >(
|
|
||||||
PROCEDURE = _varchar_ci_greater_than,
|
|
||||||
LEFTARG = varchar_ci,
|
|
||||||
RIGHTARG = varchar_ci,
|
|
||||||
COMMUTATOR = <,
|
|
||||||
NEGATOR = <=,
|
|
||||||
RESTRICT = scalargtsel,
|
|
||||||
JOIN = scalargtjoinsel);
|
|
||||||
|
|
||||||
CREATE OPERATOR >=(
|
|
||||||
PROCEDURE = _varchar_ci_greater_equals,
|
|
||||||
LEFTARG = varchar_ci,
|
|
||||||
RIGHTARG = varchar_ci,
|
|
||||||
COMMUTATOR = <=,
|
|
||||||
NEGATOR = <,
|
|
||||||
RESTRICT = scalargtsel,
|
|
||||||
JOIN = scalargtjoinsel);
|
|
||||||
|
|
||||||
CREATE OPERATOR <>(
|
|
||||||
PROCEDURE = _varchar_ci_not_equal,
|
|
||||||
LEFTARG = varchar_ci,
|
|
||||||
RIGHTARG = varchar_ci,
|
|
||||||
COMMUTATOR = <>,
|
|
||||||
NEGATOR = =,
|
|
||||||
RESTRICT = neqsel,
|
|
||||||
JOIN = neqjoinsel);
|
|
||||||
|
|
||||||
CREATE OPERATOR =(
|
|
||||||
PROCEDURE = _varchar_ci_equal,
|
|
||||||
LEFTARG = varchar_ci,
|
|
||||||
RIGHTARG = varchar_ci,
|
|
||||||
COMMUTATOR = =,
|
|
||||||
NEGATOR = <>,
|
|
||||||
RESTRICT = eqsel,
|
|
||||||
JOIN = eqjoinsel,
|
|
||||||
HASHES,
|
|
||||||
MERGES,
|
|
||||||
SORT1= <);
|
|
||||||
|
|
||||||
EOF;
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return '';
|
return '';
|
||||||
|
|
|
@ -479,14 +479,21 @@ class acp_attachments
|
||||||
// Check New Group Name
|
// Check New Group Name
|
||||||
if ($new_group_name)
|
if ($new_group_name)
|
||||||
{
|
{
|
||||||
$sql = 'SELECT group_id
|
$sql = 'SELECT group_name
|
||||||
FROM ' . EXTENSION_GROUPS_TABLE . "
|
FROM ' . EXTENSION_GROUPS_TABLE;
|
||||||
WHERE LOWER(group_name) = '" . $db->sql_escape(utf8_strtolower($new_group_name)) . "'";
|
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
$ext_row = $db->sql_fetchrow($result);
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if ($db->sql_fetchrow($result))
|
$clean_group_name = utf8_clean_string($new_group_name);
|
||||||
|
|
||||||
|
while ($row = $db->sql_fetchrow($result))
|
||||||
|
{
|
||||||
|
if (utf8_clean_string($row['group_name']) === $clean_group_name)
|
||||||
{
|
{
|
||||||
$error[] = sprintf($user->lang['EXTENSION_GROUP_EXIST'], $new_group_name);
|
$error[] = sprintf($user->lang['EXTENSION_GROUP_EXIST'], $new_group_name);
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
}
|
}
|
||||||
|
|
|
@ -210,7 +210,7 @@ class acp_bots
|
||||||
{
|
{
|
||||||
$sql = 'SELECT group_id, group_colour
|
$sql = 'SELECT group_id, group_colour
|
||||||
FROM ' . GROUPS_TABLE . "
|
FROM ' . GROUPS_TABLE . "
|
||||||
WHERE group_name = 'BOTS'
|
WHERE group_name_clean = 'bots'
|
||||||
AND group_type = " . GROUP_SPECIAL;
|
AND group_type = " . GROUP_SPECIAL;
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$group_row = $db->sql_fetchrow($result);
|
$group_row = $db->sql_fetchrow($result);
|
||||||
|
|
|
@ -227,7 +227,7 @@ class acp_email
|
||||||
// Exclude bots and guests...
|
// Exclude bots and guests...
|
||||||
$sql = 'SELECT group_id
|
$sql = 'SELECT group_id
|
||||||
FROM ' . GROUPS_TABLE . "
|
FROM ' . GROUPS_TABLE . "
|
||||||
WHERE group_name IN ('BOTS', 'GUESTS')";
|
WHERE group_name_clean IN ('bots', 'guests')";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
|
||||||
$exclude = array();
|
$exclude = array();
|
||||||
|
|
|
@ -188,7 +188,7 @@ function user_row_apache($username, $password)
|
||||||
// first retrieve default group id
|
// first retrieve default group id
|
||||||
$sql = 'SELECT group_id
|
$sql = 'SELECT group_id
|
||||||
FROM ' . GROUPS_TABLE . "
|
FROM ' . GROUPS_TABLE . "
|
||||||
WHERE group_name = '" . $db->sql_escape('REGISTERED') . "'
|
WHERE group_name_clean = '" . $db->sql_escape('registered') . "'
|
||||||
AND group_type = " . GROUP_SPECIAL;
|
AND group_type = " . GROUP_SPECIAL;
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$row = $db->sql_fetchrow($result);
|
$row = $db->sql_fetchrow($result);
|
||||||
|
|
|
@ -198,7 +198,7 @@ function login_ldap(&$username, &$password)
|
||||||
// retrieve default group id
|
// retrieve default group id
|
||||||
$sql = 'SELECT group_id
|
$sql = 'SELECT group_id
|
||||||
FROM ' . GROUPS_TABLE . "
|
FROM ' . GROUPS_TABLE . "
|
||||||
WHERE group_name = '" . $db->sql_escape('REGISTERED') . "'
|
WHERE group_name_clean = '" . $db->sql_escape('registered') . "'
|
||||||
AND group_type = " . GROUP_SPECIAL;
|
AND group_type = " . GROUP_SPECIAL;
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$row = $db->sql_fetchrow($result);
|
$row = $db->sql_fetchrow($result);
|
||||||
|
|
|
@ -214,7 +214,7 @@ class phpbb_db_tools
|
||||||
'UINT' => 'INT4', // unsigned
|
'UINT' => 'INT4', // unsigned
|
||||||
'UINT:' => 'INT4', // unsigned
|
'UINT:' => 'INT4', // unsigned
|
||||||
'USINT' => 'INT2', // unsigned
|
'USINT' => 'INT2', // unsigned
|
||||||
'BOOL' => 'INT2', // unsigned
|
'BOOL' => 'boolean', // unsigned
|
||||||
'TINT:' => 'INT2',
|
'TINT:' => 'INT2',
|
||||||
'VCHAR' => 'varchar(255)',
|
'VCHAR' => 'varchar(255)',
|
||||||
'VCHAR:' => 'varchar(%d)',
|
'VCHAR:' => 'varchar(%d)',
|
||||||
|
@ -234,7 +234,7 @@ class phpbb_db_tools
|
||||||
'PDECIMAL:' => 'decimal(%d,3)',
|
'PDECIMAL:' => 'decimal(%d,3)',
|
||||||
'VCHAR_UNI' => 'varchar(255)',
|
'VCHAR_UNI' => 'varchar(255)',
|
||||||
'VCHAR_UNI:'=> 'varchar(%d)',
|
'VCHAR_UNI:'=> 'varchar(%d)',
|
||||||
'VCHAR_CI' => 'varchar_ci',
|
'VCHAR_CI' => 'varchar(255)',
|
||||||
'VARBINARY' => 'bytea',
|
'VARBINARY' => 'bytea',
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
|
@ -1141,7 +1141,7 @@ function user_group_auth($group, $select_query, $use_src_db)
|
||||||
|
|
||||||
$sql = 'SELECT group_id
|
$sql = 'SELECT group_id
|
||||||
FROM ' . GROUPS_TABLE . "
|
FROM ' . GROUPS_TABLE . "
|
||||||
WHERE group_name = '" . $db->sql_escape(strtoupper($group)) . "'";
|
WHERE group_name_clean = '" . $db->sql_escape(utf8_clean_string($group)) . "'";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$group_id = (int) $db->sql_fetchfield('group_id');
|
$group_id = (int) $db->sql_fetchfield('group_id');
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
@ -1474,7 +1474,7 @@ function mass_auth($ug_type, $forum_id, $ug_id, $acl_list, $setting = ACL_NO)
|
||||||
{
|
{
|
||||||
$sql = 'SELECT group_id
|
$sql = 'SELECT group_id
|
||||||
FROM ' . GROUPS_TABLE . "
|
FROM ' . GROUPS_TABLE . "
|
||||||
WHERE group_name = '" . $db->sql_escape(strtoupper($ug_id)) . "'";
|
WHERE group_name_clean = '" . $db->sql_escape(utf8_clean_string($ug_id)) . "'";
|
||||||
$result = $db->sql_query_limit($sql, 1);
|
$result = $db->sql_query_limit($sql, 1);
|
||||||
$id = (int) $db->sql_fetchfield('group_id');
|
$id = (int) $db->sql_fetchfield('group_id');
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
@ -1702,7 +1702,7 @@ function add_default_groups()
|
||||||
|
|
||||||
$sql = 'SELECT *
|
$sql = 'SELECT *
|
||||||
FROM ' . GROUPS_TABLE . '
|
FROM ' . GROUPS_TABLE . '
|
||||||
WHERE ' . $db->sql_in_set('group_name', array_keys($default_groups));
|
WHERE ' . $db->sql_in_set('group_name_clean', array_map('utf8_clean_string', array_keys($default_groups));
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
|
||||||
while ($row = $db->sql_fetchrow($result))
|
while ($row = $db->sql_fetchrow($result))
|
||||||
|
@ -1717,6 +1717,7 @@ function add_default_groups()
|
||||||
{
|
{
|
||||||
$sql_ary[] = array(
|
$sql_ary[] = array(
|
||||||
'group_name' => (string) $name,
|
'group_name' => (string) $name,
|
||||||
|
'group_name_clean' => (string) utf8_clean_string($name),
|
||||||
'group_desc' => '',
|
'group_desc' => '',
|
||||||
'group_desc_uid' => '',
|
'group_desc_uid' => '',
|
||||||
'group_desc_bitfield' => '',
|
'group_desc_bitfield' => '',
|
||||||
|
@ -1766,7 +1767,7 @@ function add_bots()
|
||||||
|
|
||||||
$db->sql_query($convert->truncate_statement . BOTS_TABLE);
|
$db->sql_query($convert->truncate_statement . BOTS_TABLE);
|
||||||
|
|
||||||
$sql = 'SELECT group_id FROM ' . GROUPS_TABLE . " WHERE group_name = 'BOTS'";
|
$sql = 'SELECT group_id FROM ' . GROUPS_TABLE . " WHERE group_name_clean = 'bots'";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$group_id = (int) $db->sql_fetchfield('group_id', false, $result);
|
$group_id = (int) $db->sql_fetchfield('group_id', false, $result);
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
@ -1775,7 +1776,7 @@ function add_bots()
|
||||||
{
|
{
|
||||||
add_default_groups();
|
add_default_groups();
|
||||||
|
|
||||||
$sql = 'SELECT group_id FROM ' . GROUPS_TABLE . " WHERE group_name = 'BOTS'";
|
$sql = 'SELECT group_id FROM ' . GROUPS_TABLE . " WHERE group_name_clean = 'bots'";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$group_id = (int) $db->sql_fetchfield('group_id', false, $result);
|
$group_id = (int) $db->sql_fetchfield('group_id', false, $result);
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
|
@ -1405,7 +1405,7 @@ function validate_username($username, $allowed_username = false)
|
||||||
|
|
||||||
$sql = 'SELECT group_name
|
$sql = 'SELECT group_name
|
||||||
FROM ' . GROUPS_TABLE . "
|
FROM ' . GROUPS_TABLE . "
|
||||||
WHERE LOWER(group_name) = '" . $db->sql_escape(utf8_strtolower($username)) . "'";
|
WHERE group_name = '" . $db->sql_escape($clean_username) . "'";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$row = $db->sql_fetchrow($result);
|
$row = $db->sql_fetchrow($result);
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
@ -2297,6 +2297,7 @@ function group_create(&$group_id, $type, $name, $desc, $group_attributes, $allow
|
||||||
$user_ary = array();
|
$user_ary = array();
|
||||||
$sql_ary = array(
|
$sql_ary = array(
|
||||||
'group_name' => (string) $name,
|
'group_name' => (string) $name,
|
||||||
|
'group_name_clean' => (string) utf8_clean_string($name),
|
||||||
'group_desc' => (string) $desc,
|
'group_desc' => (string) $desc,
|
||||||
'group_desc_uid' => '',
|
'group_desc_uid' => '',
|
||||||
'group_desc_bitfield' => '',
|
'group_desc_bitfield' => '',
|
||||||
|
@ -2637,9 +2638,11 @@ function group_user_del($group_id, $user_id_ary = false, $username_ary = false,
|
||||||
return 'NO_USER';
|
return 'NO_USER';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$clean_group_order = array_map('utf8_clean_string', $group_order);
|
||||||
|
|
||||||
$sql = 'SELECT *
|
$sql = 'SELECT *
|
||||||
FROM ' . GROUPS_TABLE . '
|
FROM ' . GROUPS_TABLE . '
|
||||||
WHERE ' . $db->sql_in_set('group_name', $group_order);
|
WHERE ' . $db->sql_in_set('group_name_clean', $clean_group_order);
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
|
||||||
$group_order_id = $special_group_data = array();
|
$group_order_id = $special_group_data = array();
|
||||||
|
@ -2679,7 +2682,7 @@ function group_user_del($group_id, $user_id_ary = false, $username_ary = false,
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
// What special group memberships exist for these users?
|
// What special group memberships exist for these users?
|
||||||
$sql = 'SELECT g.group_id, g.group_name, ug.user_id
|
$sql = 'SELECT g.group_id, g.group_name_clean, ug.user_id
|
||||||
FROM ' . USER_GROUP_TABLE . ' ug, ' . GROUPS_TABLE . ' g
|
FROM ' . USER_GROUP_TABLE . ' ug, ' . GROUPS_TABLE . ' g
|
||||||
WHERE ' . $db->sql_in_set('ug.user_id', $user_id_ary) . "
|
WHERE ' . $db->sql_in_set('ug.user_id', $user_id_ary) . "
|
||||||
AND g.group_id = ug.group_id
|
AND g.group_id = ug.group_id
|
||||||
|
@ -2691,7 +2694,7 @@ function group_user_del($group_id, $user_id_ary = false, $username_ary = false,
|
||||||
$temp_ary = array();
|
$temp_ary = array();
|
||||||
while ($row = $db->sql_fetchrow($result))
|
while ($row = $db->sql_fetchrow($result))
|
||||||
{
|
{
|
||||||
if ($default_groups[$row['user_id']] == $group_id && (!isset($temp_ary[$row['user_id']]) || array_search($row['group_name'], $group_order) < $temp_ary[$row['user_id']]))
|
if ($default_groups[$row['user_id']] == $group_id && (!isset($temp_ary[$row['user_id']]) || array_search($row['group_name_clean'], $clean_group_order) < $temp_ary[$row['user_id']]))
|
||||||
{
|
{
|
||||||
$temp_ary[$row['user_id']] = $row['group_id'];
|
$temp_ary[$row['user_id']] = $row['group_id'];
|
||||||
}
|
}
|
||||||
|
@ -2953,7 +2956,7 @@ function group_validate_groupname($group_id, $group_name)
|
||||||
|
|
||||||
if (!empty($group_id))
|
if (!empty($group_id))
|
||||||
{
|
{
|
||||||
$sql = 'SELECT group_name
|
$sql = 'SELECT group_name_clean
|
||||||
FROM ' . GROUPS_TABLE . '
|
FROM ' . GROUPS_TABLE . '
|
||||||
WHERE group_id = ' . (int) $group_id;
|
WHERE group_id = ' . (int) $group_id;
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
@ -2975,7 +2978,7 @@ function group_validate_groupname($group_id, $group_name)
|
||||||
|
|
||||||
$sql = 'SELECT group_name
|
$sql = 'SELECT group_name
|
||||||
FROM ' . GROUPS_TABLE . "
|
FROM ' . GROUPS_TABLE . "
|
||||||
WHERE LOWER(group_name) = '" . $db->sql_escape(utf8_strtolower($group_name)) . "'";
|
WHERE group_name_clean = '" . $db->sql_escape(utf8_clean_string($group_name)) . "'";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$row = $db->sql_fetchrow($result);
|
$row = $db->sql_fetchrow($result);
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
|
@ -192,24 +192,6 @@ if (extension_loaded('mbstring'))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* UTF-8 aware alternative to strtolower
|
|
||||||
* @ignore
|
|
||||||
*/
|
|
||||||
function utf8_strtolower($str)
|
|
||||||
{
|
|
||||||
return mb_strtolower($str);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* UTF-8 aware alternative to strtoupper
|
|
||||||
* @ignore
|
|
||||||
*/
|
|
||||||
function utf8_strtoupper($str)
|
|
||||||
{
|
|
||||||
return mb_strtoupper($str);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* UTF-8 aware alternative to substr
|
* UTF-8 aware alternative to substr
|
||||||
* @ignore
|
* @ignore
|
||||||
|
@ -322,136 +304,6 @@ else
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* UTF-8 aware alternative to strtolower
|
|
||||||
* Make a string lowercase
|
|
||||||
* Note: The concept of a characters "case" only exists is some alphabets
|
|
||||||
* such as Latin, Greek, Cyrillic, Armenian and archaic Georgian - it does
|
|
||||||
* not exist in the Chinese alphabet, for example. See Unicode Standard
|
|
||||||
* Annex #21: Case Mappings
|
|
||||||
*
|
|
||||||
* @param string
|
|
||||||
* @return string string in lowercase
|
|
||||||
*/
|
|
||||||
function utf8_strtolower($string)
|
|
||||||
{
|
|
||||||
static $utf8_upper_to_lower = array(
|
|
||||||
"\xC3\x80" => "\xC3\xA0", "\xC3\x81" => "\xC3\xA1",
|
|
||||||
"\xC3\x82" => "\xC3\xA2", "\xC3\x83" => "\xC3\xA3", "\xC3\x84" => "\xC3\xA4", "\xC3\x85" => "\xC3\xA5",
|
|
||||||
"\xC3\x86" => "\xC3\xA6", "\xC3\x87" => "\xC3\xA7", "\xC3\x88" => "\xC3\xA8", "\xC3\x89" => "\xC3\xA9",
|
|
||||||
"\xC3\x8A" => "\xC3\xAA", "\xC3\x8B" => "\xC3\xAB", "\xC3\x8C" => "\xC3\xAC", "\xC3\x8D" => "\xC3\xAD",
|
|
||||||
"\xC3\x8E" => "\xC3\xAE", "\xC3\x8F" => "\xC3\xAF", "\xC3\x90" => "\xC3\xB0", "\xC3\x91" => "\xC3\xB1",
|
|
||||||
"\xC3\x92" => "\xC3\xB2", "\xC3\x93" => "\xC3\xB3", "\xC3\x94" => "\xC3\xB4", "\xC3\x95" => "\xC3\xB5",
|
|
||||||
"\xC3\x96" => "\xC3\xB6", "\xC3\x98" => "\xC3\xB8", "\xC3\x99" => "\xC3\xB9", "\xC3\x9A" => "\xC3\xBA",
|
|
||||||
"\xC3\x9B" => "\xC3\xBB", "\xC3\x9C" => "\xC3\xBC", "\xC3\x9D" => "\xC3\xBD", "\xC3\x9E" => "\xC3\xBE",
|
|
||||||
"\xC4\x80" => "\xC4\x81", "\xC4\x82" => "\xC4\x83", "\xC4\x84" => "\xC4\x85", "\xC4\x86" => "\xC4\x87",
|
|
||||||
"\xC4\x88" => "\xC4\x89", "\xC4\x8A" => "\xC4\x8B", "\xC4\x8C" => "\xC4\x8D", "\xC4\x8E" => "\xC4\x8F",
|
|
||||||
"\xC4\x90" => "\xC4\x91", "\xC4\x92" => "\xC4\x93", "\xC4\x96" => "\xC4\x97", "\xC4\x98" => "\xC4\x99",
|
|
||||||
"\xC4\x9A" => "\xC4\x9B", "\xC4\x9C" => "\xC4\x9D", "\xC4\x9E" => "\xC4\x9F", "\xC4\xA0" => "\xC4\xA1",
|
|
||||||
"\xC4\xA2" => "\xC4\xA3", "\xC4\xA4" => "\xC4\xA5", "\xC4\xA6" => "\xC4\xA7", "\xC4\xA8" => "\xC4\xA9",
|
|
||||||
"\xC4\xAA" => "\xC4\xAB", "\xC4\xAE" => "\xC4\xAF", "\xC4\xB4" => "\xC4\xB5", "\xC4\xB6" => "\xC4\xB7",
|
|
||||||
"\xC4\xB9" => "\xC4\xBA", "\xC4\xBB" => "\xC4\xBC", "\xC4\xBD" => "\xC4\xBE", "\xC5\x81" => "\xC5\x82",
|
|
||||||
"\xC5\x83" => "\xC5\x84", "\xC5\x85" => "\xC5\x86", "\xC5\x87" => "\xC5\x88", "\xC5\x8A" => "\xC5\x8B",
|
|
||||||
"\xC5\x8C" => "\xC5\x8D", "\xC5\x90" => "\xC5\x91", "\xC5\x94" => "\xC5\x95", "\xC5\x96" => "\xC5\x97",
|
|
||||||
"\xC5\x98" => "\xC5\x99", "\xC5\x9A" => "\xC5\x9B", "\xC5\x9C" => "\xC5\x9D", "\xC5\x9E" => "\xC5\x9F",
|
|
||||||
"\xC5\xA0" => "\xC5\xA1", "\xC5\xA2" => "\xC5\xA3", "\xC5\xA4" => "\xC5\xA5", "\xC5\xA6" => "\xC5\xA7",
|
|
||||||
"\xC5\xA8" => "\xC5\xA9", "\xC5\xAA" => "\xC5\xAB", "\xC5\xAC" => "\xC5\xAD", "\xC5\xAE" => "\xC5\xAF",
|
|
||||||
"\xC5\xB0" => "\xC5\xB1", "\xC5\xB2" => "\xC5\xB3", "\xC5\xB4" => "\xC5\xB5", "\xC5\xB6" => "\xC5\xB7",
|
|
||||||
"\xC5\xB8" => "\xC3\xBF", "\xC5\xB9" => "\xC5\xBA", "\xC5\xBB" => "\xC5\xBC", "\xC5\xBD" => "\xC5\xBE",
|
|
||||||
"\xC6\xA0" => "\xC6\xA1", "\xC6\xAF" => "\xC6\xB0", "\xC8\x98" => "\xC8\x99", "\xC8\x9A" => "\xC8\x9B",
|
|
||||||
"\xCE\x86" => "\xCE\xAC", "\xCE\x88" => "\xCE\xAD", "\xCE\x89" => "\xCE\xAE", "\xCE\x8A" => "\xCE\xAF",
|
|
||||||
"\xCE\x8C" => "\xCF\x8C", "\xCE\x8E" => "\xCF\x8D", "\xCE\x8F" => "\xCF\x8E", "\xCE\x91" => "\xCE\xB1",
|
|
||||||
"\xCE\x92" => "\xCE\xB2", "\xCE\x93" => "\xCE\xB3", "\xCE\x94" => "\xCE\xB4", "\xCE\x95" => "\xCE\xB5",
|
|
||||||
"\xCE\x96" => "\xCE\xB6", "\xCE\x97" => "\xCE\xB7", "\xCE\x98" => "\xCE\xB8", "\xCE\x99" => "\xCE\xB9",
|
|
||||||
"\xCE\x9A" => "\xCE\xBA", "\xCE\x9B" => "\xCE\xBB", "\xCE\x9C" => "\xCE\xBC", "\xCE\x9D" => "\xCE\xBD",
|
|
||||||
"\xCE\x9E" => "\xCE\xBE", "\xCE\x9F" => "\xCE\xBF", "\xCE\xA0" => "\xCF\x80", "\xCE\xA1" => "\xCF\x81",
|
|
||||||
"\xCE\xA3" => "\xCF\x83", "\xCE\xA4" => "\xCF\x84", "\xCE\xA5" => "\xCF\x85", "\xCE\xA6" => "\xCF\x86",
|
|
||||||
"\xCE\xA7" => "\xCF\x87", "\xCE\xA8" => "\xCF\x88", "\xCE\xA9" => "\xCF\x89", "\xCE\xAA" => "\xCF\x8A",
|
|
||||||
"\xCE\xAB" => "\xCF\x8B", "\xD0\x81" => "\xD1\x91", "\xD0\x82" => "\xD1\x92", "\xD0\x83" => "\xD1\x93",
|
|
||||||
"\xD0\x84" => "\xD1\x94", "\xD0\x85" => "\xD1\x95", "\xD0\x86" => "\xD1\x96", "\xD0\x87" => "\xD1\x97",
|
|
||||||
"\xD0\x88" => "\xD1\x98", "\xD0\x89" => "\xD1\x99", "\xD0\x8A" => "\xD1\x9A", "\xD0\x8B" => "\xD1\x9B",
|
|
||||||
"\xD0\x8C" => "\xD1\x9C", "\xD0\x8E" => "\xD1\x9E", "\xD0\x8F" => "\xD1\x9F", "\xD0\x90" => "\xD0\xB0",
|
|
||||||
"\xD0\x91" => "\xD0\xB1", "\xD0\x92" => "\xD0\xB2", "\xD0\x93" => "\xD0\xB3", "\xD0\x94" => "\xD0\xB4",
|
|
||||||
"\xD0\x95" => "\xD0\xB5", "\xD0\x96" => "\xD0\xB6", "\xD0\x97" => "\xD0\xB7", "\xD0\x98" => "\xD0\xB8",
|
|
||||||
"\xD0\x99" => "\xD0\xB9", "\xD0\x9A" => "\xD0\xBA", "\xD0\x9B" => "\xD0\xBB", "\xD0\x9C" => "\xD0\xBC",
|
|
||||||
"\xD0\x9D" => "\xD0\xBD", "\xD0\x9E" => "\xD0\xBE", "\xD0\x9F" => "\xD0\xBF", "\xD0\xA0" => "\xD1\x80",
|
|
||||||
"\xD0\xA1" => "\xD1\x81", "\xD0\xA2" => "\xD1\x82", "\xD0\xA3" => "\xD1\x83", "\xD0\xA4" => "\xD1\x84",
|
|
||||||
"\xD0\xA5" => "\xD1\x85", "\xD0\xA6" => "\xD1\x86", "\xD0\xA7" => "\xD1\x87", "\xD0\xA8" => "\xD1\x88",
|
|
||||||
"\xD0\xA9" => "\xD1\x89", "\xD0\xAA" => "\xD1\x8A", "\xD0\xAB" => "\xD1\x8B", "\xD0\xAC" => "\xD1\x8C",
|
|
||||||
"\xD0\xAD" => "\xD1\x8D", "\xD0\xAE" => "\xD1\x8E", "\xD0\xAF" => "\xD1\x8F", "\xD2\x90" => "\xD2\x91",
|
|
||||||
"\xE1\xB8\x82" => "\xE1\xB8\x83", "\xE1\xB8\x8A" => "\xE1\xB8\x8B", "\xE1\xB8\x9E" => "\xE1\xB8\x9F", "\xE1\xB9\x80" => "\xE1\xB9\x81",
|
|
||||||
"\xE1\xB9\x96" => "\xE1\xB9\x97", "\xE1\xB9\xA0" => "\xE1\xB9\xA1", "\xE1\xB9\xAA" => "\xE1\xB9\xAB", "\xE1\xBA\x80" => "\xE1\xBA\x81",
|
|
||||||
"\xE1\xBA\x82" => "\xE1\xBA\x83", "\xE1\xBA\x84" => "\xE1\xBA\x85", "\xE1\xBB\xB2" => "\xE1\xBB\xB3"
|
|
||||||
);
|
|
||||||
|
|
||||||
return strtr(strtolower($string), $utf8_upper_to_lower);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* UTF-8 aware alternative to strtoupper
|
|
||||||
* Make a string uppercase
|
|
||||||
* Note: The concept of a characters "case" only exists is some alphabets
|
|
||||||
* such as Latin, Greek, Cyrillic, Armenian and archaic Georgian - it does
|
|
||||||
* not exist in the Chinese alphabet, for example. See Unicode Standard
|
|
||||||
* Annex #21: Case Mappings
|
|
||||||
*
|
|
||||||
* @param string
|
|
||||||
* @return string string in uppercase
|
|
||||||
*/
|
|
||||||
function utf8_strtoupper($string)
|
|
||||||
{
|
|
||||||
static $utf8_lower_to_upper = array(
|
|
||||||
"\xC3\xA0" => "\xC3\x80", "\xC3\xA1" => "\xC3\x81",
|
|
||||||
"\xC3\xA2" => "\xC3\x82", "\xC3\xA3" => "\xC3\x83", "\xC3\xA4" => "\xC3\x84", "\xC3\xA5" => "\xC3\x85",
|
|
||||||
"\xC3\xA6" => "\xC3\x86", "\xC3\xA7" => "\xC3\x87", "\xC3\xA8" => "\xC3\x88", "\xC3\xA9" => "\xC3\x89",
|
|
||||||
"\xC3\xAA" => "\xC3\x8A", "\xC3\xAB" => "\xC3\x8B", "\xC3\xAC" => "\xC3\x8C", "\xC3\xAD" => "\xC3\x8D",
|
|
||||||
"\xC3\xAE" => "\xC3\x8E", "\xC3\xAF" => "\xC3\x8F", "\xC3\xB0" => "\xC3\x90", "\xC3\xB1" => "\xC3\x91",
|
|
||||||
"\xC3\xB2" => "\xC3\x92", "\xC3\xB3" => "\xC3\x93", "\xC3\xB4" => "\xC3\x94", "\xC3\xB5" => "\xC3\x95",
|
|
||||||
"\xC3\xB6" => "\xC3\x96", "\xC3\xB8" => "\xC3\x98", "\xC3\xB9" => "\xC3\x99", "\xC3\xBA" => "\xC3\x9A",
|
|
||||||
"\xC3\xBB" => "\xC3\x9B", "\xC3\xBC" => "\xC3\x9C", "\xC3\xBD" => "\xC3\x9D", "\xC3\xBE" => "\xC3\x9E",
|
|
||||||
"\xC3\xBF" => "\xC5\xB8", "\xC4\x81" => "\xC4\x80", "\xC4\x83" => "\xC4\x82", "\xC4\x85" => "\xC4\x84",
|
|
||||||
"\xC4\x87" => "\xC4\x86", "\xC4\x89" => "\xC4\x88", "\xC4\x8B" => "\xC4\x8A", "\xC4\x8D" => "\xC4\x8C",
|
|
||||||
"\xC4\x8F" => "\xC4\x8E", "\xC4\x91" => "\xC4\x90", "\xC4\x93" => "\xC4\x92", "\xC4\x97" => "\xC4\x96",
|
|
||||||
"\xC4\x99" => "\xC4\x98", "\xC4\x9B" => "\xC4\x9A", "\xC4\x9D" => "\xC4\x9C", "\xC4\x9F" => "\xC4\x9E",
|
|
||||||
"\xC4\xA1" => "\xC4\xA0", "\xC4\xA3" => "\xC4\xA2", "\xC4\xA5" => "\xC4\xA4", "\xC4\xA7" => "\xC4\xA6",
|
|
||||||
"\xC4\xA9" => "\xC4\xA8", "\xC4\xAB" => "\xC4\xAA", "\xC4\xAF" => "\xC4\xAE", "\xC4\xB5" => "\xC4\xB4",
|
|
||||||
"\xC4\xB7" => "\xC4\xB6", "\xC4\xBA" => "\xC4\xB9", "\xC4\xBC" => "\xC4\xBB", "\xC4\xBE" => "\xC4\xBD",
|
|
||||||
"\xC5\x82" => "\xC5\x81", "\xC5\x84" => "\xC5\x83", "\xC5\x86" => "\xC5\x85", "\xC5\x88" => "\xC5\x87",
|
|
||||||
"\xC5\x8B" => "\xC5\x8A", "\xC5\x8D" => "\xC5\x8C", "\xC5\x91" => "\xC5\x90", "\xC5\x95" => "\xC5\x94",
|
|
||||||
"\xC5\x97" => "\xC5\x96", "\xC5\x99" => "\xC5\x98", "\xC5\x9B" => "\xC5\x9A", "\xC5\x9D" => "\xC5\x9C",
|
|
||||||
"\xC5\x9F" => "\xC5\x9E", "\xC5\xA1" => "\xC5\xA0", "\xC5\xA3" => "\xC5\xA2", "\xC5\xA5" => "\xC5\xA4",
|
|
||||||
"\xC5\xA7" => "\xC5\xA6", "\xC5\xA9" => "\xC5\xA8", "\xC5\xAB" => "\xC5\xAA", "\xC5\xAD" => "\xC5\xAC",
|
|
||||||
"\xC5\xAF" => "\xC5\xAE", "\xC5\xB1" => "\xC5\xB0", "\xC5\xB3" => "\xC5\xB2", "\xC5\xB5" => "\xC5\xB4",
|
|
||||||
"\xC5\xB7" => "\xC5\xB6", "\xC5\xBA" => "\xC5\xB9", "\xC5\xBC" => "\xC5\xBB", "\xC5\xBE" => "\xC5\xBD",
|
|
||||||
"\xC6\xA1" => "\xC6\xA0", "\xC6\xB0" => "\xC6\xAF", "\xC8\x99" => "\xC8\x98", "\xC8\x9B" => "\xC8\x9A",
|
|
||||||
"\xCE\xAC" => "\xCE\x86", "\xCE\xAD" => "\xCE\x88", "\xCE\xAE" => "\xCE\x89", "\xCE\xAF" => "\xCE\x8A",
|
|
||||||
"\xCE\xB1" => "\xCE\x91", "\xCE\xB2" => "\xCE\x92", "\xCE\xB3" => "\xCE\x93", "\xCE\xB4" => "\xCE\x94",
|
|
||||||
"\xCE\xB5" => "\xCE\x95", "\xCE\xB6" => "\xCE\x96", "\xCE\xB7" => "\xCE\x97", "\xCE\xB8" => "\xCE\x98",
|
|
||||||
"\xCE\xB9" => "\xCE\x99", "\xCE\xBA" => "\xCE\x9A", "\xCE\xBB" => "\xCE\x9B", "\xCE\xBC" => "\xCE\x9C",
|
|
||||||
"\xCE\xBD" => "\xCE\x9D", "\xCE\xBE" => "\xCE\x9E", "\xCE\xBF" => "\xCE\x9F", "\xCF\x80" => "\xCE\xA0",
|
|
||||||
"\xCF\x81" => "\xCE\xA1", "\xCF\x83" => "\xCE\xA3", "\xCF\x84" => "\xCE\xA4", "\xCF\x85" => "\xCE\xA5",
|
|
||||||
"\xCF\x86" => "\xCE\xA6", "\xCF\x87" => "\xCE\xA7", "\xCF\x88" => "\xCE\xA8", "\xCF\x89" => "\xCE\xA9",
|
|
||||||
"\xCF\x8A" => "\xCE\xAA", "\xCF\x8B" => "\xCE\xAB", "\xCF\x8C" => "\xCE\x8C", "\xCF\x8D" => "\xCE\x8E",
|
|
||||||
"\xCF\x8E" => "\xCE\x8F", "\xD0\xB0" => "\xD0\x90", "\xD0\xB1" => "\xD0\x91", "\xD0\xB2" => "\xD0\x92",
|
|
||||||
"\xD0\xB3" => "\xD0\x93", "\xD0\xB4" => "\xD0\x94", "\xD0\xB5" => "\xD0\x95", "\xD0\xB6" => "\xD0\x96",
|
|
||||||
"\xD0\xB7" => "\xD0\x97", "\xD0\xB8" => "\xD0\x98", "\xD0\xB9" => "\xD0\x99", "\xD0\xBA" => "\xD0\x9A",
|
|
||||||
"\xD0\xBB" => "\xD0\x9B", "\xD0\xBC" => "\xD0\x9C", "\xD0\xBD" => "\xD0\x9D", "\xD0\xBE" => "\xD0\x9E",
|
|
||||||
"\xD0\xBF" => "\xD0\x9F", "\xD1\x80" => "\xD0\xA0", "\xD1\x81" => "\xD0\xA1", "\xD1\x82" => "\xD0\xA2",
|
|
||||||
"\xD1\x83" => "\xD0\xA3", "\xD1\x84" => "\xD0\xA4", "\xD1\x85" => "\xD0\xA5", "\xD1\x86" => "\xD0\xA6",
|
|
||||||
"\xD1\x87" => "\xD0\xA7", "\xD1\x88" => "\xD0\xA8", "\xD1\x89" => "\xD0\xA9", "\xD1\x8A" => "\xD0\xAA",
|
|
||||||
"\xD1\x8B" => "\xD0\xAB", "\xD1\x8C" => "\xD0\xAC", "\xD1\x8D" => "\xD0\xAD", "\xD1\x8E" => "\xD0\xAE",
|
|
||||||
"\xD1\x8F" => "\xD0\xAF", "\xD1\x91" => "\xD0\x81", "\xD1\x92" => "\xD0\x82", "\xD1\x93" => "\xD0\x83",
|
|
||||||
"\xD1\x94" => "\xD0\x84", "\xD1\x95" => "\xD0\x85", "\xD1\x96" => "\xD0\x86", "\xD1\x97" => "\xD0\x87",
|
|
||||||
"\xD1\x98" => "\xD0\x88", "\xD1\x99" => "\xD0\x89", "\xD1\x9A" => "\xD0\x8A", "\xD1\x9B" => "\xD0\x8B",
|
|
||||||
"\xD1\x9C" => "\xD0\x8C", "\xD1\x9E" => "\xD0\x8E", "\xD1\x9F" => "\xD0\x8F", "\xD2\x91" => "\xD2\x90",
|
|
||||||
"\xE1\xB8\x83" => "\xE1\xB8\x82", "\xE1\xB8\x8B" => "\xE1\xB8\x8A", "\xE1\xB8\x9F" => "\xE1\xB8\x9E", "\xE1\xB9\x81" => "\xE1\xB9\x80",
|
|
||||||
"\xE1\xB9\x97" => "\xE1\xB9\x96", "\xE1\xB9\xA1" => "\xE1\xB9\xA0", "\xE1\xB9\xAB" => "\xE1\xB9\xAA", "\xE1\xBA\x81" => "\xE1\xBA\x80",
|
|
||||||
"\xE1\xBA\x83" => "\xE1\xBA\x82", "\xE1\xBA\x85" => "\xE1\xBA\x84", "\xE1\xBB\xB3" => "\xE1\xBB\xB2"
|
|
||||||
);
|
|
||||||
|
|
||||||
return strtr(strtoupper($string), $utf8_lower_to_upper);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* UTF-8 aware alternative to substr
|
* UTF-8 aware alternative to substr
|
||||||
* Return part of a string given character offset (and optionally length)
|
* Return part of a string given character offset (and optionally length)
|
||||||
|
@ -660,33 +512,6 @@ function utf8_strspn($str, $mask, $start = null, $length = null)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* UTF-8 aware alternative to ucfirst
|
|
||||||
* Make a string's first character uppercase
|
|
||||||
*
|
|
||||||
* @author Harry Fuecks
|
|
||||||
* @param string
|
|
||||||
* @return string with first character as upper case (if applicable)
|
|
||||||
*/
|
|
||||||
function utf8_ucfirst($str)
|
|
||||||
{
|
|
||||||
switch (utf8_strlen($str))
|
|
||||||
{
|
|
||||||
case 0:
|
|
||||||
return '';
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 1:
|
|
||||||
return utf8_strtoupper($str);
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
|
||||||
preg_match('/^(.{1})(.*)$/us', $str, $matches);
|
|
||||||
return utf8_strtoupper($matches[1]) . $matches[2];
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Replace all UTF-8 chars that are not in ASCII with their NCR
|
* Replace all UTF-8 chars that are not in ASCII with their NCR
|
||||||
*
|
*
|
||||||
|
|
|
@ -800,6 +800,7 @@ if (!$get_info)
|
||||||
array('group_display', 0, ''),
|
array('group_display', 0, ''),
|
||||||
array('group_legend', 0, ''),
|
array('group_legend', 0, ''),
|
||||||
array('group_name', 'groups.group_name', 'phpbb_convert_group_name'), // phpbb_set_encoding called in phpbb_convert_group_name
|
array('group_name', 'groups.group_name', 'phpbb_convert_group_name'), // phpbb_set_encoding called in phpbb_convert_group_name
|
||||||
|
array('group_name_clean', 'groups.group_name', 'phpbb_convert_group_name_clean'), // phpbb_set_encoding called in phpbb_convert_group_name
|
||||||
array('group_desc', 'groups.group_description', 'phpbb_set_encoding'),
|
array('group_desc', 'groups.group_description', 'phpbb_set_encoding'),
|
||||||
|
|
||||||
'where' => 'groups.group_single_user = 0',
|
'where' => 'groups.group_single_user = 0',
|
||||||
|
|
|
@ -574,7 +574,7 @@ function phpbb_convert_authentication($mode)
|
||||||
|
|
||||||
$sql = 'SELECT group_id
|
$sql = 'SELECT group_id
|
||||||
FROM ' . GROUPS_TABLE . "
|
FROM ' . GROUPS_TABLE . "
|
||||||
WHERE group_name = '" . $db->sql_escape('BOTS') . "'";
|
WHERE group_name_clean = '" . $db->sql_escape('bots') . "'";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$bot_group_id = (int) $db->sql_fetchfield('group_id');
|
$bot_group_id = (int) $db->sql_fetchfield('group_id');
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
@ -1139,6 +1139,28 @@ function phpbb_convert_group_name($group_name)
|
||||||
return phpbb_set_default_encoding($group_name);
|
return phpbb_set_default_encoding($group_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Convert the group name, making sure to avoid conflicts with 3.0 special groups
|
||||||
|
*/
|
||||||
|
function phpbb_convert_group_name_clean($group_name)
|
||||||
|
{
|
||||||
|
$default_groups = array(
|
||||||
|
'GUESTS',
|
||||||
|
'REGISTERED',
|
||||||
|
'REGISTERED_COPPA',
|
||||||
|
'GLOBAL_MODERATORS',
|
||||||
|
'ADMINISTRATORS',
|
||||||
|
'BOTS',
|
||||||
|
);
|
||||||
|
|
||||||
|
if (in_array(strtoupper($group_name), $default_groups))
|
||||||
|
{
|
||||||
|
return utf8_clean_string('phpBB2 - ' . $group_name);
|
||||||
|
}
|
||||||
|
|
||||||
|
return utf8_clean_string(phpbb_set_default_encoding($group_name));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Convert the group type constants
|
* Convert the group type constants
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -310,7 +310,7 @@ $dbms_type_map = array(
|
||||||
'UINT' => 'INT4', // unsigned
|
'UINT' => 'INT4', // unsigned
|
||||||
'UINT:' => 'INT4', // unsigned
|
'UINT:' => 'INT4', // unsigned
|
||||||
'USINT' => 'INT2', // unsigned
|
'USINT' => 'INT2', // unsigned
|
||||||
'BOOL' => 'INT2', // unsigned
|
'BOOL' => 'boolean', // unsigned
|
||||||
'TINT:' => 'INT2',
|
'TINT:' => 'INT2',
|
||||||
'VCHAR' => 'varchar(255)',
|
'VCHAR' => 'varchar(255)',
|
||||||
'VCHAR:' => 'varchar(%d)',
|
'VCHAR:' => 'varchar(%d)',
|
||||||
|
@ -327,7 +327,7 @@ $dbms_type_map = array(
|
||||||
'DECIMAL' => 'decimal(5,2)',
|
'DECIMAL' => 'decimal(5,2)',
|
||||||
'VCHAR_UNI' => 'varchar(255)',
|
'VCHAR_UNI' => 'varchar(255)',
|
||||||
'VCHAR_UNI:'=> 'varchar(%d)',
|
'VCHAR_UNI:'=> 'varchar(%d)',
|
||||||
'VCHAR_CI' => 'varchar_ci',
|
'VCHAR_CI' => 'varchar(255)',
|
||||||
'VARBINARY' => 'bytea',
|
'VARBINARY' => 'bytea',
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
|
@ -1817,7 +1817,7 @@ class install_install extends module
|
||||||
|
|
||||||
$sql = 'SELECT group_id
|
$sql = 'SELECT group_id
|
||||||
FROM ' . GROUPS_TABLE . "
|
FROM ' . GROUPS_TABLE . "
|
||||||
WHERE group_name = 'BOTS'";
|
WHERE group_name_clean = 'bots'";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$group_id = (int) $db->sql_fetchfield('group_id');
|
$group_id = (int) $db->sql_fetchfield('group_id');
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
|
@ -179,6 +179,7 @@ CREATE TABLE phpbb_config (
|
||||||
);
|
);
|
||||||
|
|
||||||
CREATE INDEX phpbb_config_is_dynamic ON phpbb_config (is_dynamic) PCTFREE 10 MINPCTUSED 10 ALLOW REVERSE SCANS PAGE SPLIT SYMMETRIC COLLECT SAMPLED DETAILED STATISTICS;
|
CREATE INDEX phpbb_config_is_dynamic ON phpbb_config (is_dynamic) PCTFREE 10 MINPCTUSED 10 ALLOW REVERSE SCANS PAGE SPLIT SYMMETRIC COLLECT SAMPLED DETAILED STATISTICS;
|
||||||
|
CREATE INDEX phpbb_config_config_name ON phpbb_config (config_name) PCTFREE 10 MINPCTUSED 10 ALLOW REVERSE SCANS PAGE SPLIT SYMMETRIC COLLECT SAMPLED DETAILED STATISTICS;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Table: 'phpbb_confirm'
|
Table: 'phpbb_confirm'
|
||||||
|
@ -341,6 +342,7 @@ CREATE TABLE phpbb_groups (
|
||||||
group_type smallint NOT NULL DEFAULT 1,
|
group_type smallint NOT NULL DEFAULT 1,
|
||||||
group_founder_manage smallint NOT NULL DEFAULT 0,
|
group_founder_manage smallint NOT NULL DEFAULT 0,
|
||||||
group_name varchar(255) NOT NULL DEFAULT '',
|
group_name varchar(255) NOT NULL DEFAULT '',
|
||||||
|
group_name_clean varchar(255) NOT NULL DEFAULT '',
|
||||||
group_desc clob(65K) NOT NULL DEFAULT '',
|
group_desc clob(65K) NOT NULL DEFAULT '',
|
||||||
group_desc_bitfield varchar(255) NOT NULL DEFAULT '',
|
group_desc_bitfield varchar(255) NOT NULL DEFAULT '',
|
||||||
group_desc_options integer NOT NULL DEFAULT 7,
|
group_desc_options integer NOT NULL DEFAULT 7,
|
||||||
|
@ -1119,4 +1121,5 @@ CREATE TABLE phpbb_zebra (
|
||||||
PRIMARY KEY (user_id, zebra_id)
|
PRIMARY KEY (user_id, zebra_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
CREATE INDEX phpbb_zebra_zebra_user ON phpbb_zebra (zebra_id, user_id) PCTFREE 10 MINPCTUSED 10 ALLOW REVERSE SCANS PAGE SPLIT SYMMETRIC COLLECT SAMPLED DETAILED STATISTICS;
|
||||||
|
|
||||||
|
|
|
@ -220,6 +220,7 @@ CREATE TABLE phpbb_config (
|
||||||
ALTER TABLE phpbb_config ADD PRIMARY KEY (config_name);;
|
ALTER TABLE phpbb_config ADD PRIMARY KEY (config_name);;
|
||||||
|
|
||||||
CREATE INDEX phpbb_config_is_dynamic ON phpbb_config(is_dynamic);;
|
CREATE INDEX phpbb_config_is_dynamic ON phpbb_config(is_dynamic);;
|
||||||
|
CREATE INDEX phpbb_config_config_name ON phpbb_config(config_name);;
|
||||||
|
|
||||||
# Table: 'phpbb_confirm'
|
# Table: 'phpbb_confirm'
|
||||||
CREATE TABLE phpbb_confirm (
|
CREATE TABLE phpbb_confirm (
|
||||||
|
@ -425,6 +426,7 @@ CREATE TABLE phpbb_groups (
|
||||||
group_type INTEGER DEFAULT 1 NOT NULL,
|
group_type INTEGER DEFAULT 1 NOT NULL,
|
||||||
group_founder_manage INTEGER DEFAULT 0 NOT NULL,
|
group_founder_manage INTEGER DEFAULT 0 NOT NULL,
|
||||||
group_name VARCHAR(255) CHARACTER SET UTF8 DEFAULT '' NOT NULL COLLATE UNICODE,
|
group_name VARCHAR(255) CHARACTER SET UTF8 DEFAULT '' NOT NULL COLLATE UNICODE,
|
||||||
|
group_name_clean VARCHAR(255) CHARACTER SET UTF8 DEFAULT '' NOT NULL COLLATE UNICODE,
|
||||||
group_desc BLOB SUB_TYPE TEXT CHARACTER SET UTF8 DEFAULT '' NOT NULL,
|
group_desc BLOB SUB_TYPE TEXT CHARACTER SET UTF8 DEFAULT '' NOT NULL,
|
||||||
group_desc_bitfield VARCHAR(255) CHARACTER SET NONE DEFAULT '' NOT NULL,
|
group_desc_bitfield VARCHAR(255) CHARACTER SET NONE DEFAULT '' NOT NULL,
|
||||||
group_desc_options INTEGER DEFAULT 7 NOT NULL,
|
group_desc_options INTEGER DEFAULT 7 NOT NULL,
|
||||||
|
@ -1430,4 +1432,5 @@ CREATE TABLE phpbb_zebra (
|
||||||
|
|
||||||
ALTER TABLE phpbb_zebra ADD PRIMARY KEY (user_id, zebra_id);;
|
ALTER TABLE phpbb_zebra ADD PRIMARY KEY (user_id, zebra_id);;
|
||||||
|
|
||||||
|
CREATE INDEX phpbb_zebra_zebra_user ON phpbb_zebra(zebra_id, user_id);;
|
||||||
|
|
||||||
|
|
|
@ -293,6 +293,9 @@ GO
|
||||||
CREATE INDEX [is_dynamic] ON [phpbb_config]([is_dynamic]) ON [PRIMARY]
|
CREATE INDEX [is_dynamic] ON [phpbb_config]([is_dynamic]) ON [PRIMARY]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
|
CREATE INDEX [config_name] ON [phpbb_config]([config_name]) ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Table: 'phpbb_confirm'
|
Table: 'phpbb_confirm'
|
||||||
|
@ -530,6 +533,7 @@ CREATE TABLE [phpbb_groups] (
|
||||||
[group_type] [int] DEFAULT (1) NOT NULL ,
|
[group_type] [int] DEFAULT (1) NOT NULL ,
|
||||||
[group_founder_manage] [int] DEFAULT (0) NOT NULL ,
|
[group_founder_manage] [int] DEFAULT (0) NOT NULL ,
|
||||||
[group_name] [varchar] (255) DEFAULT ('') NOT NULL ,
|
[group_name] [varchar] (255) DEFAULT ('') NOT NULL ,
|
||||||
|
[group_name_clean] [varchar] (255) DEFAULT ('') NOT NULL ,
|
||||||
[group_desc] [varchar] (4000) DEFAULT ('') NOT NULL ,
|
[group_desc] [varchar] (4000) DEFAULT ('') NOT NULL ,
|
||||||
[group_desc_bitfield] [varchar] (255) DEFAULT ('') NOT NULL ,
|
[group_desc_bitfield] [varchar] (255) DEFAULT ('') NOT NULL ,
|
||||||
[group_desc_options] [int] DEFAULT (7) NOT NULL ,
|
[group_desc_options] [int] DEFAULT (7) NOT NULL ,
|
||||||
|
@ -1703,6 +1707,9 @@ ALTER TABLE [phpbb_zebra] WITH NOCHECK ADD
|
||||||
) ON [PRIMARY]
|
) ON [PRIMARY]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
|
CREATE INDEX [zebra_user] ON [phpbb_zebra]([zebra_id], [user_id]) ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
COMMIT
|
COMMIT
|
||||||
|
|
|
@ -152,7 +152,8 @@ CREATE TABLE phpbb_config (
|
||||||
config_value varchar(255) DEFAULT '' NOT NULL,
|
config_value varchar(255) DEFAULT '' NOT NULL,
|
||||||
is_dynamic tinyint(1) UNSIGNED DEFAULT '0' NOT NULL,
|
is_dynamic tinyint(1) UNSIGNED DEFAULT '0' NOT NULL,
|
||||||
PRIMARY KEY (config_name),
|
PRIMARY KEY (config_name),
|
||||||
KEY is_dynamic (is_dynamic)
|
KEY is_dynamic (is_dynamic),
|
||||||
|
KEY config_name (config_name)
|
||||||
) CHARACTER SET `utf8` COLLATE `utf8_bin`;
|
) CHARACTER SET `utf8` COLLATE `utf8_bin`;
|
||||||
|
|
||||||
|
|
||||||
|
@ -297,6 +298,7 @@ CREATE TABLE phpbb_groups (
|
||||||
group_type tinyint(4) DEFAULT '1' NOT NULL,
|
group_type tinyint(4) DEFAULT '1' NOT NULL,
|
||||||
group_founder_manage tinyint(1) UNSIGNED DEFAULT '0' NOT NULL,
|
group_founder_manage tinyint(1) UNSIGNED DEFAULT '0' NOT NULL,
|
||||||
group_name varchar(255) DEFAULT '' NOT NULL,
|
group_name varchar(255) DEFAULT '' NOT NULL,
|
||||||
|
group_name_clean varchar(255) DEFAULT '' NOT NULL,
|
||||||
group_desc text NOT NULL,
|
group_desc text NOT NULL,
|
||||||
group_desc_bitfield varchar(255) DEFAULT '' NOT NULL,
|
group_desc_bitfield varchar(255) DEFAULT '' NOT NULL,
|
||||||
group_desc_options int(11) UNSIGNED DEFAULT '7' NOT NULL,
|
group_desc_options int(11) UNSIGNED DEFAULT '7' NOT NULL,
|
||||||
|
@ -990,7 +992,8 @@ CREATE TABLE phpbb_zebra (
|
||||||
zebra_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
|
zebra_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
|
||||||
friend tinyint(1) UNSIGNED DEFAULT '0' NOT NULL,
|
friend tinyint(1) UNSIGNED DEFAULT '0' NOT NULL,
|
||||||
foe tinyint(1) UNSIGNED DEFAULT '0' NOT NULL,
|
foe tinyint(1) UNSIGNED DEFAULT '0' NOT NULL,
|
||||||
PRIMARY KEY (user_id, zebra_id)
|
PRIMARY KEY (user_id, zebra_id),
|
||||||
|
KEY zebra_user (zebra_id, user_id)
|
||||||
) CHARACTER SET `utf8` COLLATE `utf8_bin`;
|
) CHARACTER SET `utf8` COLLATE `utf8_bin`;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -329,6 +329,8 @@ CREATE TABLE phpbb_config (
|
||||||
|
|
||||||
CREATE INDEX phpbb_config_is_dynamic ON phpbb_config (is_dynamic)
|
CREATE INDEX phpbb_config_is_dynamic ON phpbb_config (is_dynamic)
|
||||||
/
|
/
|
||||||
|
CREATE INDEX phpbb_config_config_name ON phpbb_config (config_name)
|
||||||
|
/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Table: 'phpbb_confirm'
|
Table: 'phpbb_confirm'
|
||||||
|
@ -586,7 +588,8 @@ CREATE TABLE phpbb_groups (
|
||||||
group_id number(8) NOT NULL,
|
group_id number(8) NOT NULL,
|
||||||
group_type number(4) DEFAULT '1' NOT NULL,
|
group_type number(4) DEFAULT '1' NOT NULL,
|
||||||
group_founder_manage number(1) DEFAULT '0' NOT NULL,
|
group_founder_manage number(1) DEFAULT '0' NOT NULL,
|
||||||
group_name varchar2(255) DEFAULT '' ,
|
group_name varchar2(765) DEFAULT '' ,
|
||||||
|
group_name_clean varchar2(765) DEFAULT '' ,
|
||||||
group_desc clob DEFAULT '' ,
|
group_desc clob DEFAULT '' ,
|
||||||
group_desc_bitfield varchar2(255) DEFAULT '' ,
|
group_desc_bitfield varchar2(255) DEFAULT '' ,
|
||||||
group_desc_options number(11) DEFAULT '7' NOT NULL,
|
group_desc_options number(11) DEFAULT '7' NOT NULL,
|
||||||
|
@ -1707,8 +1710,8 @@ CREATE TABLE phpbb_users (
|
||||||
user_perm_from number(8) DEFAULT '0' NOT NULL,
|
user_perm_from number(8) DEFAULT '0' NOT NULL,
|
||||||
user_ip varchar2(40) DEFAULT '' ,
|
user_ip varchar2(40) DEFAULT '' ,
|
||||||
user_regdate number(11) DEFAULT '0' NOT NULL,
|
user_regdate number(11) DEFAULT '0' NOT NULL,
|
||||||
username varchar2(255) DEFAULT '' ,
|
username varchar2(765) DEFAULT '' ,
|
||||||
username_clean varchar2(255) DEFAULT '' ,
|
username_clean varchar2(765) DEFAULT '' ,
|
||||||
user_password varchar2(120) DEFAULT '' ,
|
user_password varchar2(120) DEFAULT '' ,
|
||||||
user_passchg number(11) DEFAULT '0' NOT NULL,
|
user_passchg number(11) DEFAULT '0' NOT NULL,
|
||||||
user_pass_convert number(1) DEFAULT '0' NOT NULL,
|
user_pass_convert number(1) DEFAULT '0' NOT NULL,
|
||||||
|
@ -1871,4 +1874,6 @@ CREATE TABLE phpbb_zebra (
|
||||||
)
|
)
|
||||||
/
|
/
|
||||||
|
|
||||||
|
CREATE INDEX phpbb_zebra_zebra_user ON phpbb_zebra (zebra_id, user_id)
|
||||||
|
/
|
||||||
|
|
||||||
|
|
|
@ -6,80 +6,6 @@
|
||||||
|
|
||||||
BEGIN;
|
BEGIN;
|
||||||
|
|
||||||
/*
|
|
||||||
Domain definition
|
|
||||||
*/
|
|
||||||
CREATE DOMAIN varchar_ci AS varchar(255) NOT NULL DEFAULT ''::character varying;
|
|
||||||
|
|
||||||
/*
|
|
||||||
Operation Functions
|
|
||||||
*/
|
|
||||||
CREATE FUNCTION _varchar_ci_equal(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) = LOWER($2)' LANGUAGE SQL STRICT;
|
|
||||||
CREATE FUNCTION _varchar_ci_not_equal(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) != LOWER($2)' LANGUAGE SQL STRICT;
|
|
||||||
CREATE FUNCTION _varchar_ci_less_than(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) < LOWER($2)' LANGUAGE SQL STRICT;
|
|
||||||
CREATE FUNCTION _varchar_ci_less_equal(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) <= LOWER($2)' LANGUAGE SQL STRICT;
|
|
||||||
CREATE FUNCTION _varchar_ci_greater_than(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) > LOWER($2)' LANGUAGE SQL STRICT;
|
|
||||||
CREATE FUNCTION _varchar_ci_greater_equals(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) >= LOWER($2)' LANGUAGE SQL STRICT;
|
|
||||||
|
|
||||||
/*
|
|
||||||
Operators
|
|
||||||
*/
|
|
||||||
CREATE OPERATOR <(
|
|
||||||
PROCEDURE = _varchar_ci_less_than,
|
|
||||||
LEFTARG = varchar_ci,
|
|
||||||
RIGHTARG = varchar_ci,
|
|
||||||
COMMUTATOR = >,
|
|
||||||
NEGATOR = >=,
|
|
||||||
RESTRICT = scalarltsel,
|
|
||||||
JOIN = scalarltjoinsel);
|
|
||||||
|
|
||||||
CREATE OPERATOR <=(
|
|
||||||
PROCEDURE = _varchar_ci_less_equal,
|
|
||||||
LEFTARG = varchar_ci,
|
|
||||||
RIGHTARG = varchar_ci,
|
|
||||||
COMMUTATOR = >=,
|
|
||||||
NEGATOR = >,
|
|
||||||
RESTRICT = scalarltsel,
|
|
||||||
JOIN = scalarltjoinsel);
|
|
||||||
|
|
||||||
CREATE OPERATOR >(
|
|
||||||
PROCEDURE = _varchar_ci_greater_than,
|
|
||||||
LEFTARG = varchar_ci,
|
|
||||||
RIGHTARG = varchar_ci,
|
|
||||||
COMMUTATOR = <,
|
|
||||||
NEGATOR = <=,
|
|
||||||
RESTRICT = scalargtsel,
|
|
||||||
JOIN = scalargtjoinsel);
|
|
||||||
|
|
||||||
CREATE OPERATOR >=(
|
|
||||||
PROCEDURE = _varchar_ci_greater_equals,
|
|
||||||
LEFTARG = varchar_ci,
|
|
||||||
RIGHTARG = varchar_ci,
|
|
||||||
COMMUTATOR = <=,
|
|
||||||
NEGATOR = <,
|
|
||||||
RESTRICT = scalargtsel,
|
|
||||||
JOIN = scalargtjoinsel);
|
|
||||||
|
|
||||||
CREATE OPERATOR <>(
|
|
||||||
PROCEDURE = _varchar_ci_not_equal,
|
|
||||||
LEFTARG = varchar_ci,
|
|
||||||
RIGHTARG = varchar_ci,
|
|
||||||
COMMUTATOR = <>,
|
|
||||||
NEGATOR = =,
|
|
||||||
RESTRICT = neqsel,
|
|
||||||
JOIN = neqjoinsel);
|
|
||||||
|
|
||||||
CREATE OPERATOR =(
|
|
||||||
PROCEDURE = _varchar_ci_equal,
|
|
||||||
LEFTARG = varchar_ci,
|
|
||||||
RIGHTARG = varchar_ci,
|
|
||||||
COMMUTATOR = =,
|
|
||||||
NEGATOR = <>,
|
|
||||||
RESTRICT = eqsel,
|
|
||||||
JOIN = eqjoinsel,
|
|
||||||
HASHES,
|
|
||||||
MERGES,
|
|
||||||
SORT1= <);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Table: 'phpbb_attachments'
|
Table: 'phpbb_attachments'
|
||||||
|
@ -90,9 +16,9 @@ CREATE TABLE phpbb_attachments (
|
||||||
attach_id INT4 DEFAULT nextval('phpbb_attachments_seq'),
|
attach_id INT4 DEFAULT nextval('phpbb_attachments_seq'),
|
||||||
post_msg_id INT4 DEFAULT '0' NOT NULL CHECK (post_msg_id >= 0),
|
post_msg_id INT4 DEFAULT '0' NOT NULL CHECK (post_msg_id >= 0),
|
||||||
topic_id INT4 DEFAULT '0' NOT NULL CHECK (topic_id >= 0),
|
topic_id INT4 DEFAULT '0' NOT NULL CHECK (topic_id >= 0),
|
||||||
in_message INT2 DEFAULT '0' NOT NULL CHECK (in_message >= 0),
|
in_message boolean DEFAULT '0' NOT NULL CHECK (in_message >= 0),
|
||||||
poster_id INT4 DEFAULT '0' NOT NULL CHECK (poster_id >= 0),
|
poster_id INT4 DEFAULT '0' NOT NULL CHECK (poster_id >= 0),
|
||||||
is_orphan INT2 DEFAULT '1' NOT NULL CHECK (is_orphan >= 0),
|
is_orphan boolean DEFAULT '1' NOT NULL CHECK (is_orphan >= 0),
|
||||||
physical_filename varchar(255) DEFAULT '' NOT NULL,
|
physical_filename varchar(255) DEFAULT '' NOT NULL,
|
||||||
real_filename varchar(255) DEFAULT '' NOT NULL,
|
real_filename varchar(255) DEFAULT '' NOT NULL,
|
||||||
download_count INT4 DEFAULT '0' NOT NULL CHECK (download_count >= 0),
|
download_count INT4 DEFAULT '0' NOT NULL CHECK (download_count >= 0),
|
||||||
|
@ -101,7 +27,7 @@ CREATE TABLE phpbb_attachments (
|
||||||
mimetype varchar(100) DEFAULT '' NOT NULL,
|
mimetype varchar(100) DEFAULT '' NOT NULL,
|
||||||
filesize INT4 DEFAULT '0' NOT NULL CHECK (filesize >= 0),
|
filesize INT4 DEFAULT '0' NOT NULL CHECK (filesize >= 0),
|
||||||
filetime INT4 DEFAULT '0' NOT NULL CHECK (filetime >= 0),
|
filetime INT4 DEFAULT '0' NOT NULL CHECK (filetime >= 0),
|
||||||
thumbnail INT2 DEFAULT '0' NOT NULL CHECK (thumbnail >= 0),
|
thumbnail boolean DEFAULT '0' NOT NULL CHECK (thumbnail >= 0),
|
||||||
PRIMARY KEY (attach_id)
|
PRIMARY KEY (attach_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -134,9 +60,9 @@ CREATE SEQUENCE phpbb_acl_options_seq;
|
||||||
CREATE TABLE phpbb_acl_options (
|
CREATE TABLE phpbb_acl_options (
|
||||||
auth_option_id INT4 DEFAULT nextval('phpbb_acl_options_seq'),
|
auth_option_id INT4 DEFAULT nextval('phpbb_acl_options_seq'),
|
||||||
auth_option varchar(50) DEFAULT '' NOT NULL,
|
auth_option varchar(50) DEFAULT '' NOT NULL,
|
||||||
is_global INT2 DEFAULT '0' NOT NULL CHECK (is_global >= 0),
|
is_global boolean DEFAULT '0' NOT NULL CHECK (is_global >= 0),
|
||||||
is_local INT2 DEFAULT '0' NOT NULL CHECK (is_local >= 0),
|
is_local boolean DEFAULT '0' NOT NULL CHECK (is_local >= 0),
|
||||||
founder_only INT2 DEFAULT '0' NOT NULL CHECK (founder_only >= 0),
|
founder_only boolean DEFAULT '0' NOT NULL CHECK (founder_only >= 0),
|
||||||
PRIMARY KEY (auth_option_id)
|
PRIMARY KEY (auth_option_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -198,7 +124,7 @@ CREATE TABLE phpbb_banlist (
|
||||||
ban_email varchar(100) DEFAULT '' NOT NULL,
|
ban_email varchar(100) DEFAULT '' NOT NULL,
|
||||||
ban_start INT4 DEFAULT '0' NOT NULL CHECK (ban_start >= 0),
|
ban_start INT4 DEFAULT '0' NOT NULL CHECK (ban_start >= 0),
|
||||||
ban_end INT4 DEFAULT '0' NOT NULL CHECK (ban_end >= 0),
|
ban_end INT4 DEFAULT '0' NOT NULL CHECK (ban_end >= 0),
|
||||||
ban_exclude INT2 DEFAULT '0' NOT NULL CHECK (ban_exclude >= 0),
|
ban_exclude boolean DEFAULT '0' NOT NULL CHECK (ban_exclude >= 0),
|
||||||
ban_reason varchar(255) DEFAULT '' NOT NULL,
|
ban_reason varchar(255) DEFAULT '' NOT NULL,
|
||||||
ban_give_reason varchar(255) DEFAULT '' NOT NULL,
|
ban_give_reason varchar(255) DEFAULT '' NOT NULL,
|
||||||
PRIMARY KEY (ban_id)
|
PRIMARY KEY (ban_id)
|
||||||
|
@ -216,7 +142,7 @@ CREATE TABLE phpbb_bbcodes (
|
||||||
bbcode_id INT2 DEFAULT '0' NOT NULL,
|
bbcode_id INT2 DEFAULT '0' NOT NULL,
|
||||||
bbcode_tag varchar(16) DEFAULT '' NOT NULL,
|
bbcode_tag varchar(16) DEFAULT '' NOT NULL,
|
||||||
bbcode_helpline varchar(255) DEFAULT '' NOT NULL,
|
bbcode_helpline varchar(255) DEFAULT '' NOT NULL,
|
||||||
display_on_posting INT2 DEFAULT '0' NOT NULL CHECK (display_on_posting >= 0),
|
display_on_posting boolean DEFAULT '0' NOT NULL CHECK (display_on_posting >= 0),
|
||||||
bbcode_match varchar(4000) DEFAULT '' NOT NULL,
|
bbcode_match varchar(4000) DEFAULT '' NOT NULL,
|
||||||
bbcode_tpl TEXT DEFAULT '' NOT NULL,
|
bbcode_tpl TEXT DEFAULT '' NOT NULL,
|
||||||
first_pass_match TEXT DEFAULT '' NOT NULL,
|
first_pass_match TEXT DEFAULT '' NOT NULL,
|
||||||
|
@ -245,7 +171,7 @@ CREATE SEQUENCE phpbb_bots_seq;
|
||||||
|
|
||||||
CREATE TABLE phpbb_bots (
|
CREATE TABLE phpbb_bots (
|
||||||
bot_id INT4 DEFAULT nextval('phpbb_bots_seq'),
|
bot_id INT4 DEFAULT nextval('phpbb_bots_seq'),
|
||||||
bot_active INT2 DEFAULT '1' NOT NULL CHECK (bot_active >= 0),
|
bot_active boolean DEFAULT '1' NOT NULL CHECK (bot_active >= 0),
|
||||||
bot_name varchar(255) DEFAULT '' NOT NULL,
|
bot_name varchar(255) DEFAULT '' NOT NULL,
|
||||||
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
||||||
bot_agent varchar(255) DEFAULT '' NOT NULL,
|
bot_agent varchar(255) DEFAULT '' NOT NULL,
|
||||||
|
@ -261,11 +187,12 @@ CREATE INDEX phpbb_bots_bot_active ON phpbb_bots (bot_active);
|
||||||
CREATE TABLE phpbb_config (
|
CREATE TABLE phpbb_config (
|
||||||
config_name varchar(255) DEFAULT '' NOT NULL,
|
config_name varchar(255) DEFAULT '' NOT NULL,
|
||||||
config_value varchar(255) DEFAULT '' NOT NULL,
|
config_value varchar(255) DEFAULT '' NOT NULL,
|
||||||
is_dynamic INT2 DEFAULT '0' NOT NULL CHECK (is_dynamic >= 0),
|
is_dynamic boolean DEFAULT '0' NOT NULL CHECK (is_dynamic >= 0),
|
||||||
PRIMARY KEY (config_name)
|
PRIMARY KEY (config_name)
|
||||||
);
|
);
|
||||||
|
|
||||||
CREATE INDEX phpbb_config_is_dynamic ON phpbb_config (is_dynamic);
|
CREATE INDEX phpbb_config_is_dynamic ON phpbb_config (is_dynamic);
|
||||||
|
CREATE INDEX phpbb_config_config_name ON phpbb_config (config_name);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Table: 'phpbb_confirm'
|
Table: 'phpbb_confirm'
|
||||||
|
@ -333,12 +260,12 @@ CREATE TABLE phpbb_extension_groups (
|
||||||
group_id INT4 DEFAULT nextval('phpbb_extension_groups_seq'),
|
group_id INT4 DEFAULT nextval('phpbb_extension_groups_seq'),
|
||||||
group_name varchar(255) DEFAULT '' NOT NULL,
|
group_name varchar(255) DEFAULT '' NOT NULL,
|
||||||
cat_id INT2 DEFAULT '0' NOT NULL,
|
cat_id INT2 DEFAULT '0' NOT NULL,
|
||||||
allow_group INT2 DEFAULT '0' NOT NULL CHECK (allow_group >= 0),
|
allow_group boolean DEFAULT '0' NOT NULL CHECK (allow_group >= 0),
|
||||||
download_mode INT2 DEFAULT '1' NOT NULL CHECK (download_mode >= 0),
|
download_mode boolean DEFAULT '1' NOT NULL CHECK (download_mode >= 0),
|
||||||
upload_icon varchar(255) DEFAULT '' NOT NULL,
|
upload_icon varchar(255) DEFAULT '' NOT NULL,
|
||||||
max_filesize INT4 DEFAULT '0' NOT NULL CHECK (max_filesize >= 0),
|
max_filesize INT4 DEFAULT '0' NOT NULL CHECK (max_filesize >= 0),
|
||||||
allowed_forums varchar(8000) DEFAULT '' NOT NULL,
|
allowed_forums varchar(8000) DEFAULT '' NOT NULL,
|
||||||
allow_in_pm INT2 DEFAULT '0' NOT NULL CHECK (allow_in_pm >= 0),
|
allow_in_pm boolean DEFAULT '0' NOT NULL CHECK (allow_in_pm >= 0),
|
||||||
PRIMARY KEY (group_id)
|
PRIMARY KEY (group_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -381,10 +308,10 @@ CREATE TABLE phpbb_forums (
|
||||||
forum_last_poster_name varchar(255) DEFAULT '' NOT NULL,
|
forum_last_poster_name varchar(255) DEFAULT '' NOT NULL,
|
||||||
forum_last_poster_colour varchar(6) DEFAULT '' NOT NULL,
|
forum_last_poster_colour varchar(6) DEFAULT '' NOT NULL,
|
||||||
forum_flags INT2 DEFAULT '32' NOT NULL,
|
forum_flags INT2 DEFAULT '32' NOT NULL,
|
||||||
display_on_index INT2 DEFAULT '1' NOT NULL CHECK (display_on_index >= 0),
|
display_on_index boolean DEFAULT '1' NOT NULL CHECK (display_on_index >= 0),
|
||||||
enable_indexing INT2 DEFAULT '1' NOT NULL CHECK (enable_indexing >= 0),
|
enable_indexing boolean DEFAULT '1' NOT NULL CHECK (enable_indexing >= 0),
|
||||||
enable_icons INT2 DEFAULT '1' NOT NULL CHECK (enable_icons >= 0),
|
enable_icons boolean DEFAULT '1' NOT NULL CHECK (enable_icons >= 0),
|
||||||
enable_prune INT2 DEFAULT '0' NOT NULL CHECK (enable_prune >= 0),
|
enable_prune boolean DEFAULT '0' NOT NULL CHECK (enable_prune >= 0),
|
||||||
prune_next INT4 DEFAULT '0' NOT NULL CHECK (prune_next >= 0),
|
prune_next INT4 DEFAULT '0' NOT NULL CHECK (prune_next >= 0),
|
||||||
prune_days INT4 DEFAULT '0' NOT NULL CHECK (prune_days >= 0),
|
prune_days INT4 DEFAULT '0' NOT NULL CHECK (prune_days >= 0),
|
||||||
prune_viewed INT4 DEFAULT '0' NOT NULL CHECK (prune_viewed >= 0),
|
prune_viewed INT4 DEFAULT '0' NOT NULL CHECK (prune_viewed >= 0),
|
||||||
|
@ -423,7 +350,7 @@ CREATE TABLE phpbb_forums_track (
|
||||||
CREATE TABLE phpbb_forums_watch (
|
CREATE TABLE phpbb_forums_watch (
|
||||||
forum_id INT4 DEFAULT '0' NOT NULL CHECK (forum_id >= 0),
|
forum_id INT4 DEFAULT '0' NOT NULL CHECK (forum_id >= 0),
|
||||||
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
||||||
notify_status INT2 DEFAULT '0' NOT NULL CHECK (notify_status >= 0)
|
notify_status boolean DEFAULT '0' NOT NULL CHECK (notify_status >= 0)
|
||||||
);
|
);
|
||||||
|
|
||||||
CREATE INDEX phpbb_forums_watch_forum_id ON phpbb_forums_watch (forum_id);
|
CREATE INDEX phpbb_forums_watch_forum_id ON phpbb_forums_watch (forum_id);
|
||||||
|
@ -438,13 +365,14 @@ CREATE SEQUENCE phpbb_groups_seq;
|
||||||
CREATE TABLE phpbb_groups (
|
CREATE TABLE phpbb_groups (
|
||||||
group_id INT4 DEFAULT nextval('phpbb_groups_seq'),
|
group_id INT4 DEFAULT nextval('phpbb_groups_seq'),
|
||||||
group_type INT2 DEFAULT '1' NOT NULL,
|
group_type INT2 DEFAULT '1' NOT NULL,
|
||||||
group_founder_manage INT2 DEFAULT '0' NOT NULL CHECK (group_founder_manage >= 0),
|
group_founder_manage boolean DEFAULT '0' NOT NULL CHECK (group_founder_manage >= 0),
|
||||||
group_name varchar_ci DEFAULT '' NOT NULL,
|
group_name varchar(255) DEFAULT '' NOT NULL,
|
||||||
|
group_name_clean varchar(255) DEFAULT '' NOT NULL,
|
||||||
group_desc varchar(4000) DEFAULT '' NOT NULL,
|
group_desc varchar(4000) DEFAULT '' NOT NULL,
|
||||||
group_desc_bitfield varchar(255) DEFAULT '' NOT NULL,
|
group_desc_bitfield varchar(255) DEFAULT '' NOT NULL,
|
||||||
group_desc_options INT4 DEFAULT '7' NOT NULL CHECK (group_desc_options >= 0),
|
group_desc_options INT4 DEFAULT '7' NOT NULL CHECK (group_desc_options >= 0),
|
||||||
group_desc_uid varchar(8) DEFAULT '' NOT NULL,
|
group_desc_uid varchar(8) DEFAULT '' NOT NULL,
|
||||||
group_display INT2 DEFAULT '0' NOT NULL CHECK (group_display >= 0),
|
group_display boolean DEFAULT '0' NOT NULL CHECK (group_display >= 0),
|
||||||
group_avatar varchar(255) DEFAULT '' NOT NULL,
|
group_avatar varchar(255) DEFAULT '' NOT NULL,
|
||||||
group_avatar_type INT2 DEFAULT '0' NOT NULL,
|
group_avatar_type INT2 DEFAULT '0' NOT NULL,
|
||||||
group_avatar_width INT2 DEFAULT '0' NOT NULL CHECK (group_avatar_width >= 0),
|
group_avatar_width INT2 DEFAULT '0' NOT NULL CHECK (group_avatar_width >= 0),
|
||||||
|
@ -452,9 +380,9 @@ CREATE TABLE phpbb_groups (
|
||||||
group_rank INT4 DEFAULT '0' NOT NULL CHECK (group_rank >= 0),
|
group_rank INT4 DEFAULT '0' NOT NULL CHECK (group_rank >= 0),
|
||||||
group_colour varchar(6) DEFAULT '' NOT NULL,
|
group_colour varchar(6) DEFAULT '' NOT NULL,
|
||||||
group_sig_chars INT4 DEFAULT '0' NOT NULL CHECK (group_sig_chars >= 0),
|
group_sig_chars INT4 DEFAULT '0' NOT NULL CHECK (group_sig_chars >= 0),
|
||||||
group_receive_pm INT2 DEFAULT '0' NOT NULL CHECK (group_receive_pm >= 0),
|
group_receive_pm boolean DEFAULT '0' NOT NULL CHECK (group_receive_pm >= 0),
|
||||||
group_message_limit INT4 DEFAULT '0' NOT NULL CHECK (group_message_limit >= 0),
|
group_message_limit INT4 DEFAULT '0' NOT NULL CHECK (group_message_limit >= 0),
|
||||||
group_legend INT2 DEFAULT '1' NOT NULL CHECK (group_legend >= 0),
|
group_legend boolean DEFAULT '1' NOT NULL CHECK (group_legend >= 0),
|
||||||
PRIMARY KEY (group_id)
|
PRIMARY KEY (group_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -471,7 +399,7 @@ CREATE TABLE phpbb_icons (
|
||||||
icons_width INT2 DEFAULT '0' NOT NULL,
|
icons_width INT2 DEFAULT '0' NOT NULL,
|
||||||
icons_height INT2 DEFAULT '0' NOT NULL,
|
icons_height INT2 DEFAULT '0' NOT NULL,
|
||||||
icons_order INT4 DEFAULT '0' NOT NULL CHECK (icons_order >= 0),
|
icons_order INT4 DEFAULT '0' NOT NULL CHECK (icons_order >= 0),
|
||||||
display_on_posting INT2 DEFAULT '1' NOT NULL CHECK (display_on_posting >= 0),
|
display_on_posting boolean DEFAULT '1' NOT NULL CHECK (display_on_posting >= 0),
|
||||||
PRIMARY KEY (icons_id)
|
PRIMARY KEY (icons_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -528,7 +456,7 @@ CREATE TABLE phpbb_moderator_cache (
|
||||||
username varchar(255) DEFAULT '' NOT NULL,
|
username varchar(255) DEFAULT '' NOT NULL,
|
||||||
group_id INT4 DEFAULT '0' NOT NULL CHECK (group_id >= 0),
|
group_id INT4 DEFAULT '0' NOT NULL CHECK (group_id >= 0),
|
||||||
group_name varchar(255) DEFAULT '' NOT NULL,
|
group_name varchar(255) DEFAULT '' NOT NULL,
|
||||||
display_on_index INT2 DEFAULT '1' NOT NULL CHECK (display_on_index >= 0)
|
display_on_index boolean DEFAULT '1' NOT NULL CHECK (display_on_index >= 0)
|
||||||
);
|
);
|
||||||
|
|
||||||
CREATE INDEX phpbb_moderator_cache_disp_idx ON phpbb_moderator_cache (display_on_index);
|
CREATE INDEX phpbb_moderator_cache_disp_idx ON phpbb_moderator_cache (display_on_index);
|
||||||
|
@ -541,8 +469,8 @@ CREATE SEQUENCE phpbb_modules_seq;
|
||||||
|
|
||||||
CREATE TABLE phpbb_modules (
|
CREATE TABLE phpbb_modules (
|
||||||
module_id INT4 DEFAULT nextval('phpbb_modules_seq'),
|
module_id INT4 DEFAULT nextval('phpbb_modules_seq'),
|
||||||
module_enabled INT2 DEFAULT '1' NOT NULL CHECK (module_enabled >= 0),
|
module_enabled boolean DEFAULT '1' NOT NULL CHECK (module_enabled >= 0),
|
||||||
module_display INT2 DEFAULT '1' NOT NULL CHECK (module_display >= 0),
|
module_display boolean DEFAULT '1' NOT NULL CHECK (module_display >= 0),
|
||||||
module_basename varchar(255) DEFAULT '' NOT NULL,
|
module_basename varchar(255) DEFAULT '' NOT NULL,
|
||||||
module_class varchar(10) DEFAULT '' NOT NULL,
|
module_class varchar(10) DEFAULT '' NOT NULL,
|
||||||
parent_id INT4 DEFAULT '0' NOT NULL CHECK (parent_id >= 0),
|
parent_id INT4 DEFAULT '0' NOT NULL CHECK (parent_id >= 0),
|
||||||
|
@ -598,25 +526,25 @@ CREATE TABLE phpbb_posts (
|
||||||
icon_id INT4 DEFAULT '0' NOT NULL CHECK (icon_id >= 0),
|
icon_id INT4 DEFAULT '0' NOT NULL CHECK (icon_id >= 0),
|
||||||
poster_ip varchar(40) DEFAULT '' NOT NULL,
|
poster_ip varchar(40) DEFAULT '' NOT NULL,
|
||||||
post_time INT4 DEFAULT '0' NOT NULL CHECK (post_time >= 0),
|
post_time INT4 DEFAULT '0' NOT NULL CHECK (post_time >= 0),
|
||||||
post_approved INT2 DEFAULT '1' NOT NULL CHECK (post_approved >= 0),
|
post_approved boolean DEFAULT '1' NOT NULL CHECK (post_approved >= 0),
|
||||||
post_reported INT2 DEFAULT '0' NOT NULL CHECK (post_reported >= 0),
|
post_reported boolean DEFAULT '0' NOT NULL CHECK (post_reported >= 0),
|
||||||
enable_bbcode INT2 DEFAULT '1' NOT NULL CHECK (enable_bbcode >= 0),
|
enable_bbcode boolean DEFAULT '1' NOT NULL CHECK (enable_bbcode >= 0),
|
||||||
enable_smilies INT2 DEFAULT '1' NOT NULL CHECK (enable_smilies >= 0),
|
enable_smilies boolean DEFAULT '1' NOT NULL CHECK (enable_smilies >= 0),
|
||||||
enable_magic_url INT2 DEFAULT '1' NOT NULL CHECK (enable_magic_url >= 0),
|
enable_magic_url boolean DEFAULT '1' NOT NULL CHECK (enable_magic_url >= 0),
|
||||||
enable_sig INT2 DEFAULT '1' NOT NULL CHECK (enable_sig >= 0),
|
enable_sig boolean DEFAULT '1' NOT NULL CHECK (enable_sig >= 0),
|
||||||
post_username varchar(255) DEFAULT '' NOT NULL,
|
post_username varchar(255) DEFAULT '' NOT NULL,
|
||||||
post_subject varchar(100) DEFAULT '' NOT NULL,
|
post_subject varchar(100) DEFAULT '' NOT NULL,
|
||||||
post_text TEXT DEFAULT '' NOT NULL,
|
post_text TEXT DEFAULT '' NOT NULL,
|
||||||
post_checksum varchar(32) DEFAULT '' NOT NULL,
|
post_checksum varchar(32) DEFAULT '' NOT NULL,
|
||||||
post_attachment INT2 DEFAULT '0' NOT NULL CHECK (post_attachment >= 0),
|
post_attachment boolean DEFAULT '0' NOT NULL CHECK (post_attachment >= 0),
|
||||||
bbcode_bitfield varchar(255) DEFAULT '' NOT NULL,
|
bbcode_bitfield varchar(255) DEFAULT '' NOT NULL,
|
||||||
bbcode_uid varchar(8) DEFAULT '' NOT NULL,
|
bbcode_uid varchar(8) DEFAULT '' NOT NULL,
|
||||||
post_postcount INT2 DEFAULT '1' NOT NULL CHECK (post_postcount >= 0),
|
post_postcount boolean DEFAULT '1' NOT NULL CHECK (post_postcount >= 0),
|
||||||
post_edit_time INT4 DEFAULT '0' NOT NULL CHECK (post_edit_time >= 0),
|
post_edit_time INT4 DEFAULT '0' NOT NULL CHECK (post_edit_time >= 0),
|
||||||
post_edit_reason varchar(255) DEFAULT '' NOT NULL,
|
post_edit_reason varchar(255) DEFAULT '' NOT NULL,
|
||||||
post_edit_user INT4 DEFAULT '0' NOT NULL CHECK (post_edit_user >= 0),
|
post_edit_user INT4 DEFAULT '0' NOT NULL CHECK (post_edit_user >= 0),
|
||||||
post_edit_count INT2 DEFAULT '0' NOT NULL CHECK (post_edit_count >= 0),
|
post_edit_count INT2 DEFAULT '0' NOT NULL CHECK (post_edit_count >= 0),
|
||||||
post_edit_locked INT2 DEFAULT '0' NOT NULL CHECK (post_edit_locked >= 0),
|
post_edit_locked boolean DEFAULT '0' NOT NULL CHECK (post_edit_locked >= 0),
|
||||||
PRIMARY KEY (post_id)
|
PRIMARY KEY (post_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -639,15 +567,15 @@ CREATE TABLE phpbb_privmsgs (
|
||||||
icon_id INT4 DEFAULT '0' NOT NULL CHECK (icon_id >= 0),
|
icon_id INT4 DEFAULT '0' NOT NULL CHECK (icon_id >= 0),
|
||||||
author_ip varchar(40) DEFAULT '' NOT NULL,
|
author_ip varchar(40) DEFAULT '' NOT NULL,
|
||||||
message_time INT4 DEFAULT '0' NOT NULL CHECK (message_time >= 0),
|
message_time INT4 DEFAULT '0' NOT NULL CHECK (message_time >= 0),
|
||||||
enable_bbcode INT2 DEFAULT '1' NOT NULL CHECK (enable_bbcode >= 0),
|
enable_bbcode boolean DEFAULT '1' NOT NULL CHECK (enable_bbcode >= 0),
|
||||||
enable_smilies INT2 DEFAULT '1' NOT NULL CHECK (enable_smilies >= 0),
|
enable_smilies boolean DEFAULT '1' NOT NULL CHECK (enable_smilies >= 0),
|
||||||
enable_magic_url INT2 DEFAULT '1' NOT NULL CHECK (enable_magic_url >= 0),
|
enable_magic_url boolean DEFAULT '1' NOT NULL CHECK (enable_magic_url >= 0),
|
||||||
enable_sig INT2 DEFAULT '1' NOT NULL CHECK (enable_sig >= 0),
|
enable_sig boolean DEFAULT '1' NOT NULL CHECK (enable_sig >= 0),
|
||||||
message_subject varchar(100) DEFAULT '' NOT NULL,
|
message_subject varchar(100) DEFAULT '' NOT NULL,
|
||||||
message_text TEXT DEFAULT '' NOT NULL,
|
message_text TEXT DEFAULT '' NOT NULL,
|
||||||
message_edit_reason varchar(255) DEFAULT '' NOT NULL,
|
message_edit_reason varchar(255) DEFAULT '' NOT NULL,
|
||||||
message_edit_user INT4 DEFAULT '0' NOT NULL CHECK (message_edit_user >= 0),
|
message_edit_user INT4 DEFAULT '0' NOT NULL CHECK (message_edit_user >= 0),
|
||||||
message_attachment INT2 DEFAULT '0' NOT NULL CHECK (message_attachment >= 0),
|
message_attachment boolean DEFAULT '0' NOT NULL CHECK (message_attachment >= 0),
|
||||||
bbcode_bitfield varchar(255) DEFAULT '' NOT NULL,
|
bbcode_bitfield varchar(255) DEFAULT '' NOT NULL,
|
||||||
bbcode_uid varchar(8) DEFAULT '' NOT NULL,
|
bbcode_uid varchar(8) DEFAULT '' NOT NULL,
|
||||||
message_edit_time INT4 DEFAULT '0' NOT NULL CHECK (message_edit_time >= 0),
|
message_edit_time INT4 DEFAULT '0' NOT NULL CHECK (message_edit_time >= 0),
|
||||||
|
@ -704,12 +632,12 @@ CREATE TABLE phpbb_privmsgs_to (
|
||||||
msg_id INT4 DEFAULT '0' NOT NULL CHECK (msg_id >= 0),
|
msg_id INT4 DEFAULT '0' NOT NULL CHECK (msg_id >= 0),
|
||||||
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
||||||
author_id INT4 DEFAULT '0' NOT NULL CHECK (author_id >= 0),
|
author_id INT4 DEFAULT '0' NOT NULL CHECK (author_id >= 0),
|
||||||
pm_deleted INT2 DEFAULT '0' NOT NULL CHECK (pm_deleted >= 0),
|
pm_deleted boolean DEFAULT '0' NOT NULL CHECK (pm_deleted >= 0),
|
||||||
pm_new INT2 DEFAULT '1' NOT NULL CHECK (pm_new >= 0),
|
pm_new boolean DEFAULT '1' NOT NULL CHECK (pm_new >= 0),
|
||||||
pm_unread INT2 DEFAULT '1' NOT NULL CHECK (pm_unread >= 0),
|
pm_unread boolean DEFAULT '1' NOT NULL CHECK (pm_unread >= 0),
|
||||||
pm_replied INT2 DEFAULT '0' NOT NULL CHECK (pm_replied >= 0),
|
pm_replied boolean DEFAULT '0' NOT NULL CHECK (pm_replied >= 0),
|
||||||
pm_marked INT2 DEFAULT '0' NOT NULL CHECK (pm_marked >= 0),
|
pm_marked boolean DEFAULT '0' NOT NULL CHECK (pm_marked >= 0),
|
||||||
pm_forwarded INT2 DEFAULT '0' NOT NULL CHECK (pm_forwarded >= 0),
|
pm_forwarded boolean DEFAULT '0' NOT NULL CHECK (pm_forwarded >= 0),
|
||||||
folder_id INT4 DEFAULT '0' NOT NULL
|
folder_id INT4 DEFAULT '0' NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -733,11 +661,11 @@ CREATE TABLE phpbb_profile_fields (
|
||||||
field_novalue varchar(255) DEFAULT '' NOT NULL,
|
field_novalue varchar(255) DEFAULT '' NOT NULL,
|
||||||
field_default_value varchar(255) DEFAULT '' NOT NULL,
|
field_default_value varchar(255) DEFAULT '' NOT NULL,
|
||||||
field_validation varchar(20) DEFAULT '' NOT NULL,
|
field_validation varchar(20) DEFAULT '' NOT NULL,
|
||||||
field_required INT2 DEFAULT '0' NOT NULL CHECK (field_required >= 0),
|
field_required boolean DEFAULT '0' NOT NULL CHECK (field_required >= 0),
|
||||||
field_show_on_reg INT2 DEFAULT '0' NOT NULL CHECK (field_show_on_reg >= 0),
|
field_show_on_reg boolean DEFAULT '0' NOT NULL CHECK (field_show_on_reg >= 0),
|
||||||
field_hide INT2 DEFAULT '0' NOT NULL CHECK (field_hide >= 0),
|
field_hide boolean DEFAULT '0' NOT NULL CHECK (field_hide >= 0),
|
||||||
field_no_view INT2 DEFAULT '0' NOT NULL CHECK (field_no_view >= 0),
|
field_no_view boolean DEFAULT '0' NOT NULL CHECK (field_no_view >= 0),
|
||||||
field_active INT2 DEFAULT '0' NOT NULL CHECK (field_active >= 0),
|
field_active boolean DEFAULT '0' NOT NULL CHECK (field_active >= 0),
|
||||||
field_order INT4 DEFAULT '0' NOT NULL CHECK (field_order >= 0),
|
field_order INT4 DEFAULT '0' NOT NULL CHECK (field_order >= 0),
|
||||||
PRIMARY KEY (field_id)
|
PRIMARY KEY (field_id)
|
||||||
);
|
);
|
||||||
|
@ -789,7 +717,7 @@ CREATE TABLE phpbb_ranks (
|
||||||
rank_id INT4 DEFAULT nextval('phpbb_ranks_seq'),
|
rank_id INT4 DEFAULT nextval('phpbb_ranks_seq'),
|
||||||
rank_title varchar(255) DEFAULT '' NOT NULL,
|
rank_title varchar(255) DEFAULT '' NOT NULL,
|
||||||
rank_min INT4 DEFAULT '0' NOT NULL CHECK (rank_min >= 0),
|
rank_min INT4 DEFAULT '0' NOT NULL CHECK (rank_min >= 0),
|
||||||
rank_special INT2 DEFAULT '0' NOT NULL CHECK (rank_special >= 0),
|
rank_special boolean DEFAULT '0' NOT NULL CHECK (rank_special >= 0),
|
||||||
rank_image varchar(255) DEFAULT '' NOT NULL,
|
rank_image varchar(255) DEFAULT '' NOT NULL,
|
||||||
PRIMARY KEY (rank_id)
|
PRIMARY KEY (rank_id)
|
||||||
);
|
);
|
||||||
|
@ -805,8 +733,8 @@ CREATE TABLE phpbb_reports (
|
||||||
reason_id INT2 DEFAULT '0' NOT NULL CHECK (reason_id >= 0),
|
reason_id INT2 DEFAULT '0' NOT NULL CHECK (reason_id >= 0),
|
||||||
post_id INT4 DEFAULT '0' NOT NULL CHECK (post_id >= 0),
|
post_id INT4 DEFAULT '0' NOT NULL CHECK (post_id >= 0),
|
||||||
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
||||||
user_notify INT2 DEFAULT '0' NOT NULL CHECK (user_notify >= 0),
|
user_notify boolean DEFAULT '0' NOT NULL CHECK (user_notify >= 0),
|
||||||
report_closed INT2 DEFAULT '0' NOT NULL CHECK (report_closed >= 0),
|
report_closed boolean DEFAULT '0' NOT NULL CHECK (report_closed >= 0),
|
||||||
report_time INT4 DEFAULT '0' NOT NULL CHECK (report_time >= 0),
|
report_time INT4 DEFAULT '0' NOT NULL CHECK (report_time >= 0),
|
||||||
report_text TEXT DEFAULT '' NOT NULL,
|
report_text TEXT DEFAULT '' NOT NULL,
|
||||||
PRIMARY KEY (report_id)
|
PRIMARY KEY (report_id)
|
||||||
|
@ -847,7 +775,7 @@ CREATE SEQUENCE phpbb_search_wordlist_seq;
|
||||||
CREATE TABLE phpbb_search_wordlist (
|
CREATE TABLE phpbb_search_wordlist (
|
||||||
word_id INT4 DEFAULT nextval('phpbb_search_wordlist_seq'),
|
word_id INT4 DEFAULT nextval('phpbb_search_wordlist_seq'),
|
||||||
word_text varchar(255) DEFAULT '' NOT NULL,
|
word_text varchar(255) DEFAULT '' NOT NULL,
|
||||||
word_common INT2 DEFAULT '0' NOT NULL CHECK (word_common >= 0),
|
word_common boolean DEFAULT '0' NOT NULL CHECK (word_common >= 0),
|
||||||
word_count INT4 DEFAULT '0' NOT NULL CHECK (word_count >= 0),
|
word_count INT4 DEFAULT '0' NOT NULL CHECK (word_count >= 0),
|
||||||
PRIMARY KEY (word_id)
|
PRIMARY KEY (word_id)
|
||||||
);
|
);
|
||||||
|
@ -861,7 +789,7 @@ CREATE INDEX phpbb_search_wordlist_wrd_cnt ON phpbb_search_wordlist (word_count)
|
||||||
CREATE TABLE phpbb_search_wordmatch (
|
CREATE TABLE phpbb_search_wordmatch (
|
||||||
post_id INT4 DEFAULT '0' NOT NULL CHECK (post_id >= 0),
|
post_id INT4 DEFAULT '0' NOT NULL CHECK (post_id >= 0),
|
||||||
word_id INT4 DEFAULT '0' NOT NULL CHECK (word_id >= 0),
|
word_id INT4 DEFAULT '0' NOT NULL CHECK (word_id >= 0),
|
||||||
title_match INT2 DEFAULT '0' NOT NULL CHECK (title_match >= 0)
|
title_match boolean DEFAULT '0' NOT NULL CHECK (title_match >= 0)
|
||||||
);
|
);
|
||||||
|
|
||||||
CREATE UNIQUE INDEX phpbb_search_wordmatch_unq_mtch ON phpbb_search_wordmatch (word_id, post_id, title_match);
|
CREATE UNIQUE INDEX phpbb_search_wordmatch_unq_mtch ON phpbb_search_wordmatch (word_id, post_id, title_match);
|
||||||
|
@ -881,9 +809,9 @@ CREATE TABLE phpbb_sessions (
|
||||||
session_browser varchar(150) DEFAULT '' NOT NULL,
|
session_browser varchar(150) DEFAULT '' NOT NULL,
|
||||||
session_forwarded_for varchar(255) DEFAULT '' NOT NULL,
|
session_forwarded_for varchar(255) DEFAULT '' NOT NULL,
|
||||||
session_page varchar(255) DEFAULT '' NOT NULL,
|
session_page varchar(255) DEFAULT '' NOT NULL,
|
||||||
session_viewonline INT2 DEFAULT '1' NOT NULL CHECK (session_viewonline >= 0),
|
session_viewonline boolean DEFAULT '1' NOT NULL CHECK (session_viewonline >= 0),
|
||||||
session_autologin INT2 DEFAULT '0' NOT NULL CHECK (session_autologin >= 0),
|
session_autologin boolean DEFAULT '0' NOT NULL CHECK (session_autologin >= 0),
|
||||||
session_admin INT2 DEFAULT '0' NOT NULL CHECK (session_admin >= 0),
|
session_admin boolean DEFAULT '0' NOT NULL CHECK (session_admin >= 0),
|
||||||
PRIMARY KEY (session_id)
|
PRIMARY KEY (session_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -912,7 +840,7 @@ CREATE TABLE phpbb_sitelist (
|
||||||
site_id INT4 DEFAULT nextval('phpbb_sitelist_seq'),
|
site_id INT4 DEFAULT nextval('phpbb_sitelist_seq'),
|
||||||
site_ip varchar(40) DEFAULT '' NOT NULL,
|
site_ip varchar(40) DEFAULT '' NOT NULL,
|
||||||
site_hostname varchar(255) DEFAULT '' NOT NULL,
|
site_hostname varchar(255) DEFAULT '' NOT NULL,
|
||||||
ip_exclude INT2 DEFAULT '0' NOT NULL CHECK (ip_exclude >= 0),
|
ip_exclude boolean DEFAULT '0' NOT NULL CHECK (ip_exclude >= 0),
|
||||||
PRIMARY KEY (site_id)
|
PRIMARY KEY (site_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -930,7 +858,7 @@ CREATE TABLE phpbb_smilies (
|
||||||
smiley_width INT2 DEFAULT '0' NOT NULL CHECK (smiley_width >= 0),
|
smiley_width INT2 DEFAULT '0' NOT NULL CHECK (smiley_width >= 0),
|
||||||
smiley_height INT2 DEFAULT '0' NOT NULL CHECK (smiley_height >= 0),
|
smiley_height INT2 DEFAULT '0' NOT NULL CHECK (smiley_height >= 0),
|
||||||
smiley_order INT4 DEFAULT '0' NOT NULL CHECK (smiley_order >= 0),
|
smiley_order INT4 DEFAULT '0' NOT NULL CHECK (smiley_order >= 0),
|
||||||
display_on_posting INT2 DEFAULT '1' NOT NULL CHECK (display_on_posting >= 0),
|
display_on_posting boolean DEFAULT '1' NOT NULL CHECK (display_on_posting >= 0),
|
||||||
PRIMARY KEY (smiley_id)
|
PRIMARY KEY (smiley_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -945,7 +873,7 @@ CREATE TABLE phpbb_styles (
|
||||||
style_id INT2 DEFAULT nextval('phpbb_styles_seq'),
|
style_id INT2 DEFAULT nextval('phpbb_styles_seq'),
|
||||||
style_name varchar(255) DEFAULT '' NOT NULL,
|
style_name varchar(255) DEFAULT '' NOT NULL,
|
||||||
style_copyright varchar(255) DEFAULT '' NOT NULL,
|
style_copyright varchar(255) DEFAULT '' NOT NULL,
|
||||||
style_active INT2 DEFAULT '1' NOT NULL CHECK (style_active >= 0),
|
style_active boolean DEFAULT '1' NOT NULL CHECK (style_active >= 0),
|
||||||
template_id INT2 DEFAULT '0' NOT NULL CHECK (template_id >= 0),
|
template_id INT2 DEFAULT '0' NOT NULL CHECK (template_id >= 0),
|
||||||
theme_id INT2 DEFAULT '0' NOT NULL CHECK (theme_id >= 0),
|
theme_id INT2 DEFAULT '0' NOT NULL CHECK (theme_id >= 0),
|
||||||
imageset_id INT2 DEFAULT '0' NOT NULL CHECK (imageset_id >= 0),
|
imageset_id INT2 DEFAULT '0' NOT NULL CHECK (imageset_id >= 0),
|
||||||
|
@ -968,7 +896,7 @@ CREATE TABLE phpbb_styles_template (
|
||||||
template_copyright varchar(255) DEFAULT '' NOT NULL,
|
template_copyright varchar(255) DEFAULT '' NOT NULL,
|
||||||
template_path varchar(100) DEFAULT '' NOT NULL,
|
template_path varchar(100) DEFAULT '' NOT NULL,
|
||||||
bbcode_bitfield varchar(255) DEFAULT 'kNg=' NOT NULL,
|
bbcode_bitfield varchar(255) DEFAULT 'kNg=' NOT NULL,
|
||||||
template_storedb INT2 DEFAULT '0' NOT NULL CHECK (template_storedb >= 0),
|
template_storedb boolean DEFAULT '0' NOT NULL CHECK (template_storedb >= 0),
|
||||||
PRIMARY KEY (template_id)
|
PRIMARY KEY (template_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -998,7 +926,7 @@ CREATE TABLE phpbb_styles_theme (
|
||||||
theme_name varchar(255) DEFAULT '' NOT NULL,
|
theme_name varchar(255) DEFAULT '' NOT NULL,
|
||||||
theme_copyright varchar(255) DEFAULT '' NOT NULL,
|
theme_copyright varchar(255) DEFAULT '' NOT NULL,
|
||||||
theme_path varchar(100) DEFAULT '' NOT NULL,
|
theme_path varchar(100) DEFAULT '' NOT NULL,
|
||||||
theme_storedb INT2 DEFAULT '0' NOT NULL CHECK (theme_storedb >= 0),
|
theme_storedb boolean DEFAULT '0' NOT NULL CHECK (theme_storedb >= 0),
|
||||||
theme_mtime INT4 DEFAULT '0' NOT NULL CHECK (theme_mtime >= 0),
|
theme_mtime INT4 DEFAULT '0' NOT NULL CHECK (theme_mtime >= 0),
|
||||||
theme_data TEXT DEFAULT '' NOT NULL,
|
theme_data TEXT DEFAULT '' NOT NULL,
|
||||||
PRIMARY KEY (theme_id)
|
PRIMARY KEY (theme_id)
|
||||||
|
@ -1048,9 +976,9 @@ CREATE TABLE phpbb_topics (
|
||||||
topic_id INT4 DEFAULT nextval('phpbb_topics_seq'),
|
topic_id INT4 DEFAULT nextval('phpbb_topics_seq'),
|
||||||
forum_id INT4 DEFAULT '0' NOT NULL CHECK (forum_id >= 0),
|
forum_id INT4 DEFAULT '0' NOT NULL CHECK (forum_id >= 0),
|
||||||
icon_id INT4 DEFAULT '0' NOT NULL CHECK (icon_id >= 0),
|
icon_id INT4 DEFAULT '0' NOT NULL CHECK (icon_id >= 0),
|
||||||
topic_attachment INT2 DEFAULT '0' NOT NULL CHECK (topic_attachment >= 0),
|
topic_attachment boolean DEFAULT '0' NOT NULL CHECK (topic_attachment >= 0),
|
||||||
topic_approved INT2 DEFAULT '1' NOT NULL CHECK (topic_approved >= 0),
|
topic_approved boolean DEFAULT '1' NOT NULL CHECK (topic_approved >= 0),
|
||||||
topic_reported INT2 DEFAULT '0' NOT NULL CHECK (topic_reported >= 0),
|
topic_reported boolean DEFAULT '0' NOT NULL CHECK (topic_reported >= 0),
|
||||||
topic_title varchar(100) DEFAULT '' NOT NULL,
|
topic_title varchar(100) DEFAULT '' NOT NULL,
|
||||||
topic_poster INT4 DEFAULT '0' NOT NULL CHECK (topic_poster >= 0),
|
topic_poster INT4 DEFAULT '0' NOT NULL CHECK (topic_poster >= 0),
|
||||||
topic_time INT4 DEFAULT '0' NOT NULL CHECK (topic_time >= 0),
|
topic_time INT4 DEFAULT '0' NOT NULL CHECK (topic_time >= 0),
|
||||||
|
@ -1071,14 +999,14 @@ CREATE TABLE phpbb_topics (
|
||||||
topic_last_post_time INT4 DEFAULT '0' NOT NULL CHECK (topic_last_post_time >= 0),
|
topic_last_post_time INT4 DEFAULT '0' NOT NULL CHECK (topic_last_post_time >= 0),
|
||||||
topic_last_view_time INT4 DEFAULT '0' NOT NULL CHECK (topic_last_view_time >= 0),
|
topic_last_view_time INT4 DEFAULT '0' NOT NULL CHECK (topic_last_view_time >= 0),
|
||||||
topic_moved_id INT4 DEFAULT '0' NOT NULL CHECK (topic_moved_id >= 0),
|
topic_moved_id INT4 DEFAULT '0' NOT NULL CHECK (topic_moved_id >= 0),
|
||||||
topic_bumped INT2 DEFAULT '0' NOT NULL CHECK (topic_bumped >= 0),
|
topic_bumped boolean DEFAULT '0' NOT NULL CHECK (topic_bumped >= 0),
|
||||||
topic_bumper INT4 DEFAULT '0' NOT NULL CHECK (topic_bumper >= 0),
|
topic_bumper INT4 DEFAULT '0' NOT NULL CHECK (topic_bumper >= 0),
|
||||||
poll_title varchar(255) DEFAULT '' NOT NULL,
|
poll_title varchar(255) DEFAULT '' NOT NULL,
|
||||||
poll_start INT4 DEFAULT '0' NOT NULL CHECK (poll_start >= 0),
|
poll_start INT4 DEFAULT '0' NOT NULL CHECK (poll_start >= 0),
|
||||||
poll_length INT4 DEFAULT '0' NOT NULL CHECK (poll_length >= 0),
|
poll_length INT4 DEFAULT '0' NOT NULL CHECK (poll_length >= 0),
|
||||||
poll_max_options INT2 DEFAULT '1' NOT NULL,
|
poll_max_options INT2 DEFAULT '1' NOT NULL,
|
||||||
poll_last_vote INT4 DEFAULT '0' NOT NULL CHECK (poll_last_vote >= 0),
|
poll_last_vote INT4 DEFAULT '0' NOT NULL CHECK (poll_last_vote >= 0),
|
||||||
poll_vote_change INT2 DEFAULT '0' NOT NULL CHECK (poll_vote_change >= 0),
|
poll_vote_change boolean DEFAULT '0' NOT NULL CHECK (poll_vote_change >= 0),
|
||||||
PRIMARY KEY (topic_id)
|
PRIMARY KEY (topic_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -1108,7 +1036,7 @@ CREATE INDEX phpbb_topics_track_forum_id ON phpbb_topics_track (forum_id);
|
||||||
CREATE TABLE phpbb_topics_posted (
|
CREATE TABLE phpbb_topics_posted (
|
||||||
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
||||||
topic_id INT4 DEFAULT '0' NOT NULL CHECK (topic_id >= 0),
|
topic_id INT4 DEFAULT '0' NOT NULL CHECK (topic_id >= 0),
|
||||||
topic_posted INT2 DEFAULT '0' NOT NULL CHECK (topic_posted >= 0),
|
topic_posted boolean DEFAULT '0' NOT NULL CHECK (topic_posted >= 0),
|
||||||
PRIMARY KEY (user_id, topic_id)
|
PRIMARY KEY (user_id, topic_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -1119,7 +1047,7 @@ CREATE TABLE phpbb_topics_posted (
|
||||||
CREATE TABLE phpbb_topics_watch (
|
CREATE TABLE phpbb_topics_watch (
|
||||||
topic_id INT4 DEFAULT '0' NOT NULL CHECK (topic_id >= 0),
|
topic_id INT4 DEFAULT '0' NOT NULL CHECK (topic_id >= 0),
|
||||||
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
||||||
notify_status INT2 DEFAULT '0' NOT NULL CHECK (notify_status >= 0)
|
notify_status boolean DEFAULT '0' NOT NULL CHECK (notify_status >= 0)
|
||||||
);
|
);
|
||||||
|
|
||||||
CREATE INDEX phpbb_topics_watch_topic_id ON phpbb_topics_watch (topic_id);
|
CREATE INDEX phpbb_topics_watch_topic_id ON phpbb_topics_watch (topic_id);
|
||||||
|
@ -1132,8 +1060,8 @@ CREATE INDEX phpbb_topics_watch_notify_stat ON phpbb_topics_watch (notify_status
|
||||||
CREATE TABLE phpbb_user_group (
|
CREATE TABLE phpbb_user_group (
|
||||||
group_id INT4 DEFAULT '0' NOT NULL CHECK (group_id >= 0),
|
group_id INT4 DEFAULT '0' NOT NULL CHECK (group_id >= 0),
|
||||||
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
||||||
group_leader INT2 DEFAULT '0' NOT NULL CHECK (group_leader >= 0),
|
group_leader boolean DEFAULT '0' NOT NULL CHECK (group_leader >= 0),
|
||||||
user_pending INT2 DEFAULT '1' NOT NULL CHECK (user_pending >= 0)
|
user_pending boolean DEFAULT '1' NOT NULL CHECK (user_pending >= 0)
|
||||||
);
|
);
|
||||||
|
|
||||||
CREATE INDEX phpbb_user_group_group_id ON phpbb_user_group (group_id);
|
CREATE INDEX phpbb_user_group_group_id ON phpbb_user_group (group_id);
|
||||||
|
@ -1153,11 +1081,11 @@ CREATE TABLE phpbb_users (
|
||||||
user_perm_from INT4 DEFAULT '0' NOT NULL CHECK (user_perm_from >= 0),
|
user_perm_from INT4 DEFAULT '0' NOT NULL CHECK (user_perm_from >= 0),
|
||||||
user_ip varchar(40) DEFAULT '' NOT NULL,
|
user_ip varchar(40) DEFAULT '' NOT NULL,
|
||||||
user_regdate INT4 DEFAULT '0' NOT NULL CHECK (user_regdate >= 0),
|
user_regdate INT4 DEFAULT '0' NOT NULL CHECK (user_regdate >= 0),
|
||||||
username varchar_ci DEFAULT '' NOT NULL,
|
username varchar(255) DEFAULT '' NOT NULL,
|
||||||
username_clean varchar_ci DEFAULT '' NOT NULL,
|
username_clean varchar(255) DEFAULT '' NOT NULL,
|
||||||
user_password varchar(40) DEFAULT '' NOT NULL,
|
user_password varchar(40) DEFAULT '' NOT NULL,
|
||||||
user_passchg INT4 DEFAULT '0' NOT NULL CHECK (user_passchg >= 0),
|
user_passchg INT4 DEFAULT '0' NOT NULL CHECK (user_passchg >= 0),
|
||||||
user_pass_convert INT2 DEFAULT '0' NOT NULL CHECK (user_pass_convert >= 0),
|
user_pass_convert boolean DEFAULT '0' NOT NULL CHECK (user_pass_convert >= 0),
|
||||||
user_email varchar(100) DEFAULT '' NOT NULL,
|
user_email varchar(100) DEFAULT '' NOT NULL,
|
||||||
user_email_hash INT8 DEFAULT '0' NOT NULL,
|
user_email_hash INT8 DEFAULT '0' NOT NULL,
|
||||||
user_birthday varchar(10) DEFAULT '' NOT NULL,
|
user_birthday varchar(10) DEFAULT '' NOT NULL,
|
||||||
|
@ -1175,7 +1103,7 @@ CREATE TABLE phpbb_users (
|
||||||
user_posts INT4 DEFAULT '0' NOT NULL CHECK (user_posts >= 0),
|
user_posts INT4 DEFAULT '0' NOT NULL CHECK (user_posts >= 0),
|
||||||
user_lang varchar(30) DEFAULT '' NOT NULL,
|
user_lang varchar(30) DEFAULT '' NOT NULL,
|
||||||
user_timezone decimal(5,2) DEFAULT '0' NOT NULL,
|
user_timezone decimal(5,2) DEFAULT '0' NOT NULL,
|
||||||
user_dst INT2 DEFAULT '0' NOT NULL CHECK (user_dst >= 0),
|
user_dst boolean DEFAULT '0' NOT NULL CHECK (user_dst >= 0),
|
||||||
user_dateformat varchar(30) DEFAULT 'd M Y H:i' NOT NULL,
|
user_dateformat varchar(30) DEFAULT 'd M Y H:i' NOT NULL,
|
||||||
user_style INT2 DEFAULT '0' NOT NULL CHECK (user_style >= 0),
|
user_style INT2 DEFAULT '0' NOT NULL CHECK (user_style >= 0),
|
||||||
user_rank INT4 DEFAULT '0' NOT NULL CHECK (user_rank >= 0),
|
user_rank INT4 DEFAULT '0' NOT NULL CHECK (user_rank >= 0),
|
||||||
|
@ -1183,7 +1111,7 @@ CREATE TABLE phpbb_users (
|
||||||
user_new_privmsg INT4 DEFAULT '0' NOT NULL,
|
user_new_privmsg INT4 DEFAULT '0' NOT NULL,
|
||||||
user_unread_privmsg INT4 DEFAULT '0' NOT NULL,
|
user_unread_privmsg INT4 DEFAULT '0' NOT NULL,
|
||||||
user_last_privmsg INT4 DEFAULT '0' NOT NULL CHECK (user_last_privmsg >= 0),
|
user_last_privmsg INT4 DEFAULT '0' NOT NULL CHECK (user_last_privmsg >= 0),
|
||||||
user_message_rules INT2 DEFAULT '0' NOT NULL CHECK (user_message_rules >= 0),
|
user_message_rules boolean DEFAULT '0' NOT NULL CHECK (user_message_rules >= 0),
|
||||||
user_full_folder INT4 DEFAULT '-3' NOT NULL,
|
user_full_folder INT4 DEFAULT '-3' NOT NULL,
|
||||||
user_emailtime INT4 DEFAULT '0' NOT NULL CHECK (user_emailtime >= 0),
|
user_emailtime INT4 DEFAULT '0' NOT NULL CHECK (user_emailtime >= 0),
|
||||||
user_topic_show_days INT2 DEFAULT '0' NOT NULL CHECK (user_topic_show_days >= 0),
|
user_topic_show_days INT2 DEFAULT '0' NOT NULL CHECK (user_topic_show_days >= 0),
|
||||||
|
@ -1192,13 +1120,13 @@ CREATE TABLE phpbb_users (
|
||||||
user_post_show_days INT2 DEFAULT '0' NOT NULL CHECK (user_post_show_days >= 0),
|
user_post_show_days INT2 DEFAULT '0' NOT NULL CHECK (user_post_show_days >= 0),
|
||||||
user_post_sortby_type varchar(1) DEFAULT 't' NOT NULL,
|
user_post_sortby_type varchar(1) DEFAULT 't' NOT NULL,
|
||||||
user_post_sortby_dir varchar(1) DEFAULT 'a' NOT NULL,
|
user_post_sortby_dir varchar(1) DEFAULT 'a' NOT NULL,
|
||||||
user_notify INT2 DEFAULT '0' NOT NULL CHECK (user_notify >= 0),
|
user_notify boolean DEFAULT '0' NOT NULL CHECK (user_notify >= 0),
|
||||||
user_notify_pm INT2 DEFAULT '1' NOT NULL CHECK (user_notify_pm >= 0),
|
user_notify_pm boolean DEFAULT '1' NOT NULL CHECK (user_notify_pm >= 0),
|
||||||
user_notify_type INT2 DEFAULT '0' NOT NULL,
|
user_notify_type INT2 DEFAULT '0' NOT NULL,
|
||||||
user_allow_pm INT2 DEFAULT '1' NOT NULL CHECK (user_allow_pm >= 0),
|
user_allow_pm boolean DEFAULT '1' NOT NULL CHECK (user_allow_pm >= 0),
|
||||||
user_allow_viewonline INT2 DEFAULT '1' NOT NULL CHECK (user_allow_viewonline >= 0),
|
user_allow_viewonline boolean DEFAULT '1' NOT NULL CHECK (user_allow_viewonline >= 0),
|
||||||
user_allow_viewemail INT2 DEFAULT '1' NOT NULL CHECK (user_allow_viewemail >= 0),
|
user_allow_viewemail boolean DEFAULT '1' NOT NULL CHECK (user_allow_viewemail >= 0),
|
||||||
user_allow_massemail INT2 DEFAULT '1' NOT NULL CHECK (user_allow_massemail >= 0),
|
user_allow_massemail boolean DEFAULT '1' NOT NULL CHECK (user_allow_massemail >= 0),
|
||||||
user_options INT4 DEFAULT '895' NOT NULL CHECK (user_options >= 0),
|
user_options INT4 DEFAULT '895' NOT NULL CHECK (user_options >= 0),
|
||||||
user_avatar varchar(255) DEFAULT '' NOT NULL,
|
user_avatar varchar(255) DEFAULT '' NOT NULL,
|
||||||
user_avatar_type INT2 DEFAULT '0' NOT NULL,
|
user_avatar_type INT2 DEFAULT '0' NOT NULL,
|
||||||
|
@ -1261,11 +1189,12 @@ CREATE TABLE phpbb_words (
|
||||||
CREATE TABLE phpbb_zebra (
|
CREATE TABLE phpbb_zebra (
|
||||||
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),
|
||||||
zebra_id INT4 DEFAULT '0' NOT NULL CHECK (zebra_id >= 0),
|
zebra_id INT4 DEFAULT '0' NOT NULL CHECK (zebra_id >= 0),
|
||||||
friend INT2 DEFAULT '0' NOT NULL CHECK (friend >= 0),
|
friend boolean DEFAULT '0' NOT NULL CHECK (friend >= 0),
|
||||||
foe INT2 DEFAULT '0' NOT NULL CHECK (foe >= 0),
|
foe boolean DEFAULT '0' NOT NULL CHECK (foe >= 0),
|
||||||
PRIMARY KEY (user_id, zebra_id)
|
PRIMARY KEY (user_id, zebra_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
CREATE INDEX phpbb_zebra_zebra_user ON phpbb_zebra (zebra_id, user_id);
|
||||||
|
|
||||||
|
|
||||||
COMMIT;
|
COMMIT;
|
|
@ -483,12 +483,12 @@ INSERT INTO phpbb_users (user_type, group_id, username, username_clean, user_reg
|
||||||
INSERT INTO phpbb_users (user_type, group_id, username, username_clean, user_regdate, user_password, user_email, user_lang, user_style, user_rank, user_colour, user_posts, user_permissions, user_ip, user_birthday, user_lastpage, user_last_confirm_key, user_post_sortby_type, user_post_sortby_dir, user_topic_sortby_type, user_topic_sortby_dir, user_avatar, user_sig, user_sig_bbcode_uid, user_from, user_icq, user_aim, user_yim, user_msnm, user_jabber, user_website, user_occ, user_interests, user_actkey, user_newpasswd) VALUES (3, 5, 'Admin', 'admin', 0, '21232f297a57a5a743894a0e4a801fc3', 'admin@yourdomain.com', 'en', 1, 1, 'AA0000', 1, '', '', '', '', '', 't', 'a', 't', 'd', '', '', '', '', '', '', '', '', '', '', '', '', '', '');
|
INSERT INTO phpbb_users (user_type, group_id, username, username_clean, user_regdate, user_password, user_email, user_lang, user_style, user_rank, user_colour, user_posts, user_permissions, user_ip, user_birthday, user_lastpage, user_last_confirm_key, user_post_sortby_type, user_post_sortby_dir, user_topic_sortby_type, user_topic_sortby_dir, user_avatar, user_sig, user_sig_bbcode_uid, user_from, user_icq, user_aim, user_yim, user_msnm, user_jabber, user_website, user_occ, user_interests, user_actkey, user_newpasswd) VALUES (3, 5, 'Admin', 'admin', 0, '21232f297a57a5a743894a0e4a801fc3', 'admin@yourdomain.com', 'en', 1, 1, 'AA0000', 1, '', '', '', '', '', 't', 'a', 't', 'd', '', '', '', '', '', '', '', '', '', '', '', '', '', '');
|
||||||
|
|
||||||
# -- Groups
|
# -- Groups
|
||||||
INSERT INTO phpbb_groups (group_name, group_type, group_founder_manage, group_colour, group_legend, group_avatar, group_desc, group_desc_uid) VALUES ('GUESTS', 3, 0, '', 0, '', '', '');
|
INSERT INTO phpbb_groups (group_name, group_name_clean, group_type, group_founder_manage, group_colour, group_legend, group_avatar, group_desc, group_desc_uid) VALUES ('GUESTS', 'guests', 3, 0, '', 0, '', '', '');
|
||||||
INSERT INTO phpbb_groups (group_name, group_type, group_founder_manage, group_colour, group_legend, group_avatar, group_desc, group_desc_uid) VALUES ('REGISTERED', 3, 0, '', 0, '', '', '');
|
INSERT INTO phpbb_groups (group_name, group_name_clean, group_type, group_founder_manage, group_colour, group_legend, group_avatar, group_desc, group_desc_uid) VALUES ('REGISTERED', 'registered', 3, 0, '', 0, '', '', '');
|
||||||
INSERT INTO phpbb_groups (group_name, group_type, group_founder_manage, group_colour, group_legend, group_avatar, group_desc, group_desc_uid) VALUES ('REGISTERED_COPPA', 3, 0, '', 0, '', '', '');
|
INSERT INTO phpbb_groups (group_name, group_name_clean, group_type, group_founder_manage, group_colour, group_legend, group_avatar, group_desc, group_desc_uid) VALUES ('REGISTERED_COPPA', 'registered_coppa', 3, 0, '', 0, '', '', '');
|
||||||
INSERT INTO phpbb_groups (group_name, group_type, group_founder_manage, group_colour, group_legend, group_avatar, group_desc, group_desc_uid) VALUES ('GLOBAL_MODERATORS', 3, 0, '00AA00', 1, '', '', '');
|
INSERT INTO phpbb_groups (group_name, group_name_clean, group_type, group_founder_manage, group_colour, group_legend, group_avatar, group_desc, group_desc_uid) VALUES ('GLOBAL_MODERATORS', 'global_moderators' 3, 0, '00AA00', 1, '', '', '');
|
||||||
INSERT INTO phpbb_groups (group_name, group_type, group_founder_manage, group_colour, group_legend, group_avatar, group_desc, group_desc_uid) VALUES ('ADMINISTRATORS', 3, 1, 'AA0000', 1, '', '', '');
|
INSERT INTO phpbb_groups (group_name, group_name_clean, group_type, group_founder_manage, group_colour, group_legend, group_avatar, group_desc, group_desc_uid) VALUES ('ADMINISTRATORS', 'administrators', 3, 1, 'AA0000', 1, '', '', '');
|
||||||
INSERT INTO phpbb_groups (group_name, group_type, group_founder_manage, group_colour, group_legend, group_avatar, group_desc, group_desc_uid) VALUES ('BOTS', 3, 0, '9E8DA7', 0, '', '', '');
|
INSERT INTO phpbb_groups (group_name, group_name_clean, group_type, group_founder_manage, group_colour, group_legend, group_avatar, group_desc, group_desc_uid) VALUES ('BOTS', 'bots', 3, 0, '9E8DA7', 0, '', '', '');
|
||||||
|
|
||||||
# -- User -> Group
|
# -- User -> Group
|
||||||
INSERT INTO phpbb_user_group (group_id, user_id, user_pending, group_leader) VALUES (1, 1, 0, 0);
|
INSERT INTO phpbb_user_group (group_id, user_id, user_pending, group_leader) VALUES (1, 1, 0, 0);
|
||||||
|
|
|
@ -152,6 +152,7 @@ CREATE TABLE phpbb_config (
|
||||||
);
|
);
|
||||||
|
|
||||||
CREATE INDEX phpbb_config_is_dynamic ON phpbb_config (is_dynamic);
|
CREATE INDEX phpbb_config_is_dynamic ON phpbb_config (is_dynamic);
|
||||||
|
CREATE INDEX phpbb_config_config_name ON phpbb_config (config_name);
|
||||||
|
|
||||||
# Table: 'phpbb_confirm'
|
# Table: 'phpbb_confirm'
|
||||||
CREATE TABLE phpbb_confirm (
|
CREATE TABLE phpbb_confirm (
|
||||||
|
@ -289,6 +290,7 @@ CREATE TABLE phpbb_groups (
|
||||||
group_type tinyint(4) NOT NULL DEFAULT '1',
|
group_type tinyint(4) NOT NULL DEFAULT '1',
|
||||||
group_founder_manage INTEGER UNSIGNED NOT NULL DEFAULT '0',
|
group_founder_manage INTEGER UNSIGNED NOT NULL DEFAULT '0',
|
||||||
group_name varchar(255) NOT NULL DEFAULT '',
|
group_name varchar(255) NOT NULL DEFAULT '',
|
||||||
|
group_name_clean varchar(255) NOT NULL DEFAULT '',
|
||||||
group_desc text(65535) NOT NULL DEFAULT '',
|
group_desc text(65535) NOT NULL DEFAULT '',
|
||||||
group_desc_bitfield varchar(255) NOT NULL DEFAULT '',
|
group_desc_bitfield varchar(255) NOT NULL DEFAULT '',
|
||||||
group_desc_options INTEGER UNSIGNED NOT NULL DEFAULT '7',
|
group_desc_options INTEGER UNSIGNED NOT NULL DEFAULT '7',
|
||||||
|
@ -960,6 +962,7 @@ CREATE TABLE phpbb_zebra (
|
||||||
PRIMARY KEY (user_id, zebra_id)
|
PRIMARY KEY (user_id, zebra_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
CREATE INDEX phpbb_zebra_zebra_user ON phpbb_zebra (zebra_id, user_id);
|
||||||
|
|
||||||
|
|
||||||
COMMIT;
|
COMMIT;
|
|
@ -494,7 +494,7 @@ if (sizeof($shadow_topic_list))
|
||||||
$row = array_merge($row, array(
|
$row = array_merge($row, array(
|
||||||
'topic_moved_id' => $rowset[$orig_topic_id]['topic_moved_id'],
|
'topic_moved_id' => $rowset[$orig_topic_id]['topic_moved_id'],
|
||||||
'topic_status' => $rowset[$orig_topic_id]['topic_status'],
|
'topic_status' => $rowset[$orig_topic_id]['topic_status'],
|
||||||
'topic_type' => $rowset[$orig_topic_id]['topic_type'])
|
'topic_type' => $rowset[$orig_topic_id]['topic_type'],
|
||||||
));
|
));
|
||||||
|
|
||||||
$rowset[$orig_topic_id] = $row;
|
$rowset[$orig_topic_id] = $row;
|
||||||
|
|
Loading…
Add table
Reference in a new issue