📄 setforums.cgi
字号:
<td bgcolor=#FFFFFF valign=middle align=left>
<input type=text size=40 name="forumname" value="$forumname" maxlength=40></td>
</tr>
<tr>
<td bgcolor=#FFFFFF valign=middle align=left width=40%>
<font face=宋体 color=#333333><b>论坛描述</b><br>请输入新论坛的描述</font></td>
<td bgcolor=#FFFFFF valign=middle align=left>
<input type=text size=40 name="forumdescription" value="$forumdescription"></td>
</tr>
<tr>
<td bgcolor=#FFFFFF valign=middle align=left width=40%>
<font face=宋体 color=#333333><b>论坛版主</b><br>请输入论坛版主,如果您希望有多个版主,请使用 "," (英文逗号,不是中文逗号)隔开。<BR><B>例如</B>:山鹰糊, 花无缺</font></td>
<td bgcolor=#FFFFFF valign=middle align=left>
<input type=text size=40 name="forummoderator" value="$forummoderator"></td>
</tr>
<tr>
<td bgcolor=#FFFFFF valign=middle align=left width=40%>
<font face=宋体 color=#333333><b>是否使用 HTML 标签?</b></font></td>
<td bgcolor=#FFFFFF valign=middle align=left>
<select name="htmlstate">
<option value="on">使用<option value="off" selected>不使用</select>
</td>
</tr>
<tr>
<td bgcolor=#FFFFFF valign=middle align=left width=40%>
<font face=宋体 color=#333333><b>是否使用 ib2000 标签?</b></font></td>
<td bgcolor=#FFFFFF valign=middle align=left>
<select name="idmbcodestate">
<option value="on" selected>使用<option value="off">不使用</select>
</td>
</tr>
<tr>
<td bgcolor=#FFFFFF valign=middle align=left width=40%>
<font face=宋体 color=#333333><b>是否作为私有论坛?</b></font></td>
<td bgcolor=#FFFFFF valign=middle align=left>
<select name="privateforum">
<option value="yes">是<option value="no" selected>否</select>
</td>
</tr>
<tr>
<td bgcolor=#FFFFFF valign=middle align=left width=40%>
<font face=宋体 color=#333333><b>谁可以在此论坛发贴子?</b></font></td>
<td bgcolor=#FFFFFF valign=middle align=left>
<select name="startnewthreads">
<option value="yes" selected>所有注册用户<option value="no">只有坛主或版主</select>
</td>
</tr>
<tr>
<td bgcolor=#FFFFFF valign=middle align=left width=40%>
<font face=宋体 color=#333333><b>论坛图片</b><br>请输入图片名称,此图片被用来放置在页面左边菜单下。<BR><b>不要包含 URL 地址或绝对路径!</b></font></td>
<td bgcolor=#FFFFFF valign=middle align=left>
<input type=text size=40 name="forumgraphic" value="logo.gif"></td>
</tr>
<tr>
<td bgcolor=#FFFFFF valign=middle align=center colspan=2>
<input type=submit value="提 交"></form></td></tr></table></td></tr></table>
~;
} # end route
##################################################################################
######## Subroutes ( Create Forum )
sub createforum {
&errorout("对不起,论坛名字过长,请控制在 20 个汉字内!") if (length($new_forumname) >40);
&errorout("论坛描述不能空!!") if ($new_forumdescription eq "");
$filetoopen = "$ikondir" . "data/allforums.cgi";
open(FILE, "$filetoopen");
@forums = <FILE>;
close(FILE);
# Create a new number for the new forum folder, and files.
foreach (@forums) {
($forumid, $binit) = split(/\|/,$_);
if ($forumid > $high) { $high = $forumid; }
}
$high++;
$newforumid = $high;
# Lets create the directory.
$dirtomake = "$ikondir" . "forum$newforumid";
mkdir ("$dirtomake", 0755);
# Lets add a file to stop snoops, and to use to see if the forum was created
$filetomake = "$dirtomake/index.html";
open(FILE,">$filetomake");
print FILE "-";
close(FILE);
$filetomake = "$dirtomake/.htaccess";
open(FILE, ">$filetomake");
flock (FILE, 2) if ($OS_USED eq "Unix");
print FILE "AuthUserFile /dev/null\n";
print FILE "AuthGroupFile /dev/null\n";
print FILE "AuthName DenyViaWeb\n";
print FILE "AuthType Basic\n";
print FILE "\n\n\n\n";
print FILE "<Limit GET>\n";
print FILE "order allow,deny\n";
print FILE "deny from all\n";
print FILE "</Limit>\n";
close (FILE);
$filetoopen = "$ikondir" . "data/allforums.cgi";
open(FILE, "$filetoopen");
@forums = <FILE>;
close(FILE);
open(FILE, ">$filetoopen");
flock(FILE, 2) if ($OS_USED eq "Unix");
foreach $line (@forums) {
chomp $line;
print FILE "$line\n";
}
print FILE "$newforumid|$new_categoryname|$new_categorynumber|$new_forumname|$new_forumdescription|$new_forummoderator|$new_htmlstate|$new_idmbcodestate|$new_privateforum|$new_startnewthreads|||0|0|$new_forumgraphic";
close(FILE);
print qq~
<tr><td bgcolor=#333333" colspan=2><font face=宋体 color=#FFFFFF>
<b>欢迎来到论坛管理中心 / 增加论坛结果</b>
</td></tr>
<tr>
<td bgcolor=#FFFFFF valign=middle align=left colspan=2>
<font face=宋体 color=#333333>
~;
print "<b>详细资料</b><p>\n";
print "<ul>\n";
if (-e $dirtomake) {
print "<li><b>新论坛目录已经建立</b><p>\n";
}
else {
print "<li><b>新论坛目录没有建立</b><p>请查看是否改变了目录属性?请改属性回 777 !<p>\n";
}
$filetoopen = "$dirtomake/index.html";
if (-e $filetoopen) {
print "<li><b>新论坛 (index.html) 文件建立</b><p>\n";
}
else {
print "<li><b>新论坛 (index.html) 文件没有建立</b><p>请查看是否改变了目录属性?请改属性回 777 !\n";
}
print "$filetoopen<p>\n";
print "</ul></td></tr></table></td></tr></table>\n";
} ######## end routine
##################################################################################
######## Subroutes ( Warning of Delete Forum )
sub warning { #start
print qq~
<tr><td bgcolor=#333333" colspan=2><font face=宋体 color=#FFFFFF>
<b>欢迎来到论坛管理中心 / 删除论坛</b>
</td></tr>
<tr>
<td bgcolor=#EEEEEE valign=middle align=center colspan=2>
<font face=宋体 color=#990000><b>警告!!</b>
</td></tr>
<tr>
<td bgcolor=#FFFFFF valign=middle align=center colspan=2>
<font face=宋体 color=#333333>如果您确定要删除论坛,那么请点击下面链接<p>
>> <a href="$thisprog?action=delete&checkaction=yes&forum=$inforum">删除论坛以及论坛下的所有文件</a> <<
</td></tr>
</table></td></tr></table>
~;
} # end routine
##################################################################################
######## Subroutes ( Deletion of a Forum )
sub deleteforum { #start
$dirtoopen = "$ikondir" . "forum$inforum";
opendir (DIR, "$dirtoopen");
@dirdata = readdir(DIR);
closedir (DIR);
@thd = grep(/thd$/,@dirdata);
$thdcount = @thd;
@mal = grep(/mal$/,@dirdata);
@list = grep(/cgi$/,@dirdata);
foreach $topic (@thd) {
$filetoopen = "$ikondir" . "forum$inforum/$topic";
open (FILE, "$filetoopen");
@threads = <FILE>;
close (FILE);
$newthreads = @threads;
$threadcount = $threadcount + $newthreads -1;
}
foreach $file (@thd) {
$filetoremove = "$dirtoopen/$file";
unlink $filetoremove;
}
foreach $file (@mal) {
$filetoremove = "$dirtoopen/$file";
unlink $filetoremove;
}
foreach $file (@list) {
$filetoremove = "$dirtoopen/$file";
unlink $filetoremove;
}
# Remove all remaining files.
foreach $file (@dirdata) {
$filetoremove = "$dirtoopen/$file";
unlink $filetoremove;
}
$dirtoremove = "$ikondir" . "forum$inforum";
rmdir $dirtoremove;
$filetoopen = "$ikondir" . "data/allforums.cgi";
open(FILE,"$filetoopen") or &systemerror("不能找到文件 $filetoopen");
flock (FILE, 2) if ($OS_USED eq "Unix");
@forums = <FILE>;
close(FILE);
open(FILE,">$filetoopen");
flock(FILE,2) if ($OS_USED eq "Unix");
foreach $forum (@forums) {
chomp $forum;
($forumid,$category,$notneeded,$notneeded) = split(/\|/,$forum);
unless ($forumid eq "$inforum") {
print FILE "$forum\n";
}
}
close(FILE);
require "$ikondir" . "data/boardstats.cgi";
$filetomake = "$ikondir" . "data/boardstats.cgi";
$totalthreads = $totalthreads - $thdcount;
$totalposts = $totalposts - $threadcount;
open(FILE, ">$filetomake");
flock(FILE, 2) if ($OS_USED eq "Unix");
print FILE "\$lastregisteredmember = \"$lastregisteredmember\"\;\n";
print FILE "\$totalmembers = \"$totalmembers\"\;\n";
print FILE "\$totalthreads = \"$totalthreads\"\;\n";
print FILE "\$totalposts = \"$totalposts\"\;\n";
print FILE "\n1\;";
close (FILE);
$threadcount = 0 if ($threadcount eq "");
print qq~
<tr><td bgcolor=#333333" colspan=2><font face=宋体 color=#FFFFFF>
<b>欢迎来到论坛管理中心 / 删除论坛结果</b>
</td></tr>
<tr>
<td bgcolor=#FFFFFF valign=middle align=left colspan=2>
<font face=宋体 color=#990000>
<center><b>论坛已被删除</b></center><p>
共有 $thdcount 主题被删除<p>
共有 $threadcount 回复被删除
</td></tr></table></td></tr></table>
~;
} # routine ends
##################################################################################
######## Subroutes ( Editing of a Forum )
sub editform {
# Grab the line to edit.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -