Zeile 11 | Zeile 11 |
---|
define("IN_MYBB", 1); define('THIS_SCRIPT', 'warnings.php');
|
define("IN_MYBB", 1); define('THIS_SCRIPT', 'warnings.php');
|
$templatelist = "warnings,warnings_warn_post,warnings_active_header,warnings_expired_header,warnings_warning,warnings_warn_existing,warnings_warn_type,warnings_warn_custom,warnings_warn_pm"; $templatelist .= ",warnings_view_post,warnings_view_user,warnings_view_revoke,warnings_view_revoked,smilieinsert_getmore,smilieinsert_smilie,smilieinsert_smilie_empty,smilieinsert,warnings_warn_type_result"; $templatelist .= ",multipage,multipage_end,multipage_jump_page,multipage_nextpage,multipage_page,multipage_page_current,multipage_page_link_current,multipage_prevpage,multipage_start,warnings_no_warnings,codebuttons,warnings_warn,warnings_view,warnings_warn_pm_anonymous";
| $templatelist = "warnings,warnings_warn_post,warnings_active_header,warnings_expired_header,warnings_warning,warnings_warn_existing,warnings_warn_type,warnings_warn_custom,warnings_warn_pm,warnings_view"; $templatelist .= ",warnings_view_post,warnings_view_user,warnings_view_revoke,warnings_view_revoked,warnings_warn_type_result,warnings_postlink,codebuttons,warnings_warn,warnings_warn_pm_anonymous"; $templatelist .= ",multipage,multipage_end,multipage_jump_page,multipage_nextpage,multipage_page,multipage_page_current,multipage_page_link_current,multipage_prevpage,multipage_start,warnings_no_warnings";
|
require_once "./global.php"; require_once MYBB_ROOT."inc/functions_warnings.php";
| require_once "./global.php"; require_once MYBB_ROOT."inc/functions_warnings.php";
|
Zeile 22 | Zeile 22 |
---|
$parser = new postParser;
$lang->load("warnings");
|
$parser = new postParser;
$lang->load("warnings");
|
| $lang->load("datahandler_warnings");
|
if($mybb->settings['enablewarningsystem'] == 0) {
| if($mybb->settings['enablewarningsystem'] == 0) {
|
Zeile 51 | Zeile 52 |
---|
$user = get_user($mybb->get_input('uid', MyBB::INPUT_INT));
|
$user = get_user($mybb->get_input('uid', MyBB::INPUT_INT));
|
if(!$user['uid'])
| if(!$user)
|
{ error($lang->error_invalid_user); }
| { error($lang->error_invalid_user); }
|
Zeile 86 | Zeile 87 |
---|
$warning['pid'] = $mybb->get_input('pid', MyBB::INPUT_INT);
$post = get_post($warning['pid']);
|
$warning['pid'] = $mybb->get_input('pid', MyBB::INPUT_INT);
$post = get_post($warning['pid']);
|
|
|
$forum_permissions = forum_permissions($post['fid']);
if($forum_permissions['canview'] != 1)
| $forum_permissions = forum_permissions($post['fid']);
if($forum_permissions['canview'] != 1)
|
Zeile 115 | Zeile 116 |
---|
if($mybb->settings['allowanonwarningpms'] == 1 && $mybb->get_input('pm_anonymous', MyBB::INPUT_INT)) { $sender_uid = -1;
|
if($mybb->settings['allowanonwarningpms'] == 1 && $mybb->get_input('pm_anonymous', MyBB::INPUT_INT)) { $sender_uid = -1;
|
| // Workaround for eliminating PHP warnings in PHP 8. Ref: https://github.com/mybb/mybb/issues/4630#issuecomment-1369144163 $pm['sender']['uid'] = -1;
|
}
// Some kind of friendly error notification
| }
// Some kind of friendly error notification
|
Zeile 123 | Zeile 126 |
---|
$warningshandler->friendly_action .= $lang->redirect_warned_pmerror; } }
|
$warningshandler->friendly_action .= $lang->redirect_warned_pmerror; } }
|
|
|
$plugins->run_hooks("warnings_do_warn_end");
$lang->redirect_warned = $lang->sprintf($lang->redirect_warned, htmlspecialchars_uni($user['username']), $warningshandler->new_warning_level, $warningshandler->friendly_action);
| $plugins->run_hooks("warnings_do_warn_end");
$lang->redirect_warned = $lang->sprintf($lang->redirect_warned, htmlspecialchars_uni($user['username']), $warningshandler->new_warning_level, $warningshandler->friendly_action);
|
Zeile 142 | Zeile 145 |
---|
$warn_errors = $warningshandler->get_friendly_errors(); $warn_errors = inline_error($warn_errors); $mybb->input['action'] = 'warn';
|
$warn_errors = $warningshandler->get_friendly_errors(); $warn_errors = inline_error($warn_errors); $mybb->input['action'] = 'warn';
|
} }
| } }
|
// Warn a user if($mybb->input['action'] == "warn")
| // Warn a user if($mybb->input['action'] == "warn")
|
Zeile 155 | Zeile 158 |
---|
// Check we haven't exceeded the maximum number of warnings per day if($mybb->usergroup['maxwarningsday'] != 0)
|
// Check we haven't exceeded the maximum number of warnings per day if($mybb->usergroup['maxwarningsday'] != 0)
|
{
| {
|
$timecut = TIME_NOW-60*60*24; $query = $db->simple_select("warnings", "COUNT(wid) AS given_today", "issuedby='{$mybb->user['uid']}' AND dateline>'$timecut'"); $given_today = $db->fetch_field($query, "given_today"); if($given_today >= $mybb->usergroup['maxwarningsday']) {
|
$timecut = TIME_NOW-60*60*24; $query = $db->simple_select("warnings", "COUNT(wid) AS given_today", "issuedby='{$mybb->user['uid']}' AND dateline>'$timecut'"); $given_today = $db->fetch_field($query, "given_today"); if($given_today >= $mybb->usergroup['maxwarningsday']) {
|
error($lang->sprintf($lang->reached_max_warnings_day, $mybb->usergroup['maxwarningsday']));
| error($lang->sprintf($lang->warnings_reached_max_warnings_day, $mybb->usergroup['maxwarningsday']));
|
} }
$user = get_user($mybb->get_input('uid', MyBB::INPUT_INT)); if(!$user)
|
} }
$user = get_user($mybb->get_input('uid', MyBB::INPUT_INT)); if(!$user)
|
{
| {
|
error($lang->error_invalid_user);
|
error($lang->error_invalid_user);
|
}
| }
|
if($user['uid'] == $mybb->user['uid']) {
|
if($user['uid'] == $mybb->user['uid']) {
|
error($lang->cannot_warn_self); }
if($user['warningpoints'] >= $mybb->settings['maxwarningpoints']) { error($lang->user_reached_max_warning);
| error($lang->warnings_error_cannot_warn_self); }
if($user['warningpoints'] >= $mybb->settings['maxwarningpoints']) { error($lang->warnings_error_user_reached_max_warning);
|
}
$group_permissions = user_permissions($user['uid']);
| }
$group_permissions = user_permissions($user['uid']);
|
Zeile 203 | Zeile 206 |
---|
if($post) { $thread = get_thread($post['tid']);
|
if($post) { $thread = get_thread($post['tid']);
|
}
| }
|
if(!$post || !$thread)
|
if(!$post || !$thread)
|
{ error($lang->error_invalid_post);
| { error($lang->warnings_error_invalid_post);
|
}
$forum_permissions = forum_permissions($thread['fid']);
| }
$forum_permissions = forum_permissions($thread['fid']);
|
Zeile 215 | Zeile 218 |
---|
{ error_no_permission(); }
|
{ error_no_permission(); }
|
|
|
$post['subject'] = $parser->parse_badwords($post['subject']); $post['subject'] = htmlspecialchars_uni($post['subject']); $post_link = get_post_link($post['pid']);
| $post['subject'] = $parser->parse_badwords($post['subject']); $post['subject'] = htmlspecialchars_uni($post['subject']); $post_link = get_post_link($post['pid']);
|
Zeile 230 | Zeile 233 |
---|
WHERE w.pid='".$mybb->get_input('pid', MyBB::INPUT_INT)."' ORDER BY w.expired ASC, w.dateline DESC ");
|
WHERE w.pid='".$mybb->get_input('pid', MyBB::INPUT_INT)."' ORDER BY w.expired ASC, w.dateline DESC ");
|
$first = true;
| $last_expired = -1;
|
$warnings = ''; while($warning = $db->fetch_array($query)) {
|
$warnings = ''; while($warning = $db->fetch_array($query)) {
|
if($warning['expired'] != $last_expired || $first)
| if($warning['expired'] != $last_expired)
|
{ if($warning['expired'] == 0) { eval("\$warnings .= \"".$templates->get("warnings_active_header")."\";");
|
{ if($warning['expired'] == 0) { eval("\$warnings .= \"".$templates->get("warnings_active_header")."\";");
|
}
| }
|
else { eval("\$warnings .= \"".$templates->get("warnings_expired_header")."\";"); } } $last_expired = $warning['expired'];
|
else { eval("\$warnings .= \"".$templates->get("warnings_expired_header")."\";"); } } $last_expired = $warning['expired'];
|
$first = false;
| |
$post_link = "";
|
$post_link = "";
|
| $warning['username'] = htmlspecialchars_uni($warning['username']);
|
$issuedby = build_profile_link($warning['username'], $warning['issuedby']); $date_issued = my_date('relative', $warning['dateline']); if($warning['type_title'])
|
$issuedby = build_profile_link($warning['username'], $warning['issuedby']); $date_issued = my_date('relative', $warning['dateline']); if($warning['type_title'])
|
{
| {
|
$warning_type = $warning['type_title'];
|
$warning_type = $warning['type_title'];
|
}
| }
|
else { $warning_type = $warning['title'];
| else { $warning_type = $warning['title'];
|
Zeile 263 | Zeile 266 |
---|
if($warning['points'] > 0) { $warning['points'] = "+{$warning['points']}";
|
if($warning['points'] > 0) { $warning['points'] = "+{$warning['points']}";
|
}
| }
|
$points = $lang->sprintf($lang->warning_points, $warning['points']); if($warning['expired'] != 1) { if($warning['expires'] == 0)
|
$points = $lang->sprintf($lang->warning_points, $warning['points']); if($warning['expired'] != 1) { if($warning['expires'] == 0)
|
{
| {
|
$expires = $lang->never;
|
$expires = $lang->never;
|
}
| }
|
else
|
else
|
{ $expires = my_date($mybb->settings['dateformat'], $warning['expires']) . ", " . my_date($mybb->settings['timeformat'], $warning['expires']); } }
| { $expires = nice_time($warning['expires']-TIME_NOW); } }
|
else { if($warning['daterevoked'])
| else { if($warning['daterevoked'])
|
Zeile 298 | Zeile 301 |
---|
}
$plugins->run_hooks("warnings_warn_start");
|
}
$plugins->run_hooks("warnings_warn_start");
|
|
|
$type_checked = array('custom' => ''); $expires_period = array('hours' => '', 'days' => '', 'weeks' => '', 'months' => '', 'never' => ''); $send_pm_checked = '';
// Coming here from failed do_warn?
|
$type_checked = array('custom' => ''); $expires_period = array('hours' => '', 'days' => '', 'weeks' => '', 'months' => '', 'never' => ''); $send_pm_checked = '';
// Coming here from failed do_warn?
|
| $user['username'] = htmlspecialchars_uni($user['username']);
|
if(!empty($warn_errors)) { $notes = htmlspecialchars_uni($mybb->get_input('notes')); if($mybb->get_input('type', MyBB::INPUT_INT)) { $type_checked[$mybb->get_input('type', MyBB::INPUT_INT)] = "checked=\"checked\"";
|
if(!empty($warn_errors)) { $notes = htmlspecialchars_uni($mybb->get_input('notes')); if($mybb->get_input('type', MyBB::INPUT_INT)) { $type_checked[$mybb->get_input('type', MyBB::INPUT_INT)] = "checked=\"checked\"";
|
}
| }
|
$pm_subject = htmlspecialchars_uni($mybb->get_input('pm_subject')); $message = htmlspecialchars_uni($mybb->get_input('pm_message')); if(!empty($mybb->input['send_pm']))
| $pm_subject = htmlspecialchars_uni($mybb->get_input('pm_subject')); $message = htmlspecialchars_uni($mybb->get_input('pm_message')); if(!empty($mybb->input['send_pm']))
|
Zeile 320 | Zeile 324 |
---|
$custom_reason = htmlspecialchars_uni($mybb->get_input('custom_reason')); $custom_points = $mybb->get_input('custom_points', MyBB::INPUT_INT); $expires = $mybb->get_input('expires', MyBB::INPUT_INT);
|
$custom_reason = htmlspecialchars_uni($mybb->get_input('custom_reason')); $custom_points = $mybb->get_input('custom_points', MyBB::INPUT_INT); $expires = $mybb->get_input('expires', MyBB::INPUT_INT);
|
if($mybb->get_input('expires_period', MyBB::INPUT_INT))
| if($mybb->get_input('expires_period'))
|
{
|
{
|
$expires_period[$mybb->get_input('expires_period', MyBB::INPUT_INT)] = "selected=\"selected\"";
| $expires_period[$mybb->get_input('expires_period')] = "selected=\"selected\"";
|
} } else
| } } else
|
Zeile 333 | Zeile 337 |
---|
$pm_subject = $lang->warning_pm_subject; $message = $lang->sprintf($lang->warning_pm_message, $user['username'], $mybb->settings['bbname']); $warn_errors = '';
|
$pm_subject = $lang->warning_pm_subject; $message = $lang->sprintf($lang->warning_pm_message, $user['username'], $mybb->settings['bbname']); $warn_errors = '';
|
}
| }
|
$lang->nav_profile = $lang->sprintf($lang->nav_profile, $user['username']); add_breadcrumb($lang->nav_profile, get_profile_link($user['uid'])); add_breadcrumb($lang->nav_add_warning);
|
$lang->nav_profile = $lang->sprintf($lang->nav_profile, $user['username']); add_breadcrumb($lang->nav_profile, get_profile_link($user['uid'])); add_breadcrumb($lang->nav_add_warning);
|
|
|
$user_link = build_profile_link($user['username'], $user['uid']);
|
$user_link = build_profile_link($user['username'], $user['uid']);
|
| if($mybb->settings['maxwarningpoints'] < 1) { $mybb->settings['maxwarningpoints'] = 10; }
if(!is_array($groupscache)) { $groupscache = $cache->read("usergroups"); }
|
$current_level = round($user['warningpoints']/$mybb->settings['maxwarningpoints']*100);
| $current_level = round($user['warningpoints']/$mybb->settings['maxwarningpoints']*100);
|
Zeile 510 | Zeile 524 |
---|
else if($warning['daterevoked']) { error($lang->warning_already_revoked);
|
else if($warning['daterevoked']) { error($lang->warning_already_revoked);
|
}
$user = get_user($warning['uid']);
$group_permissions = user_permissions($user['uid']);
| }
$user = get_user($warning['uid']);
$group_permissions = user_permissions($user['uid']);
|
if($group_permissions['canreceivewarnings'] != 1) { error($lang->error_cant_warn_group);
| if($group_permissions['canreceivewarnings'] != 1) { error($lang->error_cant_warn_group);
|
Zeile 537 | Zeile 551 |
---|
'uid' => $warning['uid'], 'points' => $warning['points'] );
|
'uid' => $warning['uid'], 'points' => $warning['points'] );
|
|
|
$warningshandler->set_data($warning_data);
$warningshandler->update_warning();
| $warningshandler->set_data($warning_data);
$warningshandler->update_warning();
|
Zeile 570 | Zeile 584 |
---|
}
$user = get_user((int)$warning['uid']);
|
}
$user = get_user((int)$warning['uid']);
|
if(!$user) { $user['username'] = $lang->guest;
| if(empty($user)) { $user = array('uid' => 0, 'username' => $lang->guest);
|
}
|
}
|
| $user['username'] = htmlspecialchars_uni($user['username']);
|
$group_permissions = user_permissions($user['uid']); if($group_permissions['canreceivewarnings'] != 1)
| $group_permissions = user_permissions($user['uid']); if($group_permissions['canreceivewarnings'] != 1)
|
Zeile 584 | Zeile 599 |
---|
$plugins->run_hooks("warnings_view_start");
$lang->nav_profile = $lang->sprintf($lang->nav_profile, $user['username']);
|
$plugins->run_hooks("warnings_view_start");
$lang->nav_profile = $lang->sprintf($lang->nav_profile, $user['username']);
|
if($user['uid'])
| if(!empty($user['uid']))
|
{ add_breadcrumb($lang->nav_profile, get_profile_link($user['uid'])); add_breadcrumb($lang->nav_warning_log, "warnings.php?uid={$user['uid']}");
| { add_breadcrumb($lang->nav_profile, get_profile_link($user['uid'])); add_breadcrumb($lang->nav_warning_log, "warnings.php?uid={$user['uid']}");
|
Zeile 595 | Zeile 610 |
---|
add_breadcrumb($lang->nav_warning_log); } add_breadcrumb($lang->nav_view_warning);
|
add_breadcrumb($lang->nav_warning_log); } add_breadcrumb($lang->nav_view_warning);
|
|
|
$user_link = build_profile_link($user['username'], $user['uid']);
$post_link = "";
| $user_link = build_profile_link($user['username'], $user['uid']);
$post_link = "";
|
Zeile 605 | Zeile 620 |
---|
$warning['post_subject'] = htmlspecialchars_uni($warning['post_subject']); $post_link = get_post_link($warning['pid'])."#pid{$warning['pid']}"; eval("\$warning_info = \"".$templates->get("warnings_view_post")."\";");
|
$warning['post_subject'] = htmlspecialchars_uni($warning['post_subject']); $post_link = get_post_link($warning['pid'])."#pid{$warning['pid']}"; eval("\$warning_info = \"".$templates->get("warnings_view_post")."\";");
|
} else
| } else
|
{ eval("\$warning_info = \"".$templates->get("warnings_view_user")."\";"); }
|
{ eval("\$warning_info = \"".$templates->get("warnings_view_user")."\";"); }
|
| $warning['username'] = htmlspecialchars_uni($warning['username']);
|
$issuedby = build_profile_link($warning['username'], $warning['issuedby']); $notes = nl2br(htmlspecialchars_uni($warning['notes']));
| $issuedby = build_profile_link($warning['username'], $warning['issuedby']); $notes = nl2br(htmlspecialchars_uni($warning['notes']));
|
Zeile 627 | Zeile 643 |
---|
if($warning['points'] > 0) { $warning['points'] = "+{$warning['points']}";
|
if($warning['points'] > 0) { $warning['points'] = "+{$warning['points']}";
|
}
| }
|
$revoked_date = '';
| $revoked_date = '';
|
Zeile 640 | Zeile 656 |
---|
} else {
|
} else {
|
$expires = my_date($mybb->settings['dateformat'], $warning['expires']) . ", " . my_date($mybb->settings['timeformat'], $warning['expires']);
| $expires = my_date('normal', $warning['expires']); // Purposely not using nice_time here as the moderator has clicked for more details so the actual day/time should be shown
|
} $status = $lang->warning_active; }
| } $status = $lang->warning_active; }
|
Zeile 649 | Zeile 665 |
---|
if($warning['daterevoked']) { $expires = $status = $lang->warning_revoked;
|
if($warning['daterevoked']) { $expires = $status = $lang->warning_revoked;
|
}
| }
|
else if($warning['expires']) {
|
else if($warning['expires']) {
|
$revoked_date = '('.my_date($mybb->settings['dateformat'], $warning['expires']).', '.my_date($mybb->settings['timeformat'], $warning['expires']).')';
| $revoked_date = '('.my_date('normal', $warning['expires']).')';
|
$expires = $status = $lang->already_expired; } }
| $expires = $status = $lang->already_expired; } }
|
Zeile 673 | Zeile 689 |
---|
{ $revoked_user['username'] = $lang->guest; }
|
{ $revoked_user['username'] = $lang->guest; }
|
| $revoked_user['username'] = htmlspecialchars_uni($revoked_user['username']);
|
$revoked_by = build_profile_link($revoked_user['username'], $revoked_user['uid']); $revoke_reason = nl2br(htmlspecialchars_uni($warning['revokereason'])); eval("\$revoke = \"".$templates->get("warnings_view_revoked")."\";");
| $revoked_by = build_profile_link($revoked_user['username'], $revoked_user['uid']); $revoke_reason = nl2br(htmlspecialchars_uni($warning['revokereason'])); eval("\$revoke = \"".$templates->get("warnings_view_revoked")."\";");
|
Zeile 693 | Zeile 710 |
---|
}
$user = get_user($mybb->get_input('uid', MyBB::INPUT_INT));
|
}
$user = get_user($mybb->get_input('uid', MyBB::INPUT_INT));
|
if(!$user['uid'])
| if(!$user)
|
{ error($lang->error_invalid_user); }
| { error($lang->error_invalid_user); }
|
Zeile 704 | Zeile 721 |
---|
error($lang->error_cant_warn_group); }
|
error($lang->error_cant_warn_group); }
|
| $user['username'] = htmlspecialchars_uni($user['username']);
|
$lang->nav_profile = $lang->sprintf($lang->nav_profile, $user['username']); add_breadcrumb($lang->nav_profile, get_profile_link($user['uid'])); add_breadcrumb($lang->nav_warning_log);
| $lang->nav_profile = $lang->sprintf($lang->nav_profile, $user['username']); add_breadcrumb($lang->nav_profile, get_profile_link($user['uid'])); add_breadcrumb($lang->nav_warning_log);
|
Zeile 737 | Zeile 755 |
---|
}
$multipage = multipage($warning_count, $perpage, $page, "warnings.php?uid={$user['uid']}");
|
}
$multipage = multipage($warning_count, $perpage, $page, "warnings.php?uid={$user['uid']}");
|
| if($mybb->settings['maxwarningpoints'] < 1) { $mybb->settings['maxwarningpoints'] = 10; }
|
$warning_level = round($user['warningpoints']/$mybb->settings['maxwarningpoints']*100); if($warning_level > 100)
| $warning_level = round($user['warningpoints']/$mybb->settings['maxwarningpoints']*100); if($warning_level > 100)
|
Zeile 750 | Zeile 773 |
---|
}
if($warning_level > 0)
|
}
if($warning_level > 0)
|
{
| {
|
$lang->current_warning_level = $lang->sprintf($lang->current_warning_level, $warning_level, $user['warningpoints'], $mybb->settings['maxwarningpoints']);
|
$lang->current_warning_level = $lang->sprintf($lang->current_warning_level, $warning_level, $user['warningpoints'], $mybb->settings['maxwarningpoints']);
|
}
| }
|
else { $lang->current_warning_level = ""; }
|
else { $lang->current_warning_level = ""; }
|
|
|
// Fetch the actual warnings $query = $db->query(" SELECT w.*, t.title AS type_title, u.username, p.subject AS post_subject
| // Fetch the actual warnings $query = $db->query(" SELECT w.*, t.title AS type_title, u.username, p.subject AS post_subject
|
Zeile 785 | Zeile 808 |
---|
} $last_expired = $warning['expired'];
|
} $last_expired = $warning['expired'];
|
$post_link = "";
| $post_link = '';
|
if($warning['post_subject']) { $warning['post_subject'] = $parser->parse_badwords($warning['post_subject']); $warning['post_subject'] = htmlspecialchars_uni($warning['post_subject']);
|
if($warning['post_subject']) { $warning['post_subject'] = $parser->parse_badwords($warning['post_subject']); $warning['post_subject'] = htmlspecialchars_uni($warning['post_subject']);
|
$post_link = "<br /><small>{$lang->warning_for_post} <a href=\"".get_post_link($warning['pid'])."#pid{$warning['pid']}\">{$warning['post_subject']}</a></small>";
| $warning['post_link'] = get_post_link($warning['pid']); eval("\$post_link = \"".$templates->get("warnings_postlink")."\";");
|
}
|
}
|
| $warning['username'] = htmlspecialchars_uni($warning['username']);
|
$issuedby = build_profile_link($warning['username'], $warning['issuedby']); $date_issued = my_date('relative', $warning['dateline']); if($warning['type_title'])
| $issuedby = build_profile_link($warning['username'], $warning['issuedby']); $date_issued = my_date('relative', $warning['dateline']); if($warning['type_title'])
|
Zeile 816 | Zeile 842 |
---|
} else {
|
} else {
|
$expires = my_date($mybb->settings['dateformat'], $warning['expires']) . ", " . my_date($mybb->settings['timeformat'], $warning['expires']);
| $expires = nice_time($warning['expires']-TIME_NOW);
|
} } else
| } } else
|