mirror of
https://github.com/phpbb/phpbb.git
synced 2025-08-08 17:56:52 +02:00
- fixed some bugs
- made sql schemas consistent - added correct sequences and generators to sql schemas - extended some rows to hold more data. This solves issues with multibyte characters and too short topic titles, names, etc. - allow multibyte characters in usernames git-svn-id: file:///svn/phpbb/trunk@5784 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
@@ -524,7 +524,7 @@ class acp_forums
|
||||
|
||||
$s_show_display_on_index = false;
|
||||
|
||||
if ($action == 'edit' && $forum_data['parent_id'] > 0)
|
||||
if ($forum_data['parent_id'] > 0)
|
||||
{
|
||||
// if this forum is a subforum put the "display on index" checkbox
|
||||
if ($parent_info = $this->get_forum_info($forum_data['parent_id']))
|
||||
|
@@ -40,8 +40,8 @@ class acp_permissions
|
||||
$subforum_id = request_var('subforum_id', 0);
|
||||
$forum_id = request_var('forum_id', array(0));
|
||||
|
||||
$username = request_var('username', array(''));
|
||||
$usernames = request_var('usernames', '');
|
||||
$username = request_var('username', array(''), true);
|
||||
$usernames = request_var('usernames', '', true);
|
||||
$user_id = request_var('user_id', array(0));
|
||||
|
||||
$group_id = request_var('group_id', array(0));
|
||||
|
@@ -214,7 +214,7 @@ class acp_prune
|
||||
}
|
||||
else
|
||||
{
|
||||
$username = request_var('username', '');
|
||||
$username = request_var('username', '', true);
|
||||
$email = request_var('email', '');
|
||||
|
||||
$joined_select = request_var('joined_select', 'lt');
|
||||
@@ -315,7 +315,7 @@ class acp_prune
|
||||
'prune' => 1,
|
||||
|
||||
'users' => request_var('users', ''),
|
||||
'username' => request_var('username', ''),
|
||||
'username' => request_var('username', '', true),
|
||||
'email' => request_var('email', ''),
|
||||
'joined_select' => request_var('joined_select', ''),
|
||||
'joined' => request_var('joined', ''),
|
||||
|
@@ -28,7 +28,7 @@ class acp_users
|
||||
include($phpbb_root_path . 'includes/functions_profile_fields.' . $phpEx);
|
||||
|
||||
$error = array();
|
||||
$username = request_var('username', '');
|
||||
$username = request_var('username', '', true);
|
||||
$user_id = request_var('u', 0);
|
||||
$action = request_var('action', '');
|
||||
|
||||
|
@@ -311,7 +311,7 @@ class dbal_oracle extends dbal
|
||||
{
|
||||
if (preg_match('#^INSERT[\t\n ]+INTO[\t\n ]+([a-z0-9\_\-]+)#is', $this->last_query_text, $tablename))
|
||||
{
|
||||
$query = 'SELECT ' . $tablename[1] . '_id_seq.currval FROM DUAL';
|
||||
$query = 'SELECT ' . $tablename[1] . '_seq.currval FROM DUAL';
|
||||
$stmt = @ociparse($this->db_connect_id, $query);
|
||||
@ociexecute($stmt, OCI_DEFAULT );
|
||||
|
||||
|
@@ -295,7 +295,7 @@ class dbal_postgres extends dbal
|
||||
{
|
||||
if (preg_match("/^INSERT[\t\n ]+INTO[\t\n ]+([a-z0-9\_\-]+)/is", $this->last_query_text, $tablename))
|
||||
{
|
||||
$query = "SELECT currval('" . $tablename[1] . "_id_seq') AS last_value";
|
||||
$query = "SELECT currval('" . $tablename[1] . "_seq') AS last_value";
|
||||
$temp_q_id = @pg_query($this->db_connect_id, $query);
|
||||
if (!$temp_q_id)
|
||||
{
|
||||
|
@@ -24,10 +24,13 @@ function set_var(&$result, $var, $type, $multibyte = false)
|
||||
|
||||
if ($type == 'string')
|
||||
{
|
||||
$result = trim(htmlspecialchars(str_replace(array("\r\n", "\r", "\xFF"), array("\n", "\n", ' '), $result)));
|
||||
$result = trim(htmlspecialchars(str_replace(array("\r\n", "\r"), array("\n", "\n"), $result)));
|
||||
$result = (STRIP) ? stripslashes($result) : $result;
|
||||
if ($multibyte)
|
||||
|
||||
// Check for possible multibyte characters to save a preg_replace call if nothing is in there...
|
||||
if ($multibyte && strpos($result, '&#') !== false)
|
||||
{
|
||||
echo "HERE";
|
||||
$result = preg_replace('#&(\#[0-9]+;)#', '&\1', $result);
|
||||
}
|
||||
}
|
||||
@@ -1387,7 +1390,7 @@ function login_box($redirect = '', $l_explain = '', $l_success = '', $admin = fa
|
||||
|
||||
if (isset($_POST['login']))
|
||||
{
|
||||
$username = request_var('username', '');
|
||||
$username = request_var('username', '', true);
|
||||
$password = request_var('password', '');
|
||||
$autologin = (!empty($_POST['autologin'])) ? true : false;
|
||||
$viewonline = (!empty($_POST['viewonline'])) ? 0 : 1;
|
||||
@@ -2510,7 +2513,7 @@ function page_header($page_title = '')
|
||||
'L_INDEX' => $user->lang['FORUM_INDEX'],
|
||||
'L_ONLINE_EXPLAIN' => $l_online_time,
|
||||
|
||||
'U_PRIVATEMSGS' => "{$phpbb_root_path}ucp.$phpEx$SID&i=pm&mode=" . (($user->data['user_new_privmsg'] || $l_privmsgs_text_unread) ? 'unread' : 'view'),
|
||||
'U_PRIVATEMSGS' => "{$phpbb_root_path}ucp.$phpEx$SID&i=pm&folder=inbox",
|
||||
'U_RETURN_INBOX' => "{$phpbb_root_path}ucp.$phpEx$SID&i=pm&folder=inbox",
|
||||
'U_JS_RETURN_INBOX' => "{$phpbb_root_path}ucp.$phpEx$SID&i=pm&folder=inbox",
|
||||
'U_POPUP_PM' => "{$phpbb_root_path}ucp.$phpEx$SID&i=pm&mode=popup",
|
||||
|
@@ -1845,7 +1845,7 @@ function cache_moderators()
|
||||
'user_id' => $user_id,
|
||||
'username' => $usernames_ary[$user_id],
|
||||
'group_id' => 0,
|
||||
'groupname' => ''
|
||||
'group_name' => ''
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -1886,7 +1886,7 @@ function cache_moderators()
|
||||
'user_id' => 0,
|
||||
'username' => '',
|
||||
'group_id' => $group_id,
|
||||
'groupname' => $groupnames_ary[$group_id]
|
||||
'group_name' => $groupnames_ary[$group_id]
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@@ -563,7 +563,7 @@ function get_moderators(&$forum_moderators, $forum_id = false)
|
||||
|
||||
while ($row = $db->sql_fetchrow($result))
|
||||
{
|
||||
$forum_moderators[$row['forum_id']][] = (!empty($row['user_id'])) ? '<a href="' . $phpbb_root_path . "memberlist.$phpEx$SID&mode=viewprofile&u=" . $row['user_id'] . '">' . $row['username'] . '</a>' : '<a href="' . $phpbb_root_path . "memberlist.$phpEx$SID&mode=group&g=" . $row['group_id'] . '">' . $row['groupname'] . '</a>';
|
||||
$forum_moderators[$row['forum_id']][] = (!empty($row['user_id'])) ? '<a href="' . $phpbb_root_path . "memberlist.$phpEx$SID&mode=viewprofile&u=" . $row['user_id'] . '">' . $row['username'] . '</a>' : '<a href="' . $phpbb_root_path . "memberlist.$phpEx$SID&mode=group&g=" . $row['group_id'] . '">' . $row['group_name'] . '</a>';
|
||||
}
|
||||
$db->sql_freeresult($result);
|
||||
|
||||
|
@@ -145,7 +145,7 @@ class messenger
|
||||
// assign variables
|
||||
function assign_vars($vars)
|
||||
{
|
||||
$this->vars = (empty($this->vars)) ? $vars : $this->vars . $vars;
|
||||
$this->vars = (empty($this->vars)) ? $vars : $this->vars + $vars;
|
||||
}
|
||||
|
||||
// Send the mail out to the recipients set previously in var $this->address
|
||||
@@ -209,14 +209,16 @@ class messenger
|
||||
{
|
||||
case NOTIFY_EMAIL:
|
||||
$result = $this->msg_email();
|
||||
break;
|
||||
break;
|
||||
|
||||
case NOTIFY_IM:
|
||||
$result = $this->msg_jabber();
|
||||
break;
|
||||
break;
|
||||
|
||||
case NOTIFY_BOTH:
|
||||
$result = $this->msg_email();
|
||||
$this->msg_jabber();
|
||||
break;
|
||||
break;
|
||||
}
|
||||
|
||||
$this->reset();
|
||||
@@ -394,7 +396,7 @@ class messenger
|
||||
|
||||
foreach ($addresses as $address)
|
||||
{
|
||||
$this->jabber->send_message($address, 'normal', NULL, array('body' => $this->msg));
|
||||
$this->jabber->send_message($address, 'normal', NULL, array('body' => htmlentities($this->msg)));
|
||||
}
|
||||
|
||||
sleep(1);
|
||||
@@ -490,7 +492,7 @@ class queue
|
||||
unset($this->queue_data['email']);
|
||||
continue 2;
|
||||
}
|
||||
break;
|
||||
break;
|
||||
|
||||
case 'jabber':
|
||||
if (!$config['jab_enable'])
|
||||
@@ -520,7 +522,8 @@ class queue
|
||||
continue 2;
|
||||
}
|
||||
$this->jabber->send_presence(NULL, NULL, 'online');
|
||||
break;
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
return;
|
||||
@@ -547,14 +550,14 @@ class queue
|
||||
messenger::error('EMAIL', $message);
|
||||
continue 3;
|
||||
}
|
||||
break;
|
||||
break;
|
||||
|
||||
case 'jabber':
|
||||
foreach ($addresses as $address)
|
||||
{
|
||||
$this->jabber->send_message($address, 'normal', NULL, array('body' => $msg));
|
||||
}
|
||||
break;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -572,7 +575,7 @@ class queue
|
||||
// handled, then disconnect
|
||||
sleep(1);
|
||||
$this->jabber->disconnect();
|
||||
break;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -116,7 +116,7 @@ class mcp_logs
|
||||
'TOTAL_LOGS' => ($log_count == 1) ? $user->lang['TOTAL_LOG'] : sprintf($user->lang['TOTAL_LOGS'], $log_count),
|
||||
'PAGINATION' => generate_pagination($this->u_action . "&$u_sort_param", $log_count, $config['topics_per_page'], $start, true),
|
||||
|
||||
'U_POST_ACTION' => "mcp.$phpEx$SID&i=$id&mode=$mode&u=$user_id",
|
||||
'U_POST_ACTION' => $this->u_action,
|
||||
'S_CLEAR_ALLOWED' => ($auth->acl_get('a_clearlogs')) ? true : false,
|
||||
'S_SELECT_SORT_DIR' => $s_sort_dir,
|
||||
'S_SELECT_SORT_KEY' => $s_sort_key,
|
||||
|
@@ -64,7 +64,7 @@ function mcp_notes_user_view($id, $mode, $action)
|
||||
global $template, $db, $user, $auth;
|
||||
|
||||
$user_id = request_var('u', 0);
|
||||
$username = request_var('username', '');
|
||||
$username = request_var('username', '', true);
|
||||
$start = request_var('start', 0);
|
||||
$st = request_var('st', 0);
|
||||
$sk = request_var('sk', 'b');
|
||||
|
@@ -52,7 +52,7 @@ function mcp_post_details($id, $mode, $action)
|
||||
|
||||
case 'chgposter':
|
||||
|
||||
$username = request_var('username', '');
|
||||
$username = request_var('username', '', true);
|
||||
|
||||
$sql = 'SELECT user_id
|
||||
FROM ' . USERS_TABLE . '
|
||||
|
@@ -300,7 +300,7 @@ function mcp_warn_user_view($id, $mode, $action)
|
||||
global $template, $db, $user, $auth;
|
||||
|
||||
$user_id = request_var('u', 0);
|
||||
$username = request_var('username', '');
|
||||
$username = request_var('username', '', true);
|
||||
$notify = (isset($_REQUEST['notify_user'])) ? true : false;
|
||||
$warning = request_var('warning', '', true);
|
||||
|
||||
|
@@ -846,8 +846,8 @@ function handle_message_list_actions(&$address_list, $remove_u, $remove_g, $add_
|
||||
$user_id_ary = array();
|
||||
|
||||
// Build usernames to add
|
||||
$usernames = (isset($_REQUEST['username'])) ? array(request_var('username', '')) : array();
|
||||
$username_list = request_var('username_list', '');
|
||||
$usernames = (isset($_REQUEST['username'])) ? array(request_var('username', '', true)) : array();
|
||||
$username_list = request_var('username_list', '', true);
|
||||
if ($username_list)
|
||||
{
|
||||
$usernames = array_merge($usernames, explode("\n", $username_list));
|
||||
|
@@ -151,7 +151,7 @@ function view_folder($id, $mode, $folder_id, $folder)
|
||||
// Generate all URIs ...
|
||||
$message_author = "<a href=\"{$phpbb_root_path}memberlist.$phpEx$SID&mode=viewprofile&u=" . $row['author_id'] . '">' . $row['username'] . '</a>';
|
||||
$view_message_url = "$url&i=$id&mode=view&f=$folder_id&p=$message_id";
|
||||
$remove_message_url = "$url&i=compose&action=delete&p=$message_id";
|
||||
$remove_message_url = "$url&i=$id&mode=compose&action=delete&p=$message_id";
|
||||
|
||||
$row_indicator = '';
|
||||
foreach ($color_rows as $var)
|
||||
|
@@ -201,10 +201,14 @@ function view_message($id, $mode, $folder_id, $msg_id, $folder, $message_row)
|
||||
'S_DISPLAY_NOTICE' => $display_notice && $message_row['message_attachment'],
|
||||
|
||||
'U_PRINT_PM' => ($config['print_pm'] && $auth->acl_get('u_pm_printpm')) ? "$url&f=$folder_id&p=" . $message_row['msg_id'] . "&view=print" : '',
|
||||
'U_EMAIL_PM' => ($config['email_pm'] && $config['email_enable'] && $auth->acl_get('u_pm_emailpm')) ? 'Email' : '',
|
||||
'U_EMAIL_PM' => ($config['email_pm'] && $config['email_enable'] && $auth->acl_get('u_pm_emailpm')) ? '' : '',
|
||||
'U_FORWARD_PM' => ($config['forward_pm'] && $auth->acl_get('u_pm_forward')) ? "$url&mode=compose&action=forward&f=$folder_id&p=" . $message_row['msg_id'] : '')
|
||||
);
|
||||
|
||||
/**
|
||||
* @todo U_EMAIL_PM add ability to send PM's by email
|
||||
*/
|
||||
|
||||
// Display not already displayed Attachments for this post, we already parsed them. ;)
|
||||
if (isset($attachments) && sizeof($attachments))
|
||||
{
|
||||
|
@@ -341,7 +341,9 @@ class ucp_profile
|
||||
$error = preg_replace('#^([A-Z_]+)$#e', "(!empty(\$user->lang['\\1'])) ? \$user->lang['\\1'] : '\\1'", $error);
|
||||
}
|
||||
|
||||
if (!isset($bday_day))
|
||||
$bday_day = $bday_month = $bday_year = 0;
|
||||
|
||||
if ($user->data['user_birthday'])
|
||||
{
|
||||
list($bday_day, $bday_month, $bday_year) = explode('-', $user->data['user_birthday']);
|
||||
}
|
||||
@@ -476,7 +478,27 @@ class ucp_profile
|
||||
'S_BBCODE_ALLOWED' => $config['allow_sig_bbcode'],
|
||||
'S_SMILIES_ALLOWED' => $config['allow_sig_smilies'],)
|
||||
);
|
||||
break;
|
||||
|
||||
// Build custom bbcodes array
|
||||
$sql = 'SELECT bbcode_id, bbcode_tag
|
||||
FROM ' . BBCODES_TABLE . '
|
||||
WHERE display_on_posting = 1';
|
||||
$result = $db->sql_query($sql);
|
||||
|
||||
$i = 0;
|
||||
while ($row = $db->sql_fetchrow($result))
|
||||
{
|
||||
$template->assign_block_vars('custom_tags', array(
|
||||
'BBCODE_NAME' => "'[{$row['bbcode_tag']}]', '[/" . str_replace('=', '', $row['bbcode_tag']) . "]'",
|
||||
'BBCODE_ID' => 22 + ($i * 2),
|
||||
'BBCODE_TAG' => $row['bbcode_tag'])
|
||||
);
|
||||
|
||||
$i++;
|
||||
}
|
||||
$db->sql_freeresult($result);
|
||||
|
||||
break;
|
||||
|
||||
case 'avatar':
|
||||
|
||||
|
@@ -99,7 +99,7 @@ class ucp_register
|
||||
{
|
||||
foreach ($var_ary as $var => $default)
|
||||
{
|
||||
$$var = request_var($var, $default);
|
||||
$$var = request_var($var, $default, true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -108,7 +108,7 @@ class ucp_register
|
||||
{
|
||||
foreach ($var_ary as $var => $default)
|
||||
{
|
||||
$data[$var] = request_var($var, $default);
|
||||
$data[$var] = request_var($var, $default, true);
|
||||
}
|
||||
|
||||
$var_ary = array(
|
||||
|
@@ -23,7 +23,7 @@ class ucp_remind
|
||||
|
||||
if ($submit)
|
||||
{
|
||||
$username = request_var('username', '');
|
||||
$username = request_var('username', '', true);
|
||||
$email = request_var('email', '');
|
||||
|
||||
$sql = 'SELECT user_id, username, user_email, user_jabber, user_notify_type, user_type, user_lang
|
||||
|
@@ -23,7 +23,7 @@ class ucp_resend
|
||||
|
||||
if ($submit)
|
||||
{
|
||||
$username = request_var('username', '');
|
||||
$username = request_var('username', '', true);
|
||||
$email = request_var('email', '');
|
||||
|
||||
$sql = 'SELECT user_id, username, user_email, user_type, user_lang, user_actkey
|
||||
|
Reference in New Issue
Block a user