mirror of
https://github.com/phpbb/phpbb.git
synced 2025-05-06 15:45:34 +02:00
- added ability to filter logs by log_operation
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@9781 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
parent
e9830e5530
commit
b6a1271c3a
@ -8,12 +8,18 @@
|
|||||||
|
|
||||||
<form id="list" method="post" action="{U_ACTION}">
|
<form id="list" method="post" action="{U_ACTION}">
|
||||||
|
|
||||||
|
<fieldset class="display-options" style="float: left">
|
||||||
|
{L_SELECT_LANG_KEY}: <select name="log_operation">{S_LANG_KEYS}</select> <input type="submit" class="button2" name="filter" value="{L_FILTER}" />
|
||||||
|
</fieldset>
|
||||||
|
|
||||||
<!-- IF PAGINATION -->
|
<!-- IF PAGINATION -->
|
||||||
<div class="pagination">
|
<div class="pagination" style="float: right; margin: 15px 0 2px 0">
|
||||||
<a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> • <span>{PAGINATION}</span>
|
<a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> • <span>{PAGINATION}</span>
|
||||||
</div>
|
</div>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
|
|
||||||
|
<div class="clearfix"> </div><br style="clear: both;" />
|
||||||
|
|
||||||
<!-- IF .log -->
|
<!-- IF .log -->
|
||||||
<table cellspacing="1">
|
<table cellspacing="1">
|
||||||
<thead>
|
<thead>
|
||||||
|
@ -209,6 +209,7 @@
|
|||||||
<li>[Feature] Add option to disable remote upload avatars (Bug #45375 - Patch by nickvergessen)</li>
|
<li>[Feature] Add option to disable remote upload avatars (Bug #45375 - Patch by nickvergessen)</li>
|
||||||
<li>[Feature] Ability to delete warnings and keep warnings permanently (Bug #43375 - Patch by nickvergessen)</li>
|
<li>[Feature] Ability to delete warnings and keep warnings permanently (Bug #43375 - Patch by nickvergessen)</li>
|
||||||
<li>[Feature] Ability to empty a user's outbox from the user ACP quick tools.</li>
|
<li>[Feature] Ability to empty a user's outbox from the user ACP quick tools.</li>
|
||||||
|
<li>[Feature] Ability to filter ACP logs</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<a name="v304"></a><h3>1.ii. Changes since 3.0.4</h3>
|
<a name="v304"></a><h3>1.ii. Changes since 3.0.4</h3>
|
||||||
|
@ -104,6 +104,65 @@ class acp_logs
|
|||||||
$sql_where = ($sort_days) ? (time() - ($sort_days * 86400)) : 0;
|
$sql_where = ($sort_days) ? (time() - ($sort_days * 86400)) : 0;
|
||||||
$sql_sort = $sort_by_sql[$sort_key] . ' ' . (($sort_dir == 'd') ? 'DESC' : 'ASC');
|
$sql_sort = $sort_by_sql[$sort_key] . ' ' . (($sort_dir == 'd') ? 'DESC' : 'ASC');
|
||||||
|
|
||||||
|
$log_operation = request_var('log_operation', '');
|
||||||
|
$s_lang_keys = '<option value="">' . $user->lang['SHOW_ALL_OPERATIONS'] . '</option>';
|
||||||
|
|
||||||
|
switch ($mode)
|
||||||
|
{
|
||||||
|
case 'admin':
|
||||||
|
$log_type = LOG_ADMIN;
|
||||||
|
$sql_forum = '';
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'mod':
|
||||||
|
$log_type = LOG_MOD;
|
||||||
|
|
||||||
|
if ($topic_id)
|
||||||
|
{
|
||||||
|
$sql_forum = 'AND topic_id = ' . intval($topic_id);
|
||||||
|
}
|
||||||
|
else if (is_array($forum_id))
|
||||||
|
{
|
||||||
|
$sql_forum = 'AND ' . $db->sql_in_set('forum_id', array_map('intval', $forum_id));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$sql_forum = ($forum_id) ? 'AND forum_id = ' . intval($forum_id) : '';
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'user':
|
||||||
|
$log_type = LOG_USERS;
|
||||||
|
$sql_forum = 'AND reportee_id = ' . (int) $user_id;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'users':
|
||||||
|
$log_type = LOG_USERS;
|
||||||
|
$sql_forum = '';
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'critical':
|
||||||
|
$log_type = LOG_CRITICAL;
|
||||||
|
$sql_forum = '';
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$sql = "SELECT DISTINCT log_operation
|
||||||
|
FROM " . LOG_TABLE . "
|
||||||
|
WHERE log_type = $log_type
|
||||||
|
" . (($limit_days) ? "AND log_time >= $sql_where " : ' ') .
|
||||||
|
$sql_forum;
|
||||||
|
$result = $db->sql_query($sql);
|
||||||
|
while ($row = $db->sql_fetchrow($result))
|
||||||
|
{
|
||||||
|
$selected = ($log_operation == $row['log_operation']) ? ' selected="selected"' : '';
|
||||||
|
$s_lang_keys .= '<option value="' . $row['log_operation'] . '"' . $selected . '>' . $user->lang[$row['log_operation']] . '</option>';
|
||||||
|
}
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
$l_title = $user->lang['ACP_' . strtoupper($mode) . '_LOGS'];
|
$l_title = $user->lang['ACP_' . strtoupper($mode) . '_LOGS'];
|
||||||
$l_title_explain = $user->lang['ACP_' . strtoupper($mode) . '_LOGS_EXPLAIN'];
|
$l_title_explain = $user->lang['ACP_' . strtoupper($mode) . '_LOGS_EXPLAIN'];
|
||||||
|
|
||||||
@ -123,7 +182,7 @@ class acp_logs
|
|||||||
// Grab log data
|
// Grab log data
|
||||||
$log_data = array();
|
$log_data = array();
|
||||||
$log_count = 0;
|
$log_count = 0;
|
||||||
view_log($mode, $log_data, $log_count, $config['topics_per_page'], $start, $forum_id, 0, 0, $sql_where, $sql_sort);
|
view_log($mode, $log_data, $log_count, $config['topics_per_page'], $start, $forum_id, 0, 0, $sql_where, $sql_sort, $log_operation);
|
||||||
|
|
||||||
$template->assign_vars(array(
|
$template->assign_vars(array(
|
||||||
'L_TITLE' => $l_title,
|
'L_TITLE' => $l_title,
|
||||||
@ -136,6 +195,7 @@ class acp_logs
|
|||||||
'S_LIMIT_DAYS' => $s_limit_days,
|
'S_LIMIT_DAYS' => $s_limit_days,
|
||||||
'S_SORT_KEY' => $s_sort_key,
|
'S_SORT_KEY' => $s_sort_key,
|
||||||
'S_SORT_DIR' => $s_sort_dir,
|
'S_SORT_DIR' => $s_sort_dir,
|
||||||
|
'S_LANG_KEYS' => $s_lang_keys,
|
||||||
'S_CLEARLOGS' => $auth->acl_get('a_clearlogs'),
|
'S_CLEARLOGS' => $auth->acl_get('a_clearlogs'),
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
@ -2278,7 +2278,7 @@ function cache_moderators()
|
|||||||
/**
|
/**
|
||||||
* View log
|
* View log
|
||||||
*/
|
*/
|
||||||
function view_log($mode, &$log, &$log_count, $limit = 0, $offset = 0, $forum_id = 0, $topic_id = 0, $user_id = 0, $limit_days = 0, $sort_by = 'l.log_time DESC')
|
function view_log($mode, &$log, &$log_count, $limit = 0, $offset = 0, $forum_id = 0, $topic_id = 0, $user_id = 0, $limit_days = 0, $sort_by = 'l.log_time DESC', $log_operation = '')
|
||||||
{
|
{
|
||||||
global $db, $user, $auth, $phpEx, $phpbb_root_path, $phpbb_admin_path;
|
global $db, $user, $auth, $phpEx, $phpbb_root_path, $phpbb_admin_path;
|
||||||
|
|
||||||
@ -2333,7 +2333,8 @@ function view_log($mode, &$log, &$log_count, $limit = 0, $offset = 0, $forum_id
|
|||||||
FROM " . LOG_TABLE . " l, " . USERS_TABLE . " u
|
FROM " . LOG_TABLE . " l, " . USERS_TABLE . " u
|
||||||
WHERE l.log_type = $log_type
|
WHERE l.log_type = $log_type
|
||||||
AND u.user_id = l.user_id
|
AND u.user_id = l.user_id
|
||||||
" . (($limit_days) ? "AND l.log_time >= $limit_days" : '') . "
|
" . (($limit_days) ? "AND l.log_time >= $limit_days" : '') .
|
||||||
|
(!empty($log_operation) ? "AND l.log_operation = '" . $db->sql_escape($log_operation) . "'" : '') . "
|
||||||
$sql_forum
|
$sql_forum
|
||||||
ORDER BY $sort_by";
|
ORDER BY $sort_by";
|
||||||
$result = $db->sql_query_limit($sql, $limit, $offset);
|
$result = $db->sql_query_limit($sql, $limit, $offset);
|
||||||
|
@ -230,6 +230,8 @@ $lang = array_merge($lang, array(
|
|||||||
'EXPORT_DOWNLOAD' => 'Download',
|
'EXPORT_DOWNLOAD' => 'Download',
|
||||||
'EXPORT_STORE' => 'Store',
|
'EXPORT_STORE' => 'Store',
|
||||||
|
|
||||||
|
'FILTER' => 'Filter',
|
||||||
|
|
||||||
'GENERAL_OPTIONS' => 'General options',
|
'GENERAL_OPTIONS' => 'General options',
|
||||||
'GENERAL_SETTINGS' => 'General settings',
|
'GENERAL_SETTINGS' => 'General settings',
|
||||||
'GLOBAL_MASK' => 'Global permission mask',
|
'GLOBAL_MASK' => 'Global permission mask',
|
||||||
@ -271,6 +273,7 @@ $lang = array_merge($lang, array(
|
|||||||
'RETURN_TO' => 'Return to…',
|
'RETURN_TO' => 'Return to…',
|
||||||
|
|
||||||
'SELECT_ANONYMOUS' => 'Select anonymous user',
|
'SELECT_ANONYMOUS' => 'Select anonymous user',
|
||||||
|
'SELECT_LANG_KEY' => 'Select operation',
|
||||||
'SELECT_OPTION' => 'Select option',
|
'SELECT_OPTION' => 'Select option',
|
||||||
|
|
||||||
'SETTING_TOO_LOW' => 'The entered value for the setting “%1$s” is too low. The minimal allowed value is %2$d.',
|
'SETTING_TOO_LOW' => 'The entered value for the setting “%1$s” is too low. The minimal allowed value is %2$d.',
|
||||||
|
Loading…
x
Reference in New Issue
Block a user