📄 ad_modlogs.php
字号:
<?php
class ad_modlogs
{
var $base_url;
function ad_modlogs( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
$tmp_in = array_merge( $_GET, $_POST, $_COOKIE );
foreach ( $tmp_in as $k => $v )
{
}
switch ( $IN['code'] )
{
case "view" :
$this->view( );
break;
case "remove" :
$this->remove( );
break;
default :
$this->list_current( );
break;
}
}
function view( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
$start = $IN['st'] ? $IN['st'] : 0;
$ADMIN->page_detail = "查看所有论坛版主操作纪录";
$ADMIN->page_title = "版主操作纪录管理";
if ( $IN['search_string'] == "" )
{
$DB->query( "SELECT COUNT(id) as count FROM ibf_moderator_logs WHERE member_id='".$IN['mid']."'" );
$row = $DB->fetch_row( );
$row_count = $row['count'];
$query = "&act=modlog&mid={$IN['mid']}&code=view";
$DB->query( "SELECT m.*, f.id as forum_id, f.name FROM ibf_moderator_logs m, ibf_forums f WHERE m.member_id='".$IN['mid']."' AND f.id=m.forum_id ORDER BY m.ctime DESC LIMIT {$start}, 20" );
}
else
{
$IN['search_string'] = urldecode( $IN['search_string'] );
if ( $IN['search_type'] == "topic_id" || $IN['search_type'] == "forum_id" )
{
$dbq = "m.".$IN['search_type']."='".$IN['search_string']."'";
}
else
{
$dbq = "m.".$IN['search_type']." LIKE '%".$IN['search_string']."%'";
}
$DB->query( "SELECT COUNT(m.id) as count FROM ibf_moderator_logs m WHERE {$dbq}" );
$row = $DB->fetch_row( );
$row_count = $row['count'];
$query = "&act=modlog&code=view&search_type={$IN['search_type']}&search_string=".urlencode( $IN['search_string'] );
$DB->query( "SELECT m.*, f.id as forum_id, f.name FROM ibf_moderator_logs m, ibf_forums f WHERE {$dbq} AND f.id=m.forum_id ORDER BY m.ctime DESC LIMIT {$start}, 20" );
}
$links = $std->build_pagelinks( array(
"TOTAL_POSS" => $row_count,
"PER_PAGE" => 20,
"CUR_ST_VAL" => $start,
"L_SINGLE" => " ",
"L_MULTI" => "页:",
"BASE_URL" => $ADMIN->base_url.$query
) );
$ADMIN->page_detail = "你可以 查看/删除 论坛版主执行的操作记录";
$ADMIN->page_title = "版主操作纪录管理";
$SKIN->td_header[] = array( "用户名称", "15%" );
$SKIN->td_header[] = array( "执行操作", "15%" );
$SKIN->td_header[] = array( "论坛栏目", "15%" );
$SKIN->td_header[] = array( "相关主题", "25%" );
$SKIN->td_header[] = array( "执行时间", "20%" );
$SKIN->td_header[] = array( "IP 地址", "10%" );
$ADMIN->html .= $SKIN->start_table( "保存论坛版主操作纪录" );
$ADMIN->html .= $SKIN->add_td_basic( $links, "center", "catrow" );
if ( $DB->get_num_rows( ) )
{
while ( $row = $DB->fetch_row( ) )
{
$row['ctime'] = $ADMIN->get_date( $row['ctime'], "LONG" );
$sess_id = preg_replace( "/^.+?s=(\\w{32}).+?\$/", "\\1", $row['http_referer'] );
$row['http_referer'] = preg_replace( "/s=(\\w){32}/", "", $row['http_referer'] );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>{$row['member_name']}</b>",
"<span style='font-weight:bold;color:red'><a href='#' onClick=\"alert('HTTP REFERRER OF ACTION:\\n{$row['http_referer']}\\nSESSION ID OF ACTION:\\n{$sess_id}')\">{$row['action']}</a></span>",
"<b>{$row['name']}</b>",
"{$row['topic_title']}",
"{$row['ctime']}",
"{$row['ip_address']}"
) );
}
}
else
{
$ADMIN->html .= $SKIN->add_td_basic( "<center>没有数据</center>" );
}
$ADMIN->html .= $SKIN->add_td_basic( $links, "center", "tdtop" );
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->output( );
}
function remove( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
if ( $IN['mid'] == "" )
{
$ADMIN->error( "你没有选择需要删除的用户ID!" );
}
$DB->query( "DELETE FROM ibf_moderator_logs WHERE member_id='".$IN['mid']."'" );
$ADMIN->save_log( "删除论坛版主管理记录" );
$std->boink_it( $ADMIN->base_url."&act=modlog" );
exit( );
}
function list_current( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
$form_array = array( );
$ADMIN->page_detail = "你可以 查看/删除 论坛版主执行的操作记录";
$ADMIN->page_title = "版主操作纪录管理";
$DB->query( "SELECT m.*, f.id as forum_id, f.name FROM ibf_moderator_logs m, ibf_forums f\n\t\t WHERE f.id=m.forum_id ORDER BY m.ctime DESC LIMIT 0, 5" );
$SKIN->td_header[] = array( "用户名称", "15%" );
$SKIN->td_header[] = array( "执行操作", "15%" );
$SKIN->td_header[] = array( "论坛栏目", "15%" );
$SKIN->td_header[] = array( "相关主题", "25%" );
$SKIN->td_header[] = array( "执行时间", "20%" );
$SKIN->td_header[] = array( "IP 地址", "10%" );
$ADMIN->html .= $SKIN->start_table( "最后 5 条论坛版主操作记录" );
if ( $DB->get_num_rows( ) )
{
while ( $row = $DB->fetch_row( ) )
{
$row['ctime'] = $ADMIN->get_date( $row['ctime'], "LONG" );
$sess_id = preg_replace( "/^.+?s=(\\w{32}).+?\$/", "\\1", $row['http_referer'] );
$row['http_referer'] = preg_replace( "/s=(\\w){32}/", "", $row['http_referer'] );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>{$row['member_name']}</b>",
"<span style='font-weight:bold;color:red'><a href='#' onClick=\"alert('HTTP REFERRER OF ACTION:\\n{$row['http_referer']}\\nSESSION ID OF ACTION:\\n{$sess_id}')\">{$row['action']}</a></span>",
"<b>{$row['name']}</b>",
"{$row['topic_title']}",
"{$row['ctime']}",
"{$row['ip_address']}"
) );
}
}
else
{
$ADMIN->html .= $SKIN->add_td_basic( "<center>没有数据</center>" );
}
$ADMIN->html .= $SKIN->end_table( );
$SKIN->td_header[] = array( "用户名称", "30%" );
$SKIN->td_header[] = array( "执行操作", "20%" );
$SKIN->td_header[] = array( "查看所有", "20%" );
$SKIN->td_header[] = array( "删除所有", "30%" );
$ADMIN->html .= $SKIN->start_table( "保存论坛版主操作纪录" );
$DB->query( "SELECT m.*, count(m.id) as act_count from ibf_moderator_logs m GROUP BY m.member_id ORDER BY act_count DESC" );
while ( $r = $DB->fetch_row( ) )
{
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>{$r['member_name']}</b>",
"<center>{$r['act_count']}</center>",
"<center><a href='".$SKIN->base_url."&act=modlog&code=view&mid={$r['member_id']}'>查看</a></center>",
"<center><a href='".$SKIN->base_url."&act=modlog&code=remove&mid={$r['member_id']}'>删除</a></center>"
) );
}
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->html .= $SKIN->start_form( array(
1 => array( "code", "view" ),
2 => array( "act", "modlog" )
) );
$SKIN->td_header[] = array( " ", "40%" );
$SKIN->td_header[] = array( " ", "60%" );
$ADMIN->html .= $SKIN->start_table( "搜索论坛版主操作纪录" );
$form_array = array(
0 => array( "topic_title", "相关主题" ),
1 => array( "ip_address", "IP 地址" ),
2 => array( "member_name", "用户名称" ),
3 => array( "topic_id", "主题 ID" ),
4 => array( "forum_id", "论坛 ID" )
);
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>搜索内容 ...</b>",
$SKIN->form_input( "search_string" )
) );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>搜索范围 ...</b>",
$SKIN->form_dropdown( "search_type", $form_array )
) );
$ADMIN->html .= $SKIN->end_form( "搜索" );
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->output( );
}
}
ad_modlogs( );
$idx = new ad_modlogs( );
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -