📄 admin2.php3
字号:
<?php
// This sheet is diplayed when the admin wants to modify the list of banished users
// The admin has required an action to be done
if (isset($FORM_SEND) && $FORM_SEND == 2)
{
// A registred user have to be deleted ?
$DELETE_MODE = ($submit_type == A_SHEET2_7)? 1:0;
// Get the list of the users
$DbLink->query("SELECT username FROM ".C_BAN_TBL);
$users = Array();
while (list($username) = $DbLink->next_record())
{
$ban_users[] = $username;
};
$DbLink->clean_results();
for (reset($ban_users); $username=current($ban_users); next($ban_users))
{
$usr = urlencode($username);
$VarName = "user_".$usr;
if (!isset($$VarName)) continue;
// Remove banishment
if ($DELETE_MODE)
{
$VarName = "delete_".$usr;
if (isset($$VarName))
{
$uuu = addslashes($username);
$DbLink->query("DELETE FROM ".C_BAN_TBL." WHERE username='$uuu'");
// Optimize the registered users table when a MySQL DB is used
if (C_DB_TYPE == "mysql") $DbLink->optimize(C_BAN_TBL);
}
}
// Modify list of banished rooms for an user
else
{
$VarName = "rooms_".$usr; $rrr = $$VarName;
$VarName = "until_".$usr; $ttt = $$VarName;
$VarName = "old_rooms_".$usr; $old_rrr = $$VarName;
$VarName = "old_until_".$usr; $old_ttt = $$VarName;
if ($rrr == $old_rrr && $ttt == $old_ttt) continue;
$AddUntil = ($ttt == "forever" ? ", ban_until='99999999999'" : "");
$uuu = addslashes($username);
$DbLink->query("UPDATE ".C_BAN_TBL." SET rooms='$rrr'".$AddUntil." WHERE username='$uuu'");
// banish the user if he's currently chatting
if ($rrr == "*")
{
$DbLink->query("UPDATE ".C_USR_TBL." SET status='b' WHERE username='$uuu'");
}
else
{
$DbLink->query("SELECT room FROM ".C_USR_TBL." WHERE username='$uuu' LIMIT 1");
$in_room = ($DbLink->num_rows() != 0);
if ($in_room)
{
list($room) = $DbLink->next_record();
$DbLink->clean_results();
if (room_in(addslashes($room), $rrr)) $DbLink->query("UPDATE ".C_USR_TBL." SET status='b' WHERE username='$uuu'");
}
else
{
$DbLink->clean_results();
};
};
};
};
};
// Remove banishment of users when necessary (time for banishment expire or no room)
$ToCheck = "rooms = ''";
if (!isset($FORM_SEND)) $ToCheck = "ban_until < ".time()." OR ".$ToCheck;
$DbLink->query("DELETE FROM ".C_BAN_TBL." WHERE ".$ToCheck);
?>
<TABLE BORDER=0 CELLPADDING=3 CLASS=table>
<?php
// Ensure at least one banished user exist
$DbLink->query("SELECT COUNT(*) FROM ".C_BAN_TBL." LIMIT 1");
list($count_BanUsers) = $DbLink->next_record();
$DbLink->clean_results();
if ($count_BanUsers != 0)
{
?>
<!-- Banished users form -->
<TR>
<TD ALIGN=CENTER>
<FORM ACTION="<?php echo("$From?$URLQueryBody"); ?>" METHOD="POST" AUTOCOMPLETE="OFF" NAME="Form2">
<INPUT TYPE=hidden NAME="From" value="<?php echo($From); ?>">
<INPUT TYPE=hidden NAME="user" value="<?php echo(htmlspecialchars(stripslashes($user))); ?>">
<INPUT TYPE=hidden NAME="pswd" value="<?php echo($pswd); ?>">
<INPUT TYPE=hidden NAME="sortBy" value="<?php echo($sortBy); ?>">
<INPUT TYPE=hidden NAME="sortOrder" value="<?php echo($sortOrder); ?>">
<INPUT TYPE=hidden NAME="FORM_SEND" value="2">
<TABLE BORDER=0 CELLSPACING=5 WIDTH=100%>
<TR>
<TH COLSPAN=5 CLASS=tabtitle><?php echo(A_SHEET2_1); ?></TH>
</TR>
<TR>
<TD VALIGN=CENTER ALIGN=CENTER>
</TD>
<TD VALIGN=CENTER ALIGN=LEFT>
<A HREF="<?php echo("$From?$URLQueryBody_Links&sortBy=username"); if ($sortBy == "username") echo("&sortOrder=$New_sortOrder"); ?>"><?php echo(A_SHEET1_2); ?></A>
</TD>
<TD VALIGN=CENTER ALIGN=CENTER>
<A HREF="<?php echo("$From?$URLQueryBody_Links&sortBy=ip"); if ($sortBy == "ip") echo("&sortOrder=$New_sortOrder"); ?>"><?php echo(A_SHEET2_2); ?></A>
</TD>
<TD VALIGN=CENTER ALIGN=CENTER>
<?echo(A_SHEET2_3)?> (*)
</TD>
<TD VALIGN=CENTER ALIGN=CENTER>
<?echo(A_SHEET2_4)?>
</TD>
</TR>
<?php
function special_char($str,$lang)
{
return ($lang ? htmlentities($str) : htmlspecialchars($str));
}
$DbLink->query("SELECT username,latin1,ip,rooms,ban_until FROM ".C_BAN_TBL." ORDER BY $sortBy $sortOrder");
while (list($username,$Latin1,$ip,$rooms,$until) = $DbLink->next_record())
{
?>
<INPUT TYPE="hidden" NAME="user_<?echo(urlencode($username))?>" VALUE="1">
<TR>
<TD VALIGN=CENTER ALIGN=CENTER>
<INPUT type=checkbox name="delete_<?echo(urlencode($username))?>" value="1">
</TD>
<TD VALIGN=CENTER ALIGN=LEFT>
<?php echo(special_char($username,$Latin1)); ?>
</TD>
<TD VALIGN=CENTER ALIGN=CENTER>
<?php echo($ip); ?>
</TD>
<TD VALIGN=CENTER ALIGN=CENTER>
<INPUT type=text name="rooms_<?echo(urlencode($username))?>" value="<?echo(stripslashes(htmlspecialchars($rooms)))?>" SIZE="40">
<INPUT type="hidden" name="old_rooms_<?echo(urlencode($username))?>" value="<?echo(htmlspecialchars($rooms))?>">
</TD>
<TD VALIGN=CENTER ALIGN=CENTER>
<SELECT name="until_<?echo(urlencode($username))?>">
<?php
// banished users for more than one year -> forever
$ForeverVal = time() + (60 * 60 * 24 * 365);
if ($until > $ForeverVal)
{
?>
<OPTION value="forever" SELECTED><?php echo(A_SHEET2_5); ?></OPTION>
<?php
}
else
{
?>
<OPTION value="date" SELECTED><?php echo(date("M j, Y - h:i a",$until + C_TMZ_OFFSET*60*60)); ?></OPTION>
<OPTION value="forever"><?php echo(A_SHEET2_5); ?></OPTION>
<?php
};
?>
</SELECT>
<INPUT type="hidden" name="old_until_<?echo(urlencode($username))?>" value="<?echo($until > $ForeverVal ? "forever" : "date")?>">
</TD>
</TR>
<?
};
$DbLink->clean_results();
?>
<TR>
<TD VALIGN=CENTER ALIGN=CENTER COLSPAN=5>
<FONT size=-1>* <?echo(A_SHEET2_6)?></FONT>
</TD>
</TR>
<TR><TD> </TD></TR>
<TR>
<TD VALIGN=CENTER ALIGN=CENTER COLSPAN=4>
<INPUT TYPE="submit" NAME=submit_type VALUE="<?php echo(A_SHEET2_7); ?>">
</TD>
<TD VALIGN=CENTER ALIGN=CENTER>
<INPUT TYPE="submit" NAME=submit_type VALUE="<?php echo(A_SHEET1_7); ?>">
</TD>
</TR>
</TABLE>
</FORM>
</TD>
</TR>
<?php
}
else
{
?>
<TR>
<TH COLSPAN=5>
<TABLE BORDER=0 WIDTH=100%>
<TR>
<TH COLSPAN=5 CLASS=tabtitle><?php echo(A_SHEET2_1); ?></TH>
</TR>
<TR><TD> </TD></TR>
<TR>
<TD COLSPAN=5 ALIGN=CENTER CLASS=error><?php echo(A_SHEET2_8); ?></TD>
</TR>
</TABLE>
</TH>
</TR>
<?php
};
?>
</TABLE>
<?php
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -