📄 postings.cgi
字号:
unless ($cleartoedit eq "yes") { $cleartoedit = "no"; }
if ($cleartoedit eq "no" && $checked eq "yes") { &error("主题锁定&您不是本论坛坛主或版主,或者您的密码错误!"); }
if (($cleartoedit eq "yes") && ($checked eq "yes")) {
my $file = "$ikondir" . "forum$inforum/$intopic.pl";
open (ENT, $file);
$in = <ENT>;
close (ENT);
($topicid, $topictitle, $topicdescription, $threadstate, $threadposts ,$threadviews, $startedby, $startedpostdate, $lastposter, $lastpostdate) = split(/\|/,$in);
open(FILE, ">$file");
flock(FILE, 2) if ($OS_USED eq "Unix");
print FILE "$intopic|$topictitle|$topicdescription|closed|$threadposts|$threadviews|$startedby|$startedpostdate|$inmembername|$currenttime|";
close(FILE);
rebuildLIST(-Forum=>"$inforum");
$output .= qq~
<table cellpadding=0 cellspacing=0 border=0 width=$tablewidth bgcolor=$tablebordercolor align=center>
<tr>
<td>
<table cellpadding=6 cellspacing=1 border=0 width=100%>
<tr>
<td bgcolor=$miscbacktwo valign=middle align=center><font face="$font" color=$fontcolormisc><b>主题锁定成功</b></font></td></tr>
<tr>
<td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>
具体情况:
<ul>
<li><a href="$forumsprog?forum=$inforum">返回论坛</a>
<li><a href="$forumsummaryprog">返回论坛首页</a>
</ul>
</tr>
</td>
</table></td></tr></table>
~;
} # end if clear to edit
else {
$inmembername =~ s/\_/ /g;
$output .= qq~
<table cellpadding=0 cellspacing=0 border=0 width=$tablewidth bgcolor=$tablebordercolor align=center>
<tr><td>
<table cellpadding=6 cellspacing=1 border=0 width=100%>
<tr>
<td bgcolor=$miscbacktwo valign=middle colspan=2 align=center>
<form action="$thisprog" method="post">
<input type=hidden name="action" value="lock">
<input type=hidden name="checked" value="yes">
<input type=hidden name="forum" value="$inforum">
<input type=hidden name="topic" value="$intopic">
<font face="$font" color=$fontcolormisc><b>请输入您的用户名、密码进入版主模式 [主题锁定]</b></font></td></tr>
<tr>
<td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>请输入您的用户名</font></td>
<td bgcolor=$miscbackone valign=middle><input type=text name="membername" value="$inmembername"0></td></tr>
<tr>
<td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>请输入您的密码</font></td>
<td bgcolor=$miscbackone valign=middle><input type=password name="password" value="$inpassword"0> <font face="$font" color=$fontcolormisc><a href="$profileprog?action=lostpass">忘记密码?</a></font></td></tr>
<tr>
<td bgcolor=$miscbacktwo valign=middle colspan=2 align=center><input type=submit name="submit" value="登 陆"></td></form></tr></table></td></tr></table>
</table></td></tr></table>
~;
}
} # end lockthread
###########################
sub unlockthread {
&getmember("$inmembername");
&moderator;
$cleartoedit = "no";
&mischeader("主题解锁");
if (($membercode eq "ad") && ($inpassword eq $password)) { $cleartoedit = "yes"; }
if (($inmembmod eq "yes") && ($inpassword eq $password)) { $cleartoedit = "yes"; }
unless ($cleartoedit eq "yes") { $cleartoedit = "no"; }
if ($cleartoedit eq "no" && $checked eq "yes") { &error("主题解锁&您不是本论坛坛主或版主,或者您的密码错误!"); }
if (($cleartoedit eq "yes") && ($checked eq "yes")) {
my $file = "$ikondir" . "forum$inforum/$intopic.pl";
open (ENT, $file);
$in = <ENT>;
close (ENT);
($topicid, $topictitle, $topicdescription, $threadstate, $threadposts ,$threadviews, $startedby, $startedpostdate, $lastposter, $lastpostdate) = split(/\|/,$in);
open(FILE, ">$file");
flock(FILE, 2) if ($OS_USED eq "Unix");
print FILE "$intopic|$topictitle|$topicdescription|open|$threadposts|$threadviews|$startedby|$startedpostdate|$inmembername|$currenttime|";
close(FILE);
rebuildLIST(-Forum=>"$inforum");
$output .= qq~
<table cellpadding=0 cellspacing=0 border=0 width=$tablewidth bgcolor=$tablebordercolor align=center>
<tr>
<td>
<table cellpadding=6 cellspacing=1 border=0 width=100%>
<tr>
<td bgcolor=$miscbacktwo valign=middle align=center><font face="$font" color=$fontcolormisc><b>主题解锁成功</b></font></td></tr>
<tr>
<td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>
详细资料:
<ul>
<li><a href="$forumsprog?forum=$inforum">返回论坛</a>
<li><a href="$forumsummaryprog">返回论坛首页</a>
</ul>
</tr>
</td>
</table></td></tr></table>
~;
} # end if clear to edit
else {
$inmembername =~ s/\_/ /g;
$output .= qq~
<table cellpadding=0 cellspacing=0 border=0 width=$tablewidth bgcolor=$tablebordercolor align=center>
<tr><td>
<table cellpadding=6 cellspacing=1 border=0 width=100%>
<tr>
<td bgcolor=$miscbacktwo valign=middle colspan=2 align=center>
<form action="$thisprog" method="post">
<input type=hidden name="action" value="unlock">
<input type=hidden name="checked" value="yes">
<input type=hidden name="forum" value="$inforum">
<input type=hidden name="topic" value="$intopic">
<font face="$font" color=$fontcolormisc><b>请输入您的用户名、密码进入版主模式 [主题解锁]</b></font></td></tr>
<tr>
<td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>请输入您的用户名</font></td>
<td bgcolor=$miscbackone valign=middle><input type=text name="membername" value="$inmembername"0></td></tr>
<tr>
<td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>请输入您的密码</font></td>
<td bgcolor=$miscbackone valign=middle><input type=password name="password" value="$inpassword"0> <font face="$font" color=$fontcolormisc><a href="$profileprog?action=lostpass">忘记密码?</a></font></td></tr>
<tr>
<td bgcolor=$miscbacktwo valign=middle colspan=2 align=center><input type=submit name="submit" value="登 陆"></td></form></tr></table></td></tr></table>
</table></td></tr></table>
~;
}
} # end unlockthread
###########################
sub deletepost {
$filetoopen = "$ikondir" . "forum$inforum/$intopic.thd";
if (-e $filetoopen) {
open(FILE, "$filetoopen") or &error("删除&这个主题不存在!");
@allthreads = <FILE>;
close(FILE);
}
else { unlink ("$ikondir" . "forum$inforum/$intopic.pl"); &error("删除&这个主题不存在!可能已经被删除!"); }
$posttodelete = $inpostno;
$posttodelete--;
$postcountcheck = 0;
$totalposts = @allthreads;
&getmember("$inmembername");
&moderator;
$cleartoedit = "no";
if (($membercode eq "ad") && ($inpassword eq $password)) { $cleartoedit = "yes"; }
if (($inmembmod eq "yes") && ($inpassword eq $password)) { $cleartoedit = "yes"; }
unless ($cleartoedit eq "yes") { $cleartoedit = "no"; }
if ($cleartoedit eq "no" && $checked eq "yes") { &error("删除回复&您不是本论坛坛主或版主,或者您的密码错误!"); }
if ($cleartoedit eq "yes") {
if ($posttodelete eq "0") { &error("删除回复&这里是用来删除回复的,不能删除主题!"); }
### First off, lets delete the post in the thread.
$filetoopen = "$ikondir" . "forum$inforum/$intopic.thd";
open(FILE, ">$filetoopen");
flock(FILE, 2) if ($OS_USED eq "Unix");
foreach $postline (@allthreads) {
chomp $postline;
unless ($postcountcheck eq $posttodelete) { print FILE "$postline\n"; }
$postcountcheck++;
}
close(FILE);
$filetoopen = "$ikondir" . "forum$inforum/$intopic.thd";
open(FILE, "$filetoopen");
@allthreads = <FILE>;
close(FILE);
$totalposts = @allthreads;
$posttograb = $totalposts;
$posttograb--;
($postermembername2, $topictitle2, $postipaddress2, $showemoticons2, $showsignature2 ,$postdate2, $post2, $posticon2) = split(/\|/, @allthreads[$posttograb]);
### Now we have to adjust the post counts.
$filetoopen = "$ikondir" . "forum$inforum/list.cgi";
open(FILE, "$filetoopen");
@alltopics = <FILE>;
close(FILE);
$count = "0";
foreach $line (@alltopics) { #start foreach @threads
($tempno, $trash) = split(/\|/, $line);
if ($intopic eq $tempno) {
$linetokeep = $line;
$keepcounter = $count;
}
$count++;
} # end foreach
($topicid, $topictitle, $topicdescription, $threadstate, $threadposts ,$threadviews, $startedby, $startedpostdate, $lastposter, $lastpostdate, $posticon) = split(/\|/,$linetokeep);
$threadposts = $totalposts - 1;
$filetomake = "$ikondir" . "forum$inforum/list.cgi";
open(FILE, ">$filetomake");
flock(FILE, 2) if ($OS_USED eq "Unix");
foreach $newline (@alltopics) { #start foreach @threads
chomp($newline);
($tempno, $trash) = split(/\|/,$newline);
if ($intopic eq $tempno) {
print FILE "$topicid|$topictitle|$topicdescription|$threadstate|$threadposts|$threadviews|$startedby|$startedpostdate|$postermembername2|$postdate2|\n";
}
else { print FILE "$newline\n"; }
}
close(FILE);
### Get the new last forum poster, and post date.
$filetoopen = "$ikondir" . "forum$inforum/list.cgi";
open(FILE, "$filetoopen");
@alltopics = <FILE>;
close(FILE);
$linetokeep = @alltopics[0];
chomp $linetokeep;
($trash, $trash, $trash, $trash, $trash, $trash, $trash, $trash, $lastforumposter, $lastforumpostdate) = split(/\|/,$linetokeep);
chomp $forumlastposter;
chomp $forumlastpostdate;
### Adjust the variables in the Forums Summary Page.
$filetoopen = "$ikondir" . "data/allforums.cgi";
open(FILE, "$filetoopen");
@allforums = <FILE>;
close(FILE);
$filetomake = "$ikondir" . "data/allforums.cgi";
open(FILE, ">$filetomake");
flock(FILE, 2) if ($OS_USED eq "Unix");
foreach $forum (@allforums) { #start foreach @forums
chomp($forum);
($tempno, $trash) = split(/\|/,$forum);
if ($inforum eq $tempno) {
($forumid, $category, $categoryplace, $forumname, $forumdescription, $forummoderator ,$htmlstate ,$idmbcodestate ,$privateforum, $startnewthreads ,$lastposter ,$lastposttime, $threads, $posts, $forumgraphic) = split(/\|/,$forum);
$posts--;
print FILE "$forumid|$category|$categoryplace|$forumname|$forumdescription|$forummoderator|$htmlstate|$idmbcodestate|$privateforum|$startnewthreads|$lastforumposter|$lastforumpostdate|$threads|$posts|$forumgraphic|\n";
}
else { print FILE "$forum\n"; }
}
close(FILE);
require "$ikondir" . "data/boardstats.cgi";
$filetomake = "$ikondir" . "data/boardstats.cgi";
$totalposts--;
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);
&mischeader("删除回复");
$output .= qq~
<table cellpadding=0 cellspacing=0 border=0 width=$tablewidth bgcolor=$tablebordercolor align=center>
<tr>
<td>
<table cellpadding=6 cellspacing=1 border=0 width=100%>
<tr>
<td bgcolor=$miscbacktwo valign=middle align=center><font face="$font" color=$fontcolormisc><b>回复已删除</b></font></td></tr>
<tr>
<td bgcolor=$miscbackone valign=middle><font face="$font" color=$fontcolormisc>
Status:
<ul>
<li><a href="$threadprog?forum=$inforum&topic=$intopic">返回主题</a>
<li><a href="$forumsprog?forum=$inforum">返回论坛</a>
<li><a href="$forumsummaryprog">返回论坛首页</a>
</ul>
</tr>
</td>
</table></td></tr></table>
~;
} # end if clear to edit
else { &error("删除回复&您不是坛主或版主!"); }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -