Zeile 15 | Zeile 15 |
---|
$templatelist .= ",codebuttons,post_attachments_new,post_attachments,post_savedraftbutton,newreply_modoptions,newreply_threadreview_more,postbit_online,postbit_pm,newreply_disablesmilies_hidden,post_attachments_update"; $templatelist .= ",postbit_warninglevel,postbit_author_user,postbit_edit,postbit_quickdelete,postbit_inlinecheck,postbit_posturl,postbit_quote,postbit_multiquote,newreply_modoptions_close,newreply_modoptions_stick"; $templatelist .= ",post_attachments_attachment_postinsert,post_attachments_attachment_remove,post_attachments_attachment_unapproved,post_attachments_attachment,post_attachments_viewlink,postbit_attachments_attachment,newreply_signature";
|
$templatelist .= ",codebuttons,post_attachments_new,post_attachments,post_savedraftbutton,newreply_modoptions,newreply_threadreview_more,postbit_online,postbit_pm,newreply_disablesmilies_hidden,post_attachments_update"; $templatelist .= ",postbit_warninglevel,postbit_author_user,postbit_edit,postbit_quickdelete,postbit_inlinecheck,postbit_posturl,postbit_quote,postbit_multiquote,newreply_modoptions_close,newreply_modoptions_stick"; $templatelist .= ",post_attachments_attachment_postinsert,post_attachments_attachment_remove,post_attachments_attachment_unapproved,post_attachments_attachment,post_attachments_viewlink,postbit_attachments_attachment,newreply_signature";
|
$templatelist .= ",post_captcha_recaptcha_invisible,post_captcha_hidden,post_captcha,post_captcha_nocaptcha,post_javascript,postbit_groupimage,postbit_attachments,newreply_postoptions";
| $templatelist .= ",post_captcha_recaptcha_invisible,post_captcha_hidden,post_captcha,post_captcha_nocaptcha,post_captcha_hcaptcha_invisible,post_captcha_hcaptcha,post_javascript,postbit_groupimage,postbit_attachments,newreply_postoptions";
|
$templatelist .= ",postbit_rep_button,postbit_author_guest,postbit_signature,postbit_classic,postbit_attachments_thumbnails_thumbnailpostbit_attachments_images_image,postbit_attachments_attachment_unapproved"; $templatelist .= ",postbit_attachments_thumbnails,postbit_attachments_images,postbit_gotopost,forumdisplay_password_wrongpass,forumdisplay_password,posticons_icon,attachment_icon,postbit_reputation_formatted_link"; $templatelist .= ",global_moderation_notice,newreply_disablesmilies,postbit_userstar,newreply_draftinput,postbit_avatar,forumdisplay_rules,postbit_offline,postbit_find,postbit_warninglevel_formatted,postbit_ignored";
| $templatelist .= ",postbit_rep_button,postbit_author_guest,postbit_signature,postbit_classic,postbit_attachments_thumbnails_thumbnailpostbit_attachments_images_image,postbit_attachments_attachment_unapproved"; $templatelist .= ",postbit_attachments_thumbnails,postbit_attachments_images,postbit_gotopost,forumdisplay_password_wrongpass,forumdisplay_password,posticons_icon,attachment_icon,postbit_reputation_formatted_link"; $templatelist .= ",global_moderation_notice,newreply_disablesmilies,postbit_userstar,newreply_draftinput,postbit_avatar,forumdisplay_rules,postbit_offline,postbit_find,postbit_warninglevel_formatted,postbit_ignored";
|
Zeile 24 | Zeile 24 |
---|
require_once "./global.php"; require_once MYBB_ROOT."inc/functions_post.php"; require_once MYBB_ROOT."inc/functions_user.php";
|
require_once "./global.php"; require_once MYBB_ROOT."inc/functions_post.php"; require_once MYBB_ROOT."inc/functions_user.php";
|
| require_once MYBB_ROOT."inc/functions_upload.php";
|
require_once MYBB_ROOT."inc/class_parser.php"; $parser = new postParser;
| require_once MYBB_ROOT."inc/class_parser.php"; $parser = new postParser;
|
Zeile 203 | Zeile 204 |
---|
$errors = array(); $maximageserror = $attacherror = '';
|
$errors = array(); $maximageserror = $attacherror = '';
|
if($mybb->settings['enableattachments'] == 1 && !$mybb->get_input('attachmentaid', MyBB::INPUT_INT) && ($mybb->get_input('newattachment') || $mybb->get_input('updateattachment') || ($mybb->input['action'] == "do_newreply" && $mybb->get_input('submit') && $_FILES['attachment'])))
| if($mybb->settings['enableattachments'] == 1 && ($mybb->get_input('newattachment') || $mybb->get_input('updateattachment') || ((($mybb->input['action'] == "do_newreply" && $mybb->get_input('submit')) || ($mybb->input['action'] == "newreply" && isset($mybb->input['previewpost'])) || isset($mybb->input['savedraft'])) && !empty($_FILES['attachments']))))
|
{ // Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
| { // Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
Zeile 216 | Zeile 217 |
---|
{ $attachwhere = "posthash='".$db->escape_string($mybb->get_input('posthash'))."'"; }
|
{ $attachwhere = "posthash='".$db->escape_string($mybb->get_input('posthash'))."'"; }
|
require_once MYBB_ROOT."inc/functions_upload.php";
| |
$ret = add_attachments($pid, $forumpermissions, $attachwhere, "newreply");
|
$ret = add_attachments($pid, $forumpermissions, $attachwhere, "newreply");
|
if(!empty($ret['errors']))
| if($mybb->get_input('ajax', MyBB::INPUT_INT) == 1) { if(isset($ret['success'])) { $attachment = array('aid'=>'{1}', 'icon'=>'{2}', 'filename'=>'{3}', 'size'=>'{4}'); if($mybb->settings['bbcodeinserter'] != 0 && $forum['allowmycode'] != 0 && $mybb->user['showcodebuttons'] != 0) { eval("\$postinsert = \"".$templates->get("post_attachments_attachment_postinsert")."\";"); } eval("\$attach_rem_options = \"".$templates->get("post_attachments_attachment_remove")."\";"); $attach_mod_options = ''; eval("\$attemplate = \"".$templates->get("post_attachments_attachment")."\";"); $ret['template'] = $attemplate;
$query = $db->simple_select("attachments", "SUM(filesize) AS ausage", "uid='".$mybb->user['uid']."'"); $usage = $db->fetch_array($query); $ret['usage'] = get_friendly_size($usage['ausage']); } header("Content-type: application/json; charset={$lang->settings['charset']}"); echo json_encode($ret); exit(); }
if(!empty($ret['errors']))
|
{ $errors = $ret['errors'];
|
{ $errors = $ret['errors'];
|
}
// If we were dealing with an attachment but didn't click 'Post Reply', force the new reply page again. if(!$mybb->get_input('submit'))
| }
// If we were dealing with an attachment but didn't click 'Post Reply' or 'Save as Draft', force the new reply page again. if(!$mybb->get_input('submit') && !$mybb->get_input('savedraft'))
|
{ eval("\$editdraftpid = \"".$templates->get("newreply_draftinput")."\";"); $mybb->input['action'] = "newreply"; } }
|
{ eval("\$editdraftpid = \"".$templates->get("newreply_draftinput")."\";"); $mybb->input['action'] = "newreply"; } }
|
| detect_attachmentact();
|
// Remove an attachment. if($mybb->settings['enableattachments'] == 1 && $mybb->get_input('attachmentaid', MyBB::INPUT_INT) && $mybb->get_input('attachmentact') == "remove")
|
// Remove an attachment. if($mybb->settings['enableattachments'] == 1 && $mybb->get_input('attachmentaid', MyBB::INPUT_INT) && $mybb->get_input('attachmentact') == "remove")
|
{ // Verify incoming POST request
| { // Verify incoming POST request
|
verify_post_check($mybb->get_input('my_post_key'));
|
verify_post_check($mybb->get_input('my_post_key'));
|
require_once MYBB_ROOT."inc/functions_upload.php";
| |
remove_attachment($pid, $mybb->get_input('posthash'), $mybb->get_input('attachmentaid', MyBB::INPUT_INT));
|
remove_attachment($pid, $mybb->get_input('posthash'), $mybb->get_input('attachmentaid', MyBB::INPUT_INT));
|
|
|
if(!$mybb->get_input('submit'))
|
if(!$mybb->get_input('submit'))
|
{
| {
|
eval("\$editdraftpid = \"".$templates->get("newreply_draftinput")."\";"); $mybb->input['action'] = "newreply";
|
eval("\$editdraftpid = \"".$templates->get("newreply_draftinput")."\";"); $mybb->input['action'] = "newreply";
|
}
| }
|
if($mybb->get_input('ajax', MyBB::INPUT_INT) == 1) {
|
if($mybb->get_input('ajax', MyBB::INPUT_INT) == 1) {
|
| $query = $db->simple_select("attachments", "SUM(filesize) AS ausage", "uid='".$mybb->user['uid']."'"); $usage = $db->fetch_array($query);
|
header("Content-type: application/json; charset={$lang->settings['charset']}");
|
header("Content-type: application/json; charset={$lang->settings['charset']}");
|
echo json_encode(array("success" => true));
| echo json_encode(array("success" => true, "usage" => get_friendly_size($usage['ausage'])));
|
exit(); } }
|
exit(); } }
|
$reply_errors = ''; $quoted_ids = array();
| $reply_errors = $quoted_ids = '';
|
$hide_captcha = false;
|
$hide_captcha = false;
|
|
|
// Check the maximum posts per day for this user
|
// Check the maximum posts per day for this user
|
if($mybb->usergroup['maxposts'] > 0 && $mybb->usergroup['cancp'] != 1) {
| if($mybb->usergroup['maxposts'] > 0) {
|
$daycut = TIME_NOW-60*60*24;
|
$daycut = TIME_NOW-60*60*24;
|
$query = $db->simple_select("posts", "COUNT(*) AS posts_today", "uid='{$mybb->user['uid']}' AND visible='1' AND dateline>{$daycut}");
| $query = $db->simple_select("posts", "COUNT(*) AS posts_today", "uid='{$mybb->user['uid']}' AND visible !='-1' AND dateline>{$daycut}");
|
$post_count = $db->fetch_field($query, "posts_today"); if($post_count >= $mybb->usergroup['maxposts']) { $lang->error_maxposts = $lang->sprintf($lang->error_maxposts, $mybb->usergroup['maxposts']); error($lang->error_maxposts); }
|
$post_count = $db->fetch_field($query, "posts_today"); if($post_count >= $mybb->usergroup['maxposts']) { $lang->error_maxposts = $lang->sprintf($lang->error_maxposts, $mybb->usergroup['maxposts']); error($lang->error_maxposts); }
|
| }
if(!$mybb->settings['postsperpage'] || (int)$mybb->settings['postsperpage'] < 1) { $mybb->settings['postsperpage'] = 20;
|
}
if($mybb->input['action'] == "do_newreply" && $mybb->request_method == "post")
| }
if($mybb->input['action'] == "do_newreply" && $mybb->request_method == "post")
|
Zeile 347 | Zeile 379 |
---|
if(!$mybb->get_input('savedraft')) { $query = $db->simple_select("posts p", "p.pid, p.visible", "{$user_check} AND p.tid='{$thread['tid']}' AND p.subject='".$db->escape_string($mybb->get_input('subject'))."' AND p.message='".$db->escape_string($mybb->get_input('message'))."' AND p.visible > -1 AND p.dateline>".(TIME_NOW-600));
|
if(!$mybb->get_input('savedraft')) { $query = $db->simple_select("posts p", "p.pid, p.visible", "{$user_check} AND p.tid='{$thread['tid']}' AND p.subject='".$db->escape_string($mybb->get_input('subject'))."' AND p.message='".$db->escape_string($mybb->get_input('message'))."' AND p.visible > -1 AND p.dateline>".(TIME_NOW-600));
|
$duplicate_check = $db->fetch_field($query, "pid"); if($duplicate_check)
| if($db->num_rows($query) > 0)
|
{ error($lang->error_post_already_submitted); }
| { error($lang->error_post_already_submitted); }
|
Zeile 373 | Zeile 404 |
---|
);
if(isset($mybb->input['pid']))
|
);
if(isset($mybb->input['pid']))
|
{
| {
|
$post['pid'] = $mybb->get_input('pid', MyBB::INPUT_INT); }
| $post['pid'] = $mybb->get_input('pid', MyBB::INPUT_INT); }
|
Zeile 410 | Zeile 441 |
---|
// Apply moderation options if we have them $post['modoptions'] = $mybb->get_input('modoptions', MyBB::INPUT_ARRAY);
|
// Apply moderation options if we have them $post['modoptions'] = $mybb->get_input('modoptions', MyBB::INPUT_ARRAY);
|
|
|
$posthandler->set_data($post);
// Now let the post handler do all the hard work. $valid_post = $posthandler->validate_post();
|
$posthandler->set_data($post);
// Now let the post handler do all the hard work. $valid_post = $posthandler->validate_post();
|
|
|
$post_errors = array(); // Fetch friendly error messages if this is an invalid post if(!$valid_post) { $post_errors = $posthandler->get_friendly_errors(); }
|
$post_errors = array(); // Fetch friendly error messages if this is an invalid post if(!$valid_post) { $post_errors = $posthandler->get_friendly_errors(); }
|
|
|
// Mark thread as read require_once MYBB_ROOT."inc/functions_indicators.php"; mark_thread_read($tid, $fid);
|
// Mark thread as read require_once MYBB_ROOT."inc/functions_indicators.php"; mark_thread_read($tid, $fid);
|
| $json_data = '';
|
// Check captcha image if($mybb->settings['captchaimage'] && !$mybb->user['uid'])
|
// Check captcha image if($mybb->settings['captchaimage'] && !$mybb->user['uid'])
|
{
| {
|
require_once MYBB_ROOT.'inc/class_captcha.php'; $post_captcha = new captcha(false, "post_captcha");
|
require_once MYBB_ROOT.'inc/class_captcha.php'; $post_captcha = new captcha(false, "post_captcha");
|
|
|
if($post_captcha->validate_captcha() == false)
|
if($post_captcha->validate_captcha() == false)
|
{
| {
|
// CAPTCHA validation failed foreach($post_captcha->get_errors() as $error) { $post_errors[] = $error; }
|
// CAPTCHA validation failed foreach($post_captcha->get_errors() as $error) { $post_errors[] = $error; }
|
}
| }
|
else
|
else
|
{
| {
|
$hide_captcha = true;
|
$hide_captcha = true;
|
}
if($mybb->get_input('ajax', MyBB::INPUT_INT) && $post_captcha->type == 1) {
| }
if($mybb->get_input('ajax', MyBB::INPUT_INT) && $post_captcha->type == 1) {
|
$randomstr = random_str(5); $imagehash = md5(random_str(12));
| $randomstr = random_str(5); $imagehash = md5(random_str(12));
|
Zeile 486 | Zeile 519 |
---|
$postinfo = $posthandler->insert_post(); $pid = $postinfo['pid']; $visible = $postinfo['visible'];
|
$postinfo = $posthandler->insert_post(); $pid = $postinfo['pid']; $visible = $postinfo['visible'];
|
$closed = $postinfo['closed'];
| if(isset($postinfo['closed'])) { $closed = $postinfo['closed']; } else { $closed = ''; }
|
// Invalidate solved captcha if($mybb->settings['captchaimage'] && !$mybb->user['uid'])
| // Invalidate solved captcha if($mybb->settings['captchaimage'] && !$mybb->user['uid'])
|
Zeile 521 | Zeile 562 |
---|
// Mark any quoted posts so they're no longer selected - attempts to maintain those which weren't selected if(isset($mybb->input['quoted_ids']) && isset($mybb->cookies['multiquote']) && $mybb->settings['multiquote'] != 0)
|
// Mark any quoted posts so they're no longer selected - attempts to maintain those which weren't selected if(isset($mybb->input['quoted_ids']) && isset($mybb->cookies['multiquote']) && $mybb->settings['multiquote'] != 0)
|
{
| {
|
// We quoted all posts - remove the entire cookie if($mybb->get_input('quoted_ids') == "all") {
| // We quoted all posts - remove the entire cookie if($mybb->get_input('quoted_ids') == "all") {
|
Zeile 532 | Zeile 573 |
---|
{ $quoted_ids = explode("|", $mybb->get_input('quoted_ids')); $multiquote = explode("|", $mybb->cookies['multiquote']);
|
{ $quoted_ids = explode("|", $mybb->get_input('quoted_ids')); $multiquote = explode("|", $mybb->cookies['multiquote']);
|
if(is_array($multiquote) && is_array($quoted_ids))
| if(!empty($multiquote) && !empty($quoted_ids))
|
{ foreach($multiquote as $key => $quoteid) {
| { foreach($multiquote as $key => $quoteid) {
|
Zeile 543 | Zeile 584 |
---|
} } // Still have an array - set the new cookie
|
} } // Still have an array - set the new cookie
|
if(is_array($multiquote))
| if(!empty($multiquote))
|
{ $new_multiquote = implode(",", $multiquote); my_setcookie("multiquote", $new_multiquote);
| { $new_multiquote = implode(",", $multiquote); my_setcookie("multiquote", $new_multiquote);
|
Zeile 556 | Zeile 597 |
---|
} } }
|
} } }
|
$plugins->run_hooks("newreply_do_newreply_end");
| $plugins->run_hooks("newreply_do_newreply_end");
|
// This was a post made via the ajax quick reply - we need to do some special things here if($mybb->get_input('ajax', MyBB::INPUT_INT)) {
| // This was a post made via the ajax quick reply - we need to do some special things here if($mybb->get_input('ajax', MyBB::INPUT_INT)) {
|
Zeile 575 | Zeile 616 |
---|
if(is_moderator($fid, "canviewdeleted")) { $postcounter += $thread['deletedposts'];
|
if(is_moderator($fid, "canviewdeleted")) { $postcounter += $thread['deletedposts'];
|
}
| }
|
// Was there a new post since we hit the quick reply button? if($mybb->get_input('lastpid', MyBB::INPUT_INT))
|
// Was there a new post since we hit the quick reply button? if($mybb->get_input('lastpid', MyBB::INPUT_INT))
|
{
| {
|
$query = $db->simple_select("posts", "pid", "tid = '{$tid}' AND pid != '{$pid}'", array("order_by" => "pid", "order_dir" => "desc")); $new_post = $db->fetch_array($query); if($new_post['pid'] != $mybb->get_input('lastpid', MyBB::INPUT_INT)) { redirect(get_thread_link($tid, 0, "lastpost")); }
|
$query = $db->simple_select("posts", "pid", "tid = '{$tid}' AND pid != '{$pid}'", array("order_by" => "pid", "order_dir" => "desc")); $new_post = $db->fetch_array($query); if($new_post['pid'] != $mybb->get_input('lastpid', MyBB::INPUT_INT)) { redirect(get_thread_link($tid, 0, "lastpost")); }
|
}
if(!$mybb->settings['postsperpage'] || (int)$mybb->settings['postsperpage'] < 1) { $mybb->settings['postsperpage'] = 20;
| |
}
// Lets see if this post is on the same page as the one we're viewing or not // if it isn't, redirect us
|
}
// Lets see if this post is on the same page as the one we're viewing or not // if it isn't, redirect us
|
if($perpage > 0 && (($postcounter) % $perpage) == 0) { $post_page = ($postcounter) / $mybb->settings['postsperpage']; } else { $post_page = (int)($postcounter / $mybb->settings['postsperpage']) + 1;
| if($mybb->settings['postsperpage'] > 0) { $post_page = ceil(($postcounter + 1) / $mybb->settings['postsperpage']); } else { $post_page = 1;
|
}
if($post_page > $mybb->get_input('from_page', MyBB::INPUT_INT))
| }
if($post_page > $mybb->get_input('from_page', MyBB::INPUT_INT))
|
Zeile 636 | Zeile 672 |
---|
else { $altbg = "trow2";
|
else { $altbg = "trow2";
|
}
| }
|
$charset = "UTF-8"; if($lang->settings['charset']) {
| $charset = "UTF-8"; if($lang->settings['charset']) {
|
Zeile 656 | Zeile 692 |
---|
$data .= "<script type=\"text/javascript\">\n"; $data .= "var hash = document.getElementById('posthash'); if(hash) { hash.value = '{$new_posthash}'; }\n"; $data .= "if(typeof(inlineModeration) != 'undefined') {
|
$data .= "<script type=\"text/javascript\">\n"; $data .= "var hash = document.getElementById('posthash'); if(hash) { hash.value = '{$new_posthash}'; }\n"; $data .= "if(typeof(inlineModeration) != 'undefined') {
|
$('#inlinemod_{$pid}').bind(\"click\", function(e) {
| $('#inlinemod_{$pid}').on(\"click\", function(e) {
|
inlineModeration.checkItem(); }); }\n";
| inlineModeration.checkItem(); }); }\n";
|
Zeile 674 | Zeile 710 |
---|
header("Content-type: application/json; charset={$lang->settings['charset']}"); echo json_encode(array("data" => $data));
|
header("Content-type: application/json; charset={$lang->settings['charset']}"); echo json_encode(array("data" => $data));
|
exit; }
| exit; }
|
// Post is in the moderation queue else {
| // Post is in the moderation queue else {
|
Zeile 700 | Zeile 736 |
---|
$quote_ids = $multiquote_external = ''; // If this isn't a preview and we're not editing a draft, then handle quoted posts
|
$quote_ids = $multiquote_external = ''; // If this isn't a preview and we're not editing a draft, then handle quoted posts
|
if(empty($mybb->input['previewpost']) && !$reply_errors && $mybb->input['action'] != "editdraft" && !$mybb->get_input('attachmentaid', MyBB::INPUT_INT) && !$mybb->get_input('newattachment') && !$mybb->get_input('updateattachment') && !$mybb->get_input('rem'))
| if(empty($mybb->input['previewpost']) && !$reply_errors && $mybb->input['action'] != "editdraft" && !$mybb->get_input('attachmentaid', MyBB::INPUT_INT) && !$mybb->get_input('newattachment') && !$mybb->get_input('updateattachment'))
|
{ $message = ''; $quoted_posts = array();
| { $message = ''; $quoted_posts = array();
|
Zeile 724 | Zeile 760 |
---|
{ $external_quotes = 0; $quoted_posts = implode(",", $quoted_posts);
|
{ $external_quotes = 0; $quoted_posts = implode(",", $quoted_posts);
|
| $quoted_ids = array();
|
$unviewable_forums = get_unviewable_forums(); $inactiveforums = get_inactive_forums(); if($unviewable_forums)
| $unviewable_forums = get_unviewable_forums(); $inactiveforums = get_inactive_forums(); if($unviewable_forums)
|
Zeile 749 | Zeile 786 |
---|
if(!empty($onlyusfids)) { $onlyusforums = "AND ((t.fid IN(".implode(',', $onlyusfids).") AND t.uid='{$mybb->user['uid']}') OR t.fid NOT IN(".implode(',', $onlyusfids)."))";
|
if(!empty($onlyusfids)) { $onlyusforums = "AND ((t.fid IN(".implode(',', $onlyusfids).") AND t.uid='{$mybb->user['uid']}') OR t.fid NOT IN(".implode(',', $onlyusfids)."))";
|
}
| }
|
if(is_moderator($fid, 'canviewunapprove') && is_moderator($fid, 'canviewdeleted')) { $visible_where = "AND p.visible IN (-1,0,1)";
| if(is_moderator($fid, 'canviewunapprove') && is_moderator($fid, 'canviewdeleted')) { $visible_where = "AND p.visible IN (-1,0,1)";
|
Zeile 821 | Zeile 858 |
---|
$multiquote_quote = $lang->multiquote_external_quote; } eval("\$multiquote_external = \"".$templates->get("newreply_multiquote_external")."\";");
|
$multiquote_quote = $lang->multiquote_external_quote; } eval("\$multiquote_external = \"".$templates->get("newreply_multiquote_external")."\";");
|
} if(is_array($quoted_ids) && count($quoted_ids) > 0) { $quoted_ids = implode("|", $quoted_ids); }
| } $quoted_ids = implode("|", $quoted_ids);
|
} }
if(isset($mybb->input['quoted_ids'])) {
|
} }
if(isset($mybb->input['quoted_ids'])) {
|
$quoted_ids = htmlspecialchars_uni($mybb->get_input('quoted_ids', MyBB::INPUT_INT));
| $quoted_ids = htmlspecialchars_uni($mybb->get_input('quoted_ids'));
|
}
if(isset($mybb->input['previewpost']))
| }
if(isset($mybb->input['previewpost']))
|
Zeile 862 | Zeile 896 |
---|
} $subscription_method = get_subscription_method($tid, $postoptions); $subject = $mybb->input['subject'];
|
} $subscription_method = get_subscription_method($tid, $postoptions); $subject = $mybb->input['subject'];
|
}
| }
|
elseif($mybb->input['action'] == "editdraft" && $mybb->user['uid']) { $message = htmlspecialchars_uni($post['message']);
| elseif($mybb->input['action'] == "editdraft" && $mybb->user['uid']) { $message = htmlspecialchars_uni($post['message']);
|
Zeile 972 | Zeile 1006 |
---|
if($post['uid'] == 0) { $valid_username = $posthandler->verify_author();
|
if($post['uid'] == 0) { $valid_username = $posthandler->verify_author();
|
} else
| } else
|
{ $valid_username = true;
|
{ $valid_username = true;
|
}
| }
|
$post_errors = array(); // Fetch friendly error messages if this is an invalid post if(!$valid_post || !$valid_subject || !$valid_username)
|
$post_errors = array(); // Fetch friendly error messages if this is an invalid post if(!$valid_post || !$valid_subject || !$valid_username)
|
{
| {
|
$post_errors = $posthandler->get_friendly_errors();
|
$post_errors = $posthandler->get_friendly_errors();
|
}
| }
|
// One or more errors returned, fetch error list and throw to newreply page if(count($post_errors) > 0) { $reply_errors = inline_error($post_errors);
|
// One or more errors returned, fetch error list and throw to newreply page if(count($post_errors) > 0) { $reply_errors = inline_error($post_errors);
|
} else
| } else
|
{ $quote_ids = htmlspecialchars_uni($mybb->get_input('quote_ids')); $mybb->input['icon'] = $mybb->get_input('icon', MyBB::INPUT_INT);
| { $quote_ids = htmlspecialchars_uni($mybb->get_input('quote_ids')); $mybb->input['icon'] = $mybb->get_input('icon', MyBB::INPUT_INT);
|
Zeile 1026 | Zeile 1060 |
---|
// Fetch attachments assigned to this post. if($mybb->get_input('pid', MyBB::INPUT_INT))
|
// Fetch attachments assigned to this post. if($mybb->get_input('pid', MyBB::INPUT_INT))
|
{
| {
|
$attachwhere = "pid='".$mybb->get_input('pid', MyBB::INPUT_INT)."'"; } else { $attachwhere = "posthash='".$db->escape_string($mybb->get_input('posthash'))."'";
|
$attachwhere = "pid='".$mybb->get_input('pid', MyBB::INPUT_INT)."'"; } else { $attachwhere = "posthash='".$db->escape_string($mybb->get_input('posthash'))."'";
|
}
| }
|
$query = $db->simple_select("attachments", "*", $attachwhere); while($attachment = $db->fetch_array($query)) { $attachcache[0][$attachment['aid']] = $attachment; }
|
$query = $db->simple_select("attachments", "*", $attachwhere); while($attachment = $db->fetch_array($query)) { $attachcache[0][$attachment['aid']] = $attachment; }
|
|
|
$postbit = build_postbit($post, 1); eval("\$preview = \"".$templates->get("previewpost")."\";");
|
$postbit = build_postbit($post, 1); eval("\$preview = \"".$templates->get("previewpost")."\";");
|
} }
| } }
|
$subject = htmlspecialchars_uni($parser->parse_badwords($subject));
$posthash = htmlspecialchars_uni($mybb->get_input('posthash'));
| $subject = htmlspecialchars_uni($parser->parse_badwords($subject));
$posthash = htmlspecialchars_uni($mybb->get_input('posthash'));
|
Zeile 1062 | Zeile 1096 |
---|
if($pid) { $attachwhere = "pid='$pid'";
|
if($pid) { $attachwhere = "pid='$pid'";
|
} else
| } else
|
{ $attachwhere = "posthash='".$db->escape_string($posthash)."'"; }
| { $attachwhere = "posthash='".$db->escape_string($posthash)."'"; }
|
Zeile 1099 | Zeile 1133 |
---|
$usage = $db->fetch_array($query);
if($usage['ausage'] > ($mybb->usergroup['attachquota']*1024) && $mybb->usergroup['attachquota'] != 0)
|
$usage = $db->fetch_array($query);
if($usage['ausage'] > ($mybb->usergroup['attachquota']*1024) && $mybb->usergroup['attachquota'] != 0)
|
{
| {
|
$noshowattach = 1;
|
$noshowattach = 1;
|
}
| }
|
if($mybb->usergroup['attachquota'] == 0)
|
if($mybb->usergroup['attachquota'] == 0)
|
{
| {
|
$friendlyquota = $lang->unlimited; }
|
$friendlyquota = $lang->unlimited; }
|
else { $friendlyquota = get_friendly_size($mybb->usergroup['attachquota']*1024); }
| else { $friendlyquota = get_friendly_size($mybb->usergroup['attachquota']*1024); } $lang->attach_quota = $lang->sprintf($lang->attach_quota, $friendlyquota);
|
|
|
$lang->attach_quota = $lang->sprintf($lang->attach_quota, $friendlyquota);
| $link_viewattachments = '';
|
if($usage['ausage'] !== NULL) { $friendlyusage = get_friendly_size($usage['ausage']); $lang->attach_usage = $lang->sprintf($lang->attach_usage, $friendlyusage); eval("\$link_viewattachments = \"".$templates->get("post_attachments_viewlink")."\";");
|
if($usage['ausage'] !== NULL) { $friendlyusage = get_friendly_size($usage['ausage']); $lang->attach_usage = $lang->sprintf($lang->attach_usage, $friendlyusage); eval("\$link_viewattachments = \"".$templates->get("post_attachments_viewlink")."\";");
|
} else {
| } else {
|
$lang->attach_usage = ""; }
|
$lang->attach_usage = ""; }
|
| $attach_add_options = '';
|
if($mybb->settings['maxattachments'] == 0 || ($mybb->settings['maxattachments'] != 0 && $attachcount < $mybb->settings['maxattachments']) && !$noshowattach) { eval("\$attach_add_options = \"".$templates->get("post_attachments_add")."\";"); }
|
if($mybb->settings['maxattachments'] == 0 || ($mybb->settings['maxattachments'] != 0 && $attachcount < $mybb->settings['maxattachments']) && !$noshowattach) { eval("\$attach_add_options = \"".$templates->get("post_attachments_add")."\";"); }
|
| $attach_update_options = '';
|
if(($mybb->usergroup['caneditattachments'] || $forumpermissions['caneditattachments']) && $attachcount > 0) { eval("\$attach_update_options = \"".$templates->get("post_attachments_update")."\";");
| if(($mybb->usergroup['caneditattachments'] || $forumpermissions['caneditattachments']) && $attachcount > 0) { eval("\$attach_update_options = \"".$templates->get("post_attachments_update")."\";");
|
Zeile 1140 | Zeile 1177 |
---|
}
eval("\$attachbox = \"".$templates->get("post_attachments")."\";");
|
}
eval("\$attachbox = \"".$templates->get("post_attachments")."\";");
|
| } else { $attachbox = '';
|
}
// If the user is logged in, provide a save draft button.
| }
// If the user is logged in, provide a save draft button.
|
Zeile 1166 | Zeile 1207 |
---|
// Generate a hidden list of items for our captcha $captcha = $post_captcha->build_hidden_captcha();
|
// Generate a hidden list of items for our captcha $captcha = $post_captcha->build_hidden_captcha();
|
} }
| } }
|
if(!$correct)
|
if(!$correct)
|
{ if($post_captcha->type == 1) {
| { if($post_captcha->type == captcha::DEFAULT_CAPTCHA) {
|
$post_captcha->build_captcha();
|
$post_captcha->build_captcha();
|
} elseif(in_array($post_captcha->type, array(4, 5)))
| } elseif(in_array($post_captcha->type, array(captcha::NOCAPTCHA_RECAPTCHA, captcha::RECAPTCHA_INVISIBLE, captcha::RECAPTCHA_V3)))
|
{ $post_captcha->build_recaptcha(); }
|
{ $post_captcha->build_recaptcha(); }
|
} else if($correct && (in_array($post_captcha->type, array(4, 5))))
| elseif(in_array($post_captcha->type, array(captcha::HCAPTCHA, captcha::HCAPTCHA_INVISIBLE))) { $post_captcha->build_hcaptcha(); } } else if($correct && (in_array($post_captcha->type, array(captcha::NOCAPTCHA_RECAPTCHA, captcha::RECAPTCHA_INVISIBLE, captcha::RECAPTCHA_V3))))
|
{ $post_captcha->build_recaptcha();
|
{ $post_captcha->build_recaptcha();
|
| } else if($correct && (in_array($post_captcha->type, array(captcha::HCAPTCHA, captcha::HCAPTCHA_INVISIBLE)))) { $post_captcha->build_hcaptcha();
|
}
if($post_captcha->html)
|
}
if($post_captcha->html)
|
{
| {
|
$captcha = $post_captcha->html; } }
|
$captcha = $post_captcha->html; } }
|
|
|
$reviewmore = '';
|
$reviewmore = '';
|
| $threadreview = '';
|
if($mybb->settings['threadreview'] != 0) {
|
if($mybb->settings['threadreview'] != 0) {
|
if(!$mybb->settings['postsperpage'] || (int)$mybb->settings['postsperpage'] < 1) { $mybb->settings['postsperpage'] = 20; }
| |
if(is_moderator($fid, "canviewunapprove") || $mybb->settings['showownunapproved'])
|
if(is_moderator($fid, "canviewunapprove") || $mybb->settings['showownunapproved'])
|
{
| {
|
$visibility = "(visible='1' OR visible='0')"; } else
|
$visibility = "(visible='1' OR visible='0')"; } else
|
{
| {
|
$visibility = "visible='1'";
|
$visibility = "visible='1'";
|
}
| }
|
$query = $db->simple_select("posts", "COUNT(pid) AS post_count", "tid='{$tid}' AND {$visibility}"); $numposts = $db->fetch_field($query, "post_count");
|
$query = $db->simple_select("posts", "COUNT(pid) AS post_count", "tid='{$tid}' AND {$visibility}"); $numposts = $db->fetch_field($query, "post_count");
|
if(!$mybb->settings['postsperpage'] || (int)$mybb->settings['postsperpage'] < 1) { $mybb->settings['postsperpage'] = 20; }
|
|
if($numposts > $mybb->settings['postsperpage']) { $numposts = $mybb->settings['postsperpage']; $lang->thread_review_more = $lang->sprintf($lang->thread_review_more, $mybb->settings['postsperpage'], get_thread_link($tid)); eval("\$reviewmore = \"".$templates->get("newreply_threadreview_more")."\";");
|
if($numposts > $mybb->settings['postsperpage']) { $numposts = $mybb->settings['postsperpage']; $lang->thread_review_more = $lang->sprintf($lang->thread_review_more, $mybb->settings['postsperpage'], get_thread_link($tid)); eval("\$reviewmore = \"".$templates->get("newreply_threadreview_more")."\";");
|
}
$query = $db->simple_select("posts", "pid", "tid='{$tid}' AND {$visibility}", array("order_by" => "dateline", "order_dir" => "desc", "limit" => $mybb->settings['postsperpage'])); while($post = $db->fetch_array($query)) { $pidin[] = $post['pid']; }
$pidin = implode(",", $pidin);
| }
|
|
|
// Fetch attachments $query = $db->simple_select("attachments", "*", "pid IN ($pidin)"); while($attachment = $db->fetch_array($query)) { $attachcache[$attachment['pid']][$attachment['aid']] = $attachment; } $query = $db->query(" SELECT p.*, u.username AS userusername FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."users u ON (p.uid=u.uid) WHERE pid IN ($pidin) ORDER BY dateline DESC "); $postsdone = 0; $altbg = "trow1"; $reviewbits = '';
| $pidin = array(); $query = $db->simple_select("posts", "pid", "tid='{$tid}' AND {$visibility}", array("order_by" => "dateline DESC, pid DESC", "limit" => $mybb->settings['postsperpage']));
|
while($post = $db->fetch_array($query)) {
|
while($post = $db->fetch_array($query)) {
|
if($post['userusername']) { $post['username'] = $post['userusername']; } $reviewpostdate = my_date('relative', $post['dateline']); $parser_options = array( "allow_html" => $forum['allowhtml'], "allow_mycode" => $forum['allowmycode'], "allow_smilies" => $forum['allowsmilies'], "allow_imgcode" => $forum['allowimgcode'], "allow_videocode" => $forum['allowvideocode'], "me_username" => $post['username'], "filter_badwords" => 1 ); if($post['smilieoff'] == 1) { $parser_options['allow_smilies'] = 0; }
| $pidin[] = $post['pid']; }
if(!empty($pidin)) { $pidin = implode(",", $pidin);
|
|
|
if($mybb->user['showimages'] != 1 && $mybb->user['uid'] != 0 || $mybb->settings['guestimages'] != 1 && $mybb->user['uid'] == 0)
| // Fetch attachments $query = $db->simple_select("attachments", "*", "pid IN ($pidin)"); while($attachment = $db->fetch_array($query))
|
{
|
{
|
$parser_options['allow_imgcode'] = 0;
| $attachcache[$attachment['pid']][$attachment['aid']] = $attachment;
|
}
|
}
|
if($mybb->user['showvideos'] != 1 && $mybb->user['uid'] != 0 || $mybb->settings['guestvideos'] != 1 && $mybb->user['uid'] == 0)
| $query = $db->query(" SELECT p.*, u.username AS userusername FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."users u ON (p.uid=u.uid) WHERE pid IN ($pidin) ORDER BY dateline DESC, pid DESC "); $postsdone = 0; $altbg = "trow1"; $reviewbits = ''; while($post = $db->fetch_array($query))
|
{
|
{
|
$parser_options['allow_videocode'] = 0; }
$post['username'] = htmlspecialchars_uni($post['username']);
| if($post['userusername']) { $post['username'] = $post['userusername']; } $reviewpostdate = my_date('relative', $post['dateline']); $parser_options = array( "allow_html" => $forum['allowhtml'], "allow_mycode" => $forum['allowmycode'], "allow_smilies" => $forum['allowsmilies'], "allow_imgcode" => $forum['allowimgcode'], "allow_videocode" => $forum['allowvideocode'], "me_username" => $post['username'], "filter_badwords" => 1 ); if($post['smilieoff'] == 1) { $parser_options['allow_smilies'] = 0; }
if($mybb->user['uid'] != 0 && $mybb->user['showimages'] != 1 || $mybb->settings['guestimages'] != 1 && $mybb->user['uid'] == 0) { $parser_options['allow_imgcode'] = 0; }
if($mybb->user['uid'] != 0 && $mybb->user['showvideos'] != 1 || $mybb->settings['guestvideos'] != 1 && $mybb->user['uid'] == 0) { $parser_options['allow_videocode'] = 0; }
$post['username'] = htmlspecialchars_uni($post['username']);
if($post['visible'] != 1) { $altbg = "trow_shaded"; }
|
|
|
if($post['visible'] != 1) { $altbg = "trow_shaded"; }
| $plugins->run_hooks("newreply_threadreview_post");
|
|
|
$post['message'] = $parser->parse_message($post['message'], $parser_options); get_post_attachments($post['pid'], $post); $reviewmessage = $post['message']; eval("\$reviewbits .= \"".$templates->get("newreply_threadreview_post")."\";"); if($altbg == "trow1") { $altbg = "trow2"; } else { $altbg = "trow1";
| $post['message'] = $parser->parse_message($post['message'], $parser_options); get_post_attachments($post['pid'], $post); $reviewmessage = $post['message']; eval("\$reviewbits .= \"".$templates->get("newreply_threadreview_post")."\";"); if($altbg == "trow1") { $altbg = "trow2"; } else { $altbg = "trow1"; }
|
}
|
}
|
| eval("\$threadreview = \"".$templates->get("newreply_threadreview")."\";");
|
}
|
}
|
eval("\$threadreview = \"".$templates->get("newreply_threadreview")."\";");
| |
}
// Hide signature option if no permission
| }
// Hide signature option if no permission
|
Zeile 1459 | Zeile 1505 |
---|
} }
|
} }
|
$php_max_upload_filesize = return_bytes(ini_get('max_upload_filesize')); $php_post_max_size = return_bytes(ini_get('post_max_size'));
if ($php_max_upload_filesize != 0 && $php_post_max_size != 0) { $php_max_upload_size = min($php_max_upload_filesize, $php_post_max_size); } else { $php_max_upload_size = max($php_max_upload_filesize, $php_post_max_size); }
| $php_max_upload_size = get_php_upload_limit();
|
$php_max_file_uploads = (int)ini_get('max_file_uploads'); eval("\$post_javascript = \"".$templates->get("post_javascript")."\";");
| $php_max_file_uploads = (int)ini_get('max_file_uploads'); eval("\$post_javascript = \"".$templates->get("post_javascript")."\";");
|