Zeile 222 | Zeile 222 |
---|
if($mybb->input['action'] == "get_users") { $mybb->input['query'] = ltrim($mybb->get_input('query'));
|
if($mybb->input['action'] == "get_users") { $mybb->input['query'] = ltrim($mybb->get_input('query'));
|
| $search_type = $mybb->get_input('search_type', MyBB::INPUT_INT); // 0: contains, 1: starts with, 2: ends with
|
// If the string is less than 2 characters, quit. if(my_strlen($mybb->input['query']) < 2)
| // If the string is less than 2 characters, quit. if(my_strlen($mybb->input['query']) < 2)
|
Zeile 251 | Zeile 252 |
---|
$plugins->run_hooks("xmlhttp_get_users_start");
|
$plugins->run_hooks("xmlhttp_get_users_start");
|
$query = $db->simple_select("users", "uid, username", "username LIKE '".$db->escape_string_like($mybb->input['query'])."%'", $query_options); if($limit == 1)
| $likestring = $db->escape_string_like($mybb->input['query']); if($search_type == 1) { $likestring .= '%'; } elseif($search_type == 2) { $likestring = '%'.$likestring; } else { $likestring = '%'.$likestring.'%'; }
$query = $db->simple_select("users", "uid, username", "username LIKE '{$likestring}'", $query_options); if($limit == 1)
|
{ $user = $db->fetch_array($query);
|
{ $user = $db->fetch_array($query);
|
$data = array('id' => $user['username'], 'text' => $user['username']);
| $data = array('uid' => $user['uid'], 'id' => $user['username'], 'text' => $user['username']);
|
} else { $data = array(); while($user = $db->fetch_array($query))
|
} else { $data = array(); while($user = $db->fetch_array($query))
|
{ $data[] = array('id' => $user['username'], 'text' => $user['username']); } }
| { $data[] = array('uid' => $user['uid'], 'id' => $user['username'], 'text' => $user['username']); } }
|
$plugins->run_hooks("xmlhttp_get_users_end");
echo json_encode($data);
| $plugins->run_hooks("xmlhttp_get_users_end");
echo json_encode($data);
|
Zeile 288 | Zeile 303 |
---|
if(!$thread) { xmlhttp_error($lang->thread_doesnt_exist);
|
if(!$thread) { xmlhttp_error($lang->thread_doesnt_exist);
|
}
| }
|
// Fetch some of the information from the first post of this thread. $query_options = array( "order_by" => "dateline",
| // Fetch some of the information from the first post of this thread. $query_options = array( "order_by" => "dateline",
|
Zeile 301 | Zeile 316 |
---|
else { exit;
|
else { exit;
|
}
| }
|
// Fetch the specific forum this thread/post is in. $forum = get_forum($thread['fid']);
| // Fetch the specific forum this thread/post is in. $forum = get_forum($thread['fid']);
|
Zeile 337 | Zeile 352 |
---|
xmlhttp_error($lang->edit_time_limit); } $ismod = false;
|
xmlhttp_error($lang->edit_time_limit); } $ismod = false;
|
}
| }
|
else
|
else
|
{
| {
|
$ismod = true; } $subject = $mybb->get_input('value');
| $ismod = true; } $subject = $mybb->get_input('value');
|
Zeile 348 | Zeile 363 |
---|
if(function_exists("iconv")) { $subject = iconv($charset, "UTF-8//IGNORE", $subject);
|
if(function_exists("iconv")) { $subject = iconv($charset, "UTF-8//IGNORE", $subject);
|
} else if(function_exists("mb_convert_encoding"))
| } else if(function_exists("mb_convert_encoding"))
|
{ $subject = @mb_convert_encoding($subject, $charset, "UTF-8"); }
| { $subject = @mb_convert_encoding($subject, $charset, "UTF-8"); }
|
Zeile 421 | Zeile 436 |
---|
$post = get_post($mybb->get_input('pid', MyBB::INPUT_INT));
// No result, die.
|
$post = get_post($mybb->get_input('pid', MyBB::INPUT_INT));
// No result, die.
|
if(!$post)
| if(!$post || $post['visible'] == -1)
|
{ xmlhttp_error($lang->post_doesnt_exist); }
| { xmlhttp_error($lang->post_doesnt_exist); }
|
Zeile 468 | Zeile 483 |
---|
$lang->edit_time_limit = $lang->sprintf($lang->edit_time_limit, $mybb->usergroup['edittimelimit']); xmlhttp_error($lang->edit_time_limit); }
|
$lang->edit_time_limit = $lang->sprintf($lang->edit_time_limit, $mybb->usergroup['edittimelimit']); xmlhttp_error($lang->edit_time_limit); }
|
// User can't edit unapproved post if($post['visible'] == 0)
| // User can't edit unapproved post unless permitted for own if($post['visible'] == 0 && !($mybb->settings['showownunapproved'] && $post['uid'] == $mybb->user['uid']))
|
{ xmlhttp_error($lang->post_moderation); }
| { xmlhttp_error($lang->post_moderation); }
|
Zeile 543 | Zeile 558 |
---|
xmlhttp_error($post_errors); } // No errors were found, we can call the update method.
|
xmlhttp_error($post_errors); } // No errors were found, we can call the update method.
|
else
| else
|
{ $postinfo = $posthandler->update_post(); $visible = $postinfo['visible'];
| { $postinfo = $posthandler->update_post(); $visible = $postinfo['visible'];
|
Zeile 553 | Zeile 568 |
---|
if($thread['firstpost'] == $post['pid']) { echo json_encode(array("moderation_thread" => $lang->thread_moderation, 'url' => $mybb->settings['bburl'].'/'.get_forum_link($thread['fid']), "message" => $post['message']));
|
if($thread['firstpost'] == $post['pid']) { echo json_encode(array("moderation_thread" => $lang->thread_moderation, 'url' => $mybb->settings['bburl'].'/'.get_forum_link($thread['fid']), "message" => $post['message']));
|
exit; }
| exit; }
|
else { echo json_encode(array("moderation_post" => $lang->post_moderation, 'url' => $mybb->settings['bburl'].'/'.get_thread_link($thread['tid']), "message" => $post['message']));
| else { echo json_encode(array("moderation_post" => $lang->post_moderation, 'url' => $mybb->settings['bburl'].'/'.get_thread_link($thread['tid']), "message" => $post['message']));
|
Zeile 562 | Zeile 577 |
---|
} } }
|
} } }
|
|
|
require_once MYBB_ROOT."inc/class_parser.php";
|
require_once MYBB_ROOT."inc/class_parser.php";
|
$parser = new postParser;
| $parser = new postParser;
|
$parser_options = array( "allow_html" => $forum['allowhtml'], "allow_mycode" => $forum['allowmycode'],
| $parser_options = array( "allow_html" => $forum['allowhtml'], "allow_mycode" => $forum['allowmycode'],
|
Zeile 577 | Zeile 592 |
---|
);
$post['username'] = htmlspecialchars_uni($post['username']);
|
);
$post['username'] = htmlspecialchars_uni($post['username']);
|
|
|
if($post['smilieoff'] == 1) { $parser_options['allow_smilies'] = 0;
| if($post['smilieoff'] == 1) { $parser_options['allow_smilies'] = 0;
|
Zeile 600 | Zeile 615 |
---|
{ $query = $db->simple_select("attachments", "*", "pid='{$post['pid']}'"); while($attachment = $db->fetch_array($query))
|
{ $query = $db->simple_select("attachments", "*", "pid='{$post['pid']}'"); while($attachment = $db->fetch_array($query))
|
{
| {
|
$attachcache[$attachment['pid']][$attachment['aid']] = $attachment; }
| $attachcache[$attachment['pid']][$attachment['aid']] = $attachment; }
|
Zeile 635 | Zeile 650 |
---|
if($editedmsg) { $editedmsg_response = str_replace(array("\r", "\n"), "", $editedmsg);
|
if($editedmsg) { $editedmsg_response = str_replace(array("\r", "\n"), "", $editedmsg);
|
}
$plugins->run_hooks("xmlhttp_update_post");
| }
$plugins->run_hooks("xmlhttp_update_post");
|
echo json_encode(array("message" => $post['message']."\n", "editedmsg" => $editedmsg_response)); exit; }
| echo json_encode(array("message" => $post['message']."\n", "editedmsg" => $editedmsg_response)); exit; }
|
Zeile 648 | Zeile 663 |
---|
{ // If the cookie does not exist, exit if(!array_key_exists("multiquote", $mybb->cookies))
|
{ // If the cookie does not exist, exit if(!array_key_exists("multiquote", $mybb->cookies))
|
{ exit; }
| { exit; }
|
// Divide up the cookie using our delimeter $multiquoted = explode("|", $mybb->cookies['multiquote']);
| // Divide up the cookie using our delimeter $multiquoted = explode("|", $mybb->cookies['multiquote']);
|
Zeile 682 | Zeile 697 |
---|
{ $inactiveforums = "AND t.fid NOT IN ({$inactiveforums})"; }
|
{ $inactiveforums = "AND t.fid NOT IN ({$inactiveforums})"; }
|
| // Check group permissions if we can't view threads not started by us $group_permissions = forum_permissions(); $onlyusfids = array(); foreach($group_permissions as $gpfid => $forum_permissions) { if(isset($forum_permissions['canonlyviewownthreads']) && $forum_permissions['canonlyviewownthreads'] == 1) { $onlyusfids[] = $gpfid; } }
|
$message = '';
// Are we loading all quoted posts or only those not in the current thread? if(empty($mybb->input['load_all']))
|
$message = '';
// Are we loading all quoted posts or only those not in the current thread? if(empty($mybb->input['load_all']))
|
{
| {
|
$from_tid = "p.tid != '".$mybb->get_input('tid', MyBB::INPUT_INT)."' AND ";
|
$from_tid = "p.tid != '".$mybb->get_input('tid', MyBB::INPUT_INT)."' AND ";
|
}
| }
|
else { $from_tid = '';
| else { $from_tid = '';
|
Zeile 698 | Zeile 725 |
---|
$parser = new postParser;
require_once MYBB_ROOT."inc/functions_posting.php";
|
$parser = new postParser;
require_once MYBB_ROOT."inc/functions_posting.php";
|
|
|
$plugins->run_hooks("xmlhttp_get_multiquoted_intermediate");
// Query for any posts in the list which are not within the specified thread $query = $db->query("
|
$plugins->run_hooks("xmlhttp_get_multiquoted_intermediate");
// Query for any posts in the list which are not within the specified thread $query = $db->query("
|
SELECT p.subject, p.message, p.pid, p.tid, p.username, p.dateline, t.fid, p.visible, u.username AS userusername
| SELECT p.subject, p.message, p.pid, p.tid, p.username, p.dateline, t.fid, t.uid AS thread_uid, p.visible, u.username AS userusername
|
FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid) LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=p.uid)
| FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid) LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=p.uid)
|
Zeile 711 | Zeile 738 |
---|
ORDER BY p.dateline "); while($quoted_post = $db->fetch_array($query))
|
ORDER BY p.dateline "); while($quoted_post = $db->fetch_array($query))
|
{ if(!is_moderator($quoted_post['fid'], "canviewunapprove") && $quoted_post['visible'] == 0)
| { if( (!is_moderator($quoted_post['fid'], "canviewunapprove") && $quoted_post['visible'] == 0) || (!is_moderator($quoted_post['fid'], "canviewdeleted") && $quoted_post['visible'] == -1) || (in_array($quoted_post['fid'], $onlyusfids) && (!$mybb->user['uid'] || $quoted_post['thread_uid'] != $mybb->user['uid'])) )
|
{
|
{
|
continue;
| // Allow quoting from own unapproved post if($quoted_post['visible'] == 0 && !($mybb->settings['showownunapproved'] && $quoted_post['uid'] == $mybb->user['uid'])) { continue; }
|
}
$message .= parse_quoted_message($quoted_post, false);
| }
$message .= parse_quoted_message($quoted_post, false);
|
Zeile 736 | Zeile 771 |
---|
{ $imagehash = $db->escape_string($mybb->get_input('imagehash')); $query = $db->simple_select("captcha", "dateline", "imagehash='$imagehash'");
|
{ $imagehash = $db->escape_string($mybb->get_input('imagehash')); $query = $db->simple_select("captcha", "dateline", "imagehash='$imagehash'");
|
if($db->num_rows($query) == 0) {
| if($db->num_rows($query) == 0) {
|
xmlhttp_error($lang->captcha_not_exists); } $db->delete_query("captcha", "imagehash='$imagehash'");
| xmlhttp_error($lang->captcha_not_exists); } $db->delete_query("captcha", "imagehash='$imagehash'");
|
Zeile 761 | Zeile 796 |
---|
header("Content-type: application/json; charset={$charset}"); $imagehash = $db->escape_string($mybb->get_input('imagehash')); $query = $db->simple_select("captcha", "imagestring", "imagehash='$imagehash'");
|
header("Content-type: application/json; charset={$charset}"); $imagehash = $db->escape_string($mybb->get_input('imagehash')); $query = $db->simple_select("captcha", "imagestring", "imagehash='$imagehash'");
|
if($db->num_rows($query) == 0)
| if($db->num_rows($query) == 0)
|
{ echo json_encode($lang->captcha_valid_not_exists); exit;
| { echo json_encode($lang->captcha_valid_not_exists); exit;
|
Zeile 783 | Zeile 818 |
---|
} } else if($mybb->input['action'] == "refresh_question" && $mybb->settings['securityquestion'])
|
} } else if($mybb->input['action'] == "refresh_question" && $mybb->settings['securityquestion'])
|
{ header("Content-type: application/json; charset={$charset}");
| { header("Content-type: application/json; charset={$charset}");
|
$sid = $db->escape_string($mybb->get_input('question_id')); $query = $db->query(" SELECT q.qid, s.sid
| $sid = $db->escape_string($mybb->get_input('question_id')); $query = $db->query(" SELECT q.qid, s.sid
|
Zeile 795 | Zeile 830 |
---|
");
if($db->num_rows($query) == 0)
|
");
if($db->num_rows($query) == 0)
|
{ xmlhttp_error($lang->answer_valid_not_exists); }
| { xmlhttp_error($lang->answer_valid_not_exists); }
|
$qsession = $db->fetch_array($query);
| $qsession = $db->fetch_array($query);
|
Zeile 815 | Zeile 850 |
---|
");
$plugins->run_hooks("xmlhttp_refresh_question");
|
");
$plugins->run_hooks("xmlhttp_refresh_question");
|
| require_once MYBB_ROOT."inc/class_parser.php"; $parser = new postParser; $parser_options = array( "allow_html" => 0, "allow_mycode" => 1, "allow_smilies" => 1, "allow_imgcode" => 1, "allow_videocode" => 1, "filter_badwords" => 1, "me_username" => 0, "shorten_urls" => 0, "highlight" => 0, );
|
if($db->num_rows($query) > 0) { $question = $db->fetch_array($query);
|
if($db->num_rows($query) > 0) { $question = $db->fetch_array($query);
|
echo json_encode(array("question" => htmlspecialchars_uni($question['question']), 'sid' => htmlspecialchars_uni($question['sid'])));
| echo json_encode(array("question" => $parser->parse_message($question['question'], $parser_options), 'sid' => htmlspecialchars_uni($question['sid'])));
|
exit;
|
exit;
|
}
| }
|
else { xmlhttp_error($lang->answer_valid_not_exists);
| else { xmlhttp_error($lang->answer_valid_not_exists);
|
Zeile 833 | Zeile 883 |
---|
header("Content-type: application/json; charset={$charset}"); $sid = $db->escape_string($mybb->get_input('question')); $answer = $db->escape_string($mybb->get_input('answer'));
|
header("Content-type: application/json; charset={$charset}"); $sid = $db->escape_string($mybb->get_input('question')); $answer = $db->escape_string($mybb->get_input('answer'));
|
|
|
$query = $db->query(" SELECT q.*, s.sid FROM ".TABLE_PREFIX."questionsessions s
| $query = $db->query(" SELECT q.*, s.sid FROM ".TABLE_PREFIX."questionsessions s
|
Zeile 844 | Zeile 894 |
---|
if($db->num_rows($query) == 0) { echo json_encode($lang->answer_valid_not_exists);
|
if($db->num_rows($query) == 0) { echo json_encode($lang->answer_valid_not_exists);
|
exit;
| exit;
|
} else {
| } else {
|
Zeile 902 | Zeile 952 |
---|
if(!verify_post_check($mybb->get_input('my_post_key'), true)) { xmlhttp_error($lang->invalid_post_code);
|
if(!verify_post_check($mybb->get_input('my_post_key'), true)) { xmlhttp_error($lang->invalid_post_code);
|
}
| }
|
require_once MYBB_ROOT."inc/functions_user.php"; $username = $mybb->get_input('username');
|
require_once MYBB_ROOT."inc/functions_user.php"; $username = $mybb->get_input('username');
|
|
|
// Fix bad characters $username = trim_blank_chrs($username); $username = str_replace(array(unichr(160), unichr(173), unichr(0xCA), dec_to_utf8(8238), dec_to_utf8(8237), dec_to_utf8(8203)), array(" ", "-", "", "", "", ""), $username);
| // Fix bad characters $username = trim_blank_chrs($username); $username = str_replace(array(unichr(160), unichr(173), unichr(0xCA), dec_to_utf8(8238), dec_to_utf8(8237), dec_to_utf8(8203)), array(" ", "-", "", "", "", ""), $username);
|
Zeile 915 | Zeile 965 |
---|
$username = preg_replace("#\s{2,}#", " ", $username);
header("Content-type: application/json; charset={$charset}");
|
$username = preg_replace("#\s{2,}#", " ", $username);
header("Content-type: application/json; charset={$charset}");
|
|
|
if(empty($username))
|
if(empty($username))
|
{
| {
|
echo json_encode($lang->banned_characters_username);
|
echo json_encode($lang->banned_characters_username);
|
exit; }
| exit; }
|
// Check if the username belongs to the list of banned usernames. $banned_username = is_banned_username($username, true); if($banned_username) { echo json_encode($lang->banned_username);
|
// Check if the username belongs to the list of banned usernames. $banned_username = is_banned_username($username, true); if($banned_username) { echo json_encode($lang->banned_username);
|
exit; }
| exit; }
|
// Check for certain characters in username (<, >, &, and slashes) if(strpos($username, "<") !== false || strpos($username, ">") !== false || strpos($username, "&") !== false || my_strpos($username, "\\") !== false || strpos($username, ";") !== false || strpos($username, ",") !== false || !validate_utf8_string($username, false, false)) {
| // Check for certain characters in username (<, >, &, and slashes) if(strpos($username, "<") !== false || strpos($username, ">") !== false || strpos($username, "&") !== false || my_strpos($username, "\\") !== false || strpos($username, ";") !== false || strpos($username, ",") !== false || !validate_utf8_string($username, false, false)) {
|
Zeile 941 | Zeile 991 |
---|
$user = get_user_by_username($username);
$plugins->run_hooks("xmlhttp_username_availability");
|
$user = get_user_by_username($username);
$plugins->run_hooks("xmlhttp_username_availability");
|
|
|
if($user['uid'])
|
if($user['uid'])
|
{
| {
|
$lang->username_taken = $lang->sprintf($lang->username_taken, htmlspecialchars_uni($username)); echo json_encode($lang->username_taken);
|
$lang->username_taken = $lang->sprintf($lang->username_taken, htmlspecialchars_uni($username)); echo json_encode($lang->username_taken);
|
exit; }
| exit; }
|
else { //$lang->username_available = $lang->sprintf($lang->username_available, htmlspecialchars_uni($username));
|
else { //$lang->username_available = $lang->sprintf($lang->username_available, htmlspecialchars_uni($username));
|
echo json_encode("true"); exit; }
| echo json_encode("true"); exit; }
|
}
|
}
|
else if($mybb->input['action'] == "username_exists")
| else if($mybb->input['action'] == "email_availability")
|
{ if(!verify_post_check($mybb->get_input('my_post_key'), true)) { xmlhttp_error($lang->invalid_post_code); }
|
{ if(!verify_post_check($mybb->get_input('my_post_key'), true)) { xmlhttp_error($lang->invalid_post_code); }
|
require_once MYBB_ROOT."inc/functions_user.php"; $username = $mybb->get_input('value');
header("Content-type: application/json; charset={$charset}");
| require_once MYBB_ROOT."inc/datahandlers/user.php"; $userhandler = new UserDataHandler("insert");
$email = $mybb->get_input('email');
|
|
|
if(!trim($username)) { echo json_encode(array("success" => 1)); exit; }
// Check if the username actually exists $user = get_user_by_username($username);
$plugins->run_hooks("xmlhttp_username_exists");
if($user['uid']) { $lang->valid_username = $lang->sprintf($lang->valid_username, htmlspecialchars_uni($username)); echo json_encode(array("success" => $lang->valid_username)); exit; } else { $lang->invalid_username = $lang->sprintf($lang->invalid_username, htmlspecialchars_uni($username)); echo json_encode($lang->invalid_username);
| header("Content-type: application/json; charset={$charset}");
$user = array( 'email' => $email );
$userhandler->set_data($user);
$errors = array();
if(!$userhandler->verify_email()) { $errors = $userhandler->get_friendly_errors(); }
$plugins->run_hooks("xmlhttp_email_availability");
if(!empty($errors)) { echo json_encode($errors[0]); exit; } else { echo json_encode("true");
|
exit; } }
| exit; } }
|
Zeile 1035 | Zeile 1089 |
---|
{ xmlhttp_error($lang->buddylist_error); }
|
{ xmlhttp_error($lang->buddylist_error); }
|
| } else if($mybb->input['action'] == 'get_referrals') { $lang->load('member'); $uid = $mybb->get_input('uid', MYBB::INPUT_INT);
if (!$uid) { xmlhttp_error($lang->referrals_no_user_specified); }
$referrals = get_user_referrals($uid);
if (empty($referrals)) { eval("\$referral_rows = \"".$templates->get('member_no_referrals')."\";"); } else { foreach($referrals as $referral) { $bg_color = alt_trow(); // Format user name link $username = htmlspecialchars_uni($referral['username']); $username = format_name($username, $referral['usergroup'], $referral['displaygroup']); $username = build_profile_link($username, $referral['uid']);
$regdate = my_date('normal', $referral['regdate']);
eval("\$referral_rows .= \"".$templates->get('member_referral_row')."\";"); } }
$plugins->run_hooks('xmlhttp_referrals_end');
eval("\$referrals = \"".$templates->get('member_referrals_popup', 1, 0)."\";");
// Send our headers and output. header("Content-type: text/plain; charset={$charset}"); echo $referrals;
|
}
/**
| }
/**
|