📄 ad_groups.php
字号:
else
{
$reply .= $i.",";
}
}
}
if ( $IN["reply_".$row['id']] == 1 )
{
$reply .= $gid.",";
}
$reply = preg_replace( "/,\$/", "", $reply );
$reply = preg_replace( "/^,/", "", $reply );
}
if ( $row['start_perms'] == "*" )
{
$start = "*";
}
else
{
$start_ids = explode( ",", $row['start_perms'] );
if ( is_array( $start_ids ) )
{
foreach ( $start_ids as $i )
{
if ( $gid == $i )
{
}
else
{
$start .= $i.",";
}
}
}
if ( $IN["start_".$row['id']] == 1 )
{
$start .= $gid.",";
}
$start = preg_replace( "/,\$/", "", $start );
$start = preg_replace( "/^,/", "", $start );
}
if ( $row['upload_perms'] == "*" )
{
$upload = "*";
}
else
{
$upload_ids = explode( ",", $row['upload_perms'] );
if ( is_array( $upload_ids ) )
{
foreach ( $upload_ids as $i )
{
if ( $gid == $i )
{
}
else
{
$upload .= $i.",";
}
}
}
if ( $IN["upload_".$row['id']] == 1 )
{
$upload .= $gid.",";
}
$upload = preg_replace( "/,\$/", "", $upload );
$upload = preg_replace( "/^,/", "", $upload );
}
if ( !( $new_q = $DB->query( "UPDATE ibf_forums SET read_perms='{$read}', reply_perms='{$reply}', start_perms='{$start}', upload_perms='{$upload}' WHERE id='".$row['id']."'" ) ) )
{
exit( "更新数据失败,论坛栏目:".$row['id'] );
}
}
$ADMIN->save_log( "论坛栏目访问权限设置:'{$gr['g_title']}'" );
$ADMIN->done_screen( "论坛栏目访问权限已经更新", "用户团队管理", "act=group" );
}
function delete_form( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
if ( $IN['id'] == "" )
{
$ADMIN->error( "无法找到用户团队ID,请检查后重试!" );
}
if ( $IN['id'] < 5 )
{
$ADMIN->error( "无法移动用户团队,你可以对用户团队重新命名或编辑用户团队参数设置。" );
}
$ADMIN->page_title = "删除用户团队";
$ADMIN->page_detail = "在删除用户团队前,请仔细检查确认是否选择了正确的用户团队。";
$DB->query( "SELECT COUNT(id) as users FROM ibf_members WHERE mgroup='".$IN['id']."'" );
$black_adder = $DB->fetch_row( );
if ( $black_adder['users'] < 1 )
{
$black_adder['users'] = 0;
}
$DB->query( "SELECT g_title FROM ibf_groups WHERE g_id='".$IN['id']."'" );
$group = $DB->fetch_row( );
$DB->query( "SELECT g_id, g_title FROM ibf_groups WHERE g_id <> '".$IN['id']."'" );
$mem_groups = array( );
while ( $r = $DB->fetch_row( ) )
{
$mem_groups[] = array(
$r['g_id'],
$r['g_title']
);
}
$ADMIN->html .= $SKIN->start_form( array(
1 => array( "code", "dodelete" ),
2 => array( "act", "group" ),
3 => array(
"id",
$IN['id']
),
4 => array(
"name",
$group['g_title']
)
) );
$SKIN->td_header[] = array( " ", "40%" );
$SKIN->td_header[] = array( " ", "60%" );
$ADMIN->html .= $SKIN->start_table( "删除确认:".$group['g_title'] );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>当前用户团队的用户数量:</b>",
"<b>".$black_adder['users']."</b>"
) );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>移动这个用户团队中的所有用户到 ...</b>",
$SKIN->form_dropdown( "to_id", $mem_groups )
) );
$ADMIN->html .= $SKIN->end_form( "删除用户团队" );
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->output( );
}
function do_delete( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
if ( $IN['id'] == "" )
{
$ADMIN->error( "无法找到用户团队ID,请检查后重试!" );
}
if ( $IN['to_id'] == "" )
{
$ADMIN->error( "无法找到需要移动的用户团队ID,请检查后再试!" );
}
$DB->query( "SELECT g_id FROM ibf_groups WHERE g_id IN(".$IN['id'].",".$IN['to_id'].")" );
if ( $DB->get_num_rows( ) != 2 )
{
$ADMIN->error( "无法找到需要删除的用户团队ID,请检查后再试!" );
}
$DB->query( "UPDATE ibf_members SET mgroup='".$IN['to_id']."' WHERE mgroup='".$IN['id']."'" );
$DB->query( "DELETE FROM ibf_groups WHERE g_id='".$IN['id']."'" );
$prq = $DB->query( "SELECT g_id FROM ibf_groups WHERE g_promotion LIKE '{$IN['id']}&%'" );
while ( $row = $DB->fetch_row( $prq ) )
{
$nq = $DB->query( "UPDATE ibf_groups SET g_promotion='-1&-1' WHERE g_id='".$row['g_id']."'" );
}
$DB->query( "DELETE FROM ibf_moderators WHERE is_group=1 AND group_id=".$IN['id'] );
$ADMIN->save_log( "删除用户团队:'{$IN['name']}' removed" );
$ADMIN->done_screen( "用户团队已经删除", "用户团队管理", "act=group" );
}
function save_group( $type = "edit" )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
global $HTTP_POST_VARS;
if ( $IN['g_title'] == "" )
{
$ADMIN->error( "你必须输入用户团队名称。" );
}
if ( $type == "edit" )
{
if ( $IN['id'] == "" )
{
$ADMIN->error( "无法找到用户团队ID,请检查后再试!" );
}
if ( $IN['id'] == $INFO['admin_group'] && $IN['g_access_cp'] != 1 )
{
$ADMIN->error( "你不能删除论坛管理员团队,否则你将无法登录论坛管理中心。" );
}
}
$prefix = preg_replace( "/'/", "'", stripslashes( $HTTP_POST_VARS['prefix'] ) );
$prefix = preg_replace( "/</", "<", $prefix );
$suffix = preg_replace( "/'/", "'", stripslashes( $HTTP_POST_VARS['suffix'] ) );
$suffix = preg_replace( "/</", "<", $suffix );
$promotion_a = "-1";
$promotion_b = "-1";
if ( 0 < $IN['g_promotion_id'] )
{
$promotion_a = $IN['g_promotion_id'];
$promotion_b = $IN['g_promotion_posts'];
}
$db_string = array(
"g_view_board" => $IN['g_view_board'],
"g_mem_info" => $IN['g_mem_info'],
"g_other_topics" => $IN['g_other_topics'],
"g_use_search" => $IN['g_use_search'],
"g_email_friend" => $IN['g_email_friend'],
"g_invite_friend" => $IN['g_invite_friend'],
"g_edit_profile" => $IN['g_edit_profile'],
"g_post_new_topics" => $IN['g_post_new_topics'],
"g_reply_own_topics" => $IN['g_reply_own_topics'],
"g_reply_other_topics" => $IN['g_reply_other_topics'],
"g_edit_posts" => $IN['g_edit_posts'],
"g_edit_cutoff" => $IN['g_edit_cutoff'],
"g_delete_own_posts" => $IN['g_delete_own_posts'],
"g_open_close_posts" => $IN['g_open_close_posts'],
"g_delete_own_topics" => $IN['g_delete_own_topics'],
"g_post_polls" => $IN['g_post_polls'],
"g_vote_polls" => $IN['g_vote_polls'],
"g_use_pm" => $IN['g_use_pm'],
"g_is_supmod" => $IN['g_is_supmod'],
"g_access_cp" => $IN['g_access_cp'],
"g_title" => trim( $IN['g_title'] ),
"g_can_remove" => $IN['g_can_remove'],
"g_append_edit" => $IN['g_append_edit'],
"g_access_offline" => $IN['g_access_offline'],
"g_avoid_q" => $IN['g_avoid_q'],
"g_avoid_flood" => $IN['g_avoid_flood'],
"g_icon" => trim( $IN['g_icon'] ),
"g_attach_max" => $IN['g_attach_max'],
"g_avatar_upload" => $IN['g_avatar_upload'],
"g_calendar_post" => $IN['g_calendar_post'],
"g_max_messages" => $IN['g_max_messages'],
"g_max_mass_pm" => $IN['g_max_mass_pm'],
"g_search_flood" => $IN['g_search_flood'],
"prefix" => $prefix,
"suffix" => $suffix,
"g_promotion" => $promotion_a."&".$promotion_b,
"g_hide_from_list" => $IN['g_hide_from_list'],
"g_post_closed" => $IN['g_post_closed']
);
if ( $type == "edit" )
{
$rstring = $DB->compile_db_update_string( $db_string );
$DB->query( "UPDATE ibf_groups SET {$rstring} WHERE g_id='".$IN['id']."'" );
$DB->query( "UPDATE ibf_moderators SET group_name='".trim( $IN['g_title'] )."' WHERE group_id='".$IN['id']."'" );
$ADMIN->save_log( "编辑用户团队:'{$IN['g_title']}'" );
$ADMIN->done_screen( "用户团队编辑完成", "用户团队管理", "act=group" );
}
else
{
$rstring = $DB->compile_db_insert_string( $db_string );
$DB->query( "INSERT INTO ibf_groups (".$rstring['FIELD_NAMES'].") VALUES (".$rstring['FIELD_VALUES'].")" );
if ( $IN['inherit'] == 1 )
{
$new_id = $DB->get_insert_id( );
$old_id = intval( $IN['id'] );
if ( 0 < $new_id && 0 < $old_id )
{
$get = $DB->query( "SELECT id, read_perms, reply_perms, start_perms, upload_perms FROM ibf_forums" );
while ( $f = $DB->fetch_row( $get ) )
{
$d_str = "";
$d_arr = array( );
foreach ( array( "read_perms", "reply_perms", "start_perms", "upload_perms" ) as $perm_bit )
{
if ( !( $f[$perm_bit] != "*" ) && !preg_match( "/(^|,)".$old_id."(,|\$)/", $f[$perm_bit] ) )
{
$d_arr[$perm_bit] = $this->clean_perms( $f[$perm_bit] ).",".$new_id;
}
}
if ( 0 < count( $d_arr ) )
{
$d_str = $DB->compile_db_update_string( $d_arr );
if ( 5 < strlen( $d_str ) )
{
$save = $DB->query( "UPDATE ibf_forums SET {$d_str} WHERE id={$f['id']}" );
}
}
}
}
}
$ADMIN->save_log( "添加用户团队:'{$IN['g_title']}'" );
$ADMIN->done_screen( "用户团队已经添加", "用户团队管理", "act=group" );
}
}
function clean_perms( $str )
{
$str = preg_replace( "/,\$/", "", $str );
$str = str_replace( ",,", ",", $str );
return $str;
}
function group_form( $type = "edit" )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
$all_groups = array(
0 => array( "none", "暂不提升" )
);
if ( $type == "edit" )
{
if ( $IN['id'] == "" )
{
$ADMIN->error( "无法从数据库中找到相关的用户团队ID,请检查后再试!" );
}
$form_code = "doedit";
$button = "完成编辑";
}
else
{
$form_code = "doadd";
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -