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 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") { if($mybb->usergroup['canwarnusers'] != 1) { error_no_permission();
|
// Warn a user if($mybb->input['action'] == "warn") { if($mybb->usergroup['canwarnusers'] != 1) { error_no_permission();
|
}
| }
|
// 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) {
|
Zeile 160 | Zeile 163 |
---|
$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'])
|
$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)
|
Zeile 172 | Zeile 175 |
---|
}
if($user['uid'] == $mybb->user['uid'])
|
}
if($user['uid'] == $mybb->user['uid'])
|
{ error($lang->cannot_warn_self); }
| { error($lang->warnings_error_cannot_warn_self); }
|
if($user['warningpoints'] >= $mybb->settings['maxwarningpoints']) {
|
if($user['warningpoints'] >= $mybb->settings['maxwarningpoints']) {
|
error($lang->user_reached_max_warning);
| error($lang->warnings_error_user_reached_max_warning);
|
}
$group_permissions = user_permissions($user['uid']);
| }
$group_permissions = user_permissions($user['uid']);
|
Zeile 206 | Zeile 209 |
---|
}
if(!$post || !$thread)
|
}
if(!$post || !$thread)
|
{ error($lang->error_invalid_post); }
| { error($lang->warnings_error_invalid_post); }
|
$forum_permissions = forum_permissions($thread['fid']); if($forum_permissions['canview'] != 1) {
| $forum_permissions = forum_permissions($thread['fid']); if($forum_permissions['canview'] != 1) {
|
Zeile 220 | Zeile 223 |
---|
$post['subject'] = htmlspecialchars_uni($post['subject']); $post_link = get_post_link($post['pid']); eval("\$post = \"".$templates->get("warnings_warn_post")."\";");
|
$post['subject'] = htmlspecialchars_uni($post['subject']); $post_link = get_post_link($post['pid']); eval("\$post = \"".$templates->get("warnings_warn_post")."\";");
|
|
|
// Fetch any existing warnings issued for this post $query = $db->query(" SELECT w.*, t.title AS type_title, u.username
| // Fetch any existing warnings issued for this post $query = $db->query(" SELECT w.*, t.title AS type_title, u.username
|
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) {
| { if($warning['expired'] == 0) {
|
Zeile 246 | Zeile 249 |
---|
} } $last_expired = $warning['expired'];
|
} } $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'])
|
Zeile 272 | Zeile 275 |
---|
$expires = $lang->never; } else
|
$expires = $lang->never; } 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 294 | Zeile 297 |
---|
if($warnings) { eval("\$existing_warnings = \"".$templates->get("warnings_warn_existing")."\";");
|
if($warnings) { eval("\$existing_warnings = \"".$templates->get("warnings_warn_existing")."\";");
|
} }
| } }
|
$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 = '';
|
$type_checked = array('custom' => ''); $expires_period = array('hours' => '', 'days' => '', 'weeks' => '', 'months' => '', 'never' => ''); $send_pm_checked = '';
|
|
|
// Coming here from failed do_warn?
|
// Coming here from failed do_warn?
|
| $user['username'] = htmlspecialchars_uni($user['username']);
|
if(!empty($warn_errors)) { $notes = htmlspecialchars_uni($mybb->get_input('notes'));
| if(!empty($warn_errors)) { $notes = htmlspecialchars_uni($mybb->get_input('notes'));
|
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 { $notes = $custom_reason = $custom_points = $expires = '';
| else { $notes = $custom_reason = $custom_points = $expires = '';
|
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 543 | Zeile 557 |
---|
$warningshandler->update_warning();
redirect("warnings.php?action=view&wid={$warning['wid']}", $lang->redirect_warning_revoked);
|
$warningshandler->update_warning();
redirect("warnings.php?action=view&wid={$warning['wid']}", $lang->redirect_warning_revoked);
|
}
| }
|
}
// Detailed view of a warning
| }
// Detailed view of a warning
|
Zeile 574 | Zeile 588 |
---|
{ $user['username'] = $lang->guest; }
|
{ $user['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 611 | Zeile 626 |
---|
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 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 652 | Zeile 668 |
---|
} 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 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
|