📄 ad_member.php
字号:
$ADMIN->done_screen( count( $ids )." 用户被批准", "用户注册管理", "act=mem&code=mod" );
}
else
{
$DB->query( "DELETE FROM ibf_members WHERE id IN(".implode( ",", $ids ).")" );
$DB->query( "DELETE from ibf_pfields_content WHERE member_id IN(".implode( ",", $ids ).")" );
$DB->query( "UPDATE ibf_posts SET author_id='0' WHERE author_id IN(".implode( ",", $ids ).")" );
$DB->query( "UPDATE ibf_topics SET starter_id='0' WHERE starter_id IN(".implode( ",", $ids ).")" );
$ADMIN->save_log( "拒绝等待审核的用户" );
$ADMIN->done_screen( count( $ids )." 用户被删除", "用户注册管理", "act=mem&code=mod" );
}
}
function view_mod( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
$ADMIN->page_title = "用户注册管理/发送确认邮件";
$ADMIN->page_detail = "你可以对等待审核的注册用户进行批准或拒绝。你也可以发送邮件通知等待审核的注册用户关于你审核的结果。<br><br>你也可以为那些没有收到注册邮件的用户完成用户注册。";
$DB->query( "SELECT COUNT(id) as mcount FROM ibf_members WHERE mgroup='".$INFO['auth_group']."' and (new_pass = '' or new_pass is null)" );
$row = $DB->fetch_row( );
$cnt = $row['mcount'] < 1 ? 0 : $row['mcount'];
$ADMIN->html .= $SKIN->start_form( array(
1 => array( "code", "domod" ),
2 => array( "act", "mem" )
) );
$SKIN->td_header[] = array( "用户名称", "30%" );
$SKIN->td_header[] = array( "电子邮件", "30%" );
$SKIN->td_header[] = array( "回复", "10%" );
$SKIN->td_header[] = array( "注册日期", "20%" );
$SKIN->td_header[] = array( "选择", "10%" );
$ADMIN->html .= $SKIN->start_table( "等候审核的用户" );
$ADMIN->html .= $SKIN->add_td_basic( "<b>{$cnt} 用户需要注册或发送修改确认邮件,显示 0 - 75</b>", "center", "title" );
if ( 0 < $cnt )
{
$DB->query( "SELECT name, id, email, posts, joined, coppa_user FROM ibf_members WHERE mgroup='".$INFO['auth_group']."' and (new_pass = '' or new_pass is null) ORDER BY joined DESC LIMIT 0,75" );
while ( $r = $DB->fetch_row( ) )
{
if ( $r['coppa_user'] == 1 )
{
$coppa = " [COPPA 申请用户]";
}
else
{
$coppa = "";
}
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>".$r['name']."</b>{$coppa}",
$r['email'],
"<center>{$r['posts']}</center>",
$std->get_date( $r['joined'], "JOINED" ),
"<input type='checkbox' name='mid_{$r['id']}' value='1'>"
) );
}
$ADMIN->html .= $SKIN->add_td_basic( "<select name='type' id='dropdown'><option value='approve'>批准这些用户帐号</option><option value='delete'>删除这些用户帐号</option></select>", "center", "row1" );
}
$ADMIN->html .= $SKIN->end_form( "执行" );
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->output( );
}
function ban_control( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
$ADMIN->page_title = "禁止用户管理";
$ADMIN->page_detail = "你可以 修改/删除/添加 用户名称/邮件地址/IP地址 到禁止用户数据库。";
$ADMIN->html .= $SKIN->start_form( array(
1 => array( "code", "doban" ),
2 => array( "act", "mem" )
) );
$ip_list = "";
$name_list = "";
$email_list = "";
if ( $INFO['ban_ip'] != "" )
{
$ip_list = preg_replace( "/\\|/", "\n", $INFO['ban_ip'] );
}
if ( $INFO['ban_email'] != "" )
{
$email_list = preg_replace( "/\\|/", "\n", $INFO['ban_email'] );
}
if ( $INFO['ban_names'] != "" )
{
$name_list = preg_replace( "/\\|/", "\n", $INFO['ban_names'] );
}
$SKIN->td_header[] = array( " ", "40%" );
$SKIN->td_header[] = array( " ", "60%" );
$ADMIN->html .= $SKIN->start_table( "禁止用户管理" );
$ADMIN->html .= $SKIN->add_td_basic( "禁止用户 IP 地址(每行一个,使用星号'*'作为通配符)", "center", "title" );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>禁止用户 IP 地址:</b><br>(例如:212.45.45.23)<br>(例如:212.45.45.*)",
$SKIN->form_textarea( "ban_ip", $ip_list )
) );
$ADMIN->html .= $SKIN->add_td_basic( "禁止用户邮件地址(每行一个,使用星号'*'作为通配符)", "center", "title" );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>禁止用户邮件地址:</b><br>(例如:name@domain.com)<br>(例如:*@domain.com)",
$SKIN->form_textarea( "ban_email", $email_list )
) );
$ADMIN->html .= $SKIN->add_td_basic( "禁止 / 保留 用户名称(每行一个,使用星号'*'作为通配符)", "center", "title" );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>禁止或保留用户名称:</b>",
$SKIN->form_textarea( "ban_names", $name_list )
) );
$ADMIN->html .= $SKIN->end_form( "更新禁止用户数据" );
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->output( );
}
function update_ban( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
global $HTTP_POST_VARS;
$new = array( );
$new['ban_ip'] = preg_replace( "/\n/", "|", trim( $HTTP_POST_VARS['ban_ip'] ) );
$new['ban_email'] = preg_replace( "/\n/", "|", trim( $HTTP_POST_VARS['ban_email'] ) );
$new['ban_names'] = preg_replace( "/\n/", "|", trim( $HTTP_POST_VARS['ban_names'] ) );
$ADMIN->rebuild_config( $new );
$ADMIN->save_log( "更新禁止用户数据" );
$ADMIN->done_screen( "禁止用户数据已经更新", "禁止用户管理", "act=mem&code=ban" );
}
function titles( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
$ADMIN->page_title = "用户头衔等级设置";
$ADMIN->page_detail = "你可以 修改/删除/添加 用户头衔等级设置。<br>通过输入数字来制定用户头衔等级的图片显示。如果你想使用定制的等级图片,只需要输入图片名称就可以了。但是图片必须上传到目录 'html/team_icons' 下。";
$SKIN->td_header[] = array( "用户头衔等级名称", "30%" );
$SKIN->td_header[] = array( "发表帖子", "10%" );
$SKIN->td_header[] = array( "等级图片", "20%" );
$SKIN->td_header[] = array( " ", "20%" );
$SKIN->td_header[] = array( " ", "20%" );
$DB->query( "SELECT macro_id, img_dir FROM ibf_skins WHERE default_set=1" );
$mid = $DB->fetch_row( );
$DB->query( "SELECT macro_replace AS A_STAR FROM ibf_macro WHERE macro_set={$mid['macro_id']} AND macro_value='A_STAR'" );
$row = $DB->fetch_row( );
$row['A_STAR'] = str_replace( "<#IMG_DIR#>", $mid['img_dir'], $row['A_STAR'] );
$ADMIN->html .= $SKIN->start_table( "用户头衔等级设置" );
$DB->query( "SELECT * FROM ibf_titles ORDER BY posts" );
while ( $r = $DB->fetch_row( ) )
{
$img = "";
if ( preg_match( "/^\\d+\$/", $r['pips'] ) )
{
$i = 1;
for ( ; $i <= $r['pips']; ++$i )
{
$img .= $row['A_STAR'];
}
}
else
{
$img = "<img src='html/team_icons/{$r['pips']}' border='0'>";
}
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>".$r['title']."</b>",
$r['posts'],
$img,
"<a href='{$SKIN->base_url}&act=mem&code=rank_edit&id={$r['id']}'>编辑</a>",
"<a href='{$SKIN->base_url}&act=mem&code=rank_delete&id={$r['id']}'>删除</a>"
) );
}
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->html .= $SKIN->start_form( array(
1 => array( "code", "do_add_rank" ),
2 => array( "act", "mem" )
) );
$SKIN->td_header[] = array( " ", "40%" );
$SKIN->td_header[] = array( " ", "60%" );
$ADMIN->html .= $SKIN->start_table( "添加用户头衔等级" );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>用户头衔等级名称:</b>",
$SKIN->form_input( "title" )
) );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>发表帖子数量:</b>",
$SKIN->form_input( "posts" )
) );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>等级图片数量:</b><br>(或填写图片名称)",
$SKIN->form_input( "pips" )
) );
$ADMIN->html .= $SKIN->end_form( "添加用户头衔等级" );
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->output( );
}
function add_rank( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
foreach ( array( "posts", "title", "pips" ) as $field )
{
if ( $IN[$field] == "" )
{
$ADMIN->error( "你必须填写全部表单数据" );
}
}
$db_string = $DB->compile_db_insert_string( array(
"posts" => trim( $IN['posts'] ),
"title" => trim( $IN['title'] ),
"pips" => trim( $IN['pips'] )
) );
$DB->query( "INSERT INTO ibf_titles (".$db_string['FIELD_NAMES'].") VALUES (".$db_string['FIELD_VALUES'].")" );
$ADMIN->done_screen( "添加用户头衔等级", "用户头衔等级设置", "act=mem&code=title" );
}
function delete_rank( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
if ( $IN['id'] == "" )
{
$ADMIN->error( "无法找到相关的匹配数据" );
}
$DB->query( "DELETE FROM ibf_titles WHERE id='".$IN['id']."'" );
$ADMIN->save_log( "删除用户头衔等级设置" );
$ADMIN->done_screen( "用户头衔等级已经删除", "用户头衔等级设置", "act=mem&code=title" );
}
function edit_rank( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
if ( $IN['id'] == "" )
{
$ADMIN->error( "无法找到相关的匹配数据" );
}
foreach ( array( "posts", "title", "pips" ) as $field )
{
if ( $IN[$field] == "" )
{
$ADMIN->error( "你必须填写全部表单数据" );
}
}
$db_string = $DB->compile_db_update_string( array(
"posts" => trim( $IN['posts'] ),
"title" => trim( $IN['title'] ),
"pips" => trim( $IN['pips'] )
) );
$DB->query( "UPDATE ibf_titles SET {$db_string} WHERE id='".$IN['id']."'" );
$ADMIN->save_log( "编辑用户头衔等级设置" );
$ADMIN->done_screen( "用户头衔等级设置已经编辑", "用户头衔等级设置", "act=mem&code=title" );
}
function rank_setup( $mode = "edit" )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
$ADMIN->page_title = "用户头衔等级设置";
$ADMIN->page_detail = "如果你希望在用户名称下面显示等级图片,那么请输入等级图片数量,如果你想使用定制的等级图片,只需要输入图片名称就可以了。但是图片必须上传到目录 'html/team_icons' 下。";
if ( $mode == "edit" )
{
$form_code = "do_rank_edit";
if ( $IN['id'] == "" )
{
$ADMIN->error( "没有用户头衔等级被设置,请重试!" );
}
$DB->query( "SELECT * from ibf_titles WHERE id='".$IN['id']."'" );
$rank = $DB->fetch_row( );
$button = "编辑完成";
}
else
{
$form_code = "do_add_rank";
$rank = array( "posts" => "", "title" => "", "pips" => "" );
$button = "添加用户头衔等级设置";
}
$ADMIN->html .= $SKIN->start_form( array(
1 => array(
"code",
$form_code
),
2 => array( "act", "mem" ),
3 => array(
"id",
$rank['id']
)
) );
$SKIN->td_header[] = array( " ", "40%" );
$SKIN->td_header[] = array( " ", "60%" );
$ADMIN->html .= $SKIN->start_table( "用户头衔等级设置" );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>用户头衔等级名称:</b>",
$SKIN->form_input( "title", $rank['title'] )
) );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>发表帖子数量:</b>",
$SKIN->form_input( "posts", $rank['posts'] )
) );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>等级图片数量:</b><br>(或填写图片名称)",
$SKIN->form_input( "pips", $rank['pips'] )
) );
$ADMIN->html .= $SKIN->end_form( $button );
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->output( );
}
function delete_form( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
$ADMIN->page_title = "用户删除选项";
$ADMIN->page_detail = "搜索需要删除的用户名称或使用下面的用户删除选项。";
$mem_group[0] = array( "0", "所有用户团队" );
$DB->query( "SELECT g_id, g_title FROM ibf_groups ORDER BY g_title" );
while ( $r = $DB->fetch_row( ) )
{
$mem_group[] = array(
$r['g_id'],
$r['g_title']
);
}
$ADMIN->html .= $SKIN->start_form( array(
1 => array( "code", "delete2" ),
2 => array( "act", "mem" )
) );
$SKIN->td_header[] = array( " ", "40%" );
$SKIN->td_header[] = array( " ", "60%" );
$ADMIN->html .= $SKIN->start_table( "搜索用户" );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>输入用户名称或包含字母?</b>",
$SKIN->form_input( "USER_NAME" )
) );
$ADMIN->html .= $SKIN->end_form( "搜索用户帐号" );
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->html .= $SKIN->start_form( array(
1 => array( "code", "prune" ),
2 => array( "act", "mem" )
) );
$SKIN->td_header[] = array( " ", "40%" );
$SKIN->td_header[] = array( " ", "60%" );
$ADMIN->html .= $SKIN->start_table( "<u>或者</u> 在这里选择如何删除用户帐号 ..." );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>距离用户最后发表帖子多少天前:</b><br>(留空表示忽略此选项)",
$SKIN->form_input( "last_post", "60" )
) );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b><u>和</u> 用户发表帖子小于数量:<br>(留空表示忽略此选项)",
$SKIN->form_input( "posts", "100" )
) );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b><u>和</u> 用户在多少天前注册的账号:<br>(留空表示忽略此选项)",
$SKIN->form_input( "joined", "365" )
) );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b><u>和</u> 用户团队是 ...</b>",
$SKIN->form_dropdown( "mgroup", $mem_group, 0 )
) );
$ADMIN->html .= $SKIN->end_form( "删除用户账号" );
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->output( );
}
function prune_confirm( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
$blanks = 0;
foreach ( array( "posts", "last_post", "joined" ) as $field )
{
if ( $IN[$field] == "" )
{
++$blanks;
}
}
if ( $blanks == 3 )
{
$ADMIN->error( "使用用户删除选项你必须选择至少一个删除选项" );
}
$time_now = time( );
$query = "SELECT COUNT(id) as mcount FROM ibf_members WHERE";
$add_query = array( );
if ( 0 < $IN['joined'] )
{
$j = $time_now - $IN['joined'] * 60 * 60 * 24;
$add_query[] = " joined < {$j} ";
}
if ( 0 < $IN['last_post'] )
{
$l = $time_now - $IN['last_post'] * 60 * 60 * 24;
$add_query[] = " last_post < {$l} ";
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -