⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shareforums.cgi

📁 一个linux论坛
💻 CGI
📖 第 1 页 / 共 2 页
字号:
#!/usr/bin/perl
#############################################################
#  LeoBoard ver.5000 / LB5000 / 雷傲超级论坛 ver.5000
#
#  版权所有: 雷傲工作室(原蓝宝石软件工作室)
#
#  制作人  : 山鹰糊 (Shining Hu)
#            花无缺 (Ifairy Han)
#           
#  主页地址: http://www.CGIer.com/      CGI 编程者之家
#	     http://www.LeoBoard.com/   雷傲论坛支持主页
#	     http://www.leoBBS.com/     本论坛直通车
#            http://mail@17do.com/      大家一起邮
#            
#############################################################
BEGIN {
    $LBPATH = '.';
    my $pgm = $0;
    $pgm =~s/\\/\//g;
    $pgm =~s/^.*\/([^\/]+)$/$1/g;
    unless (-e $LBPATH.'/'.$pgm) {
        foreach ($0, $ENV{'SCRIPT_FILENAME'}, $ENV{'PATH_TRANSLATED'}) {
            s!\\!/!g; s/^(.*)\/[^\/]+$/$1/g;
            if (-e $_ . '/' .$pgm) { $LBPATH = $_; last; }
        }
    }
    unshift (@INC, "$LBPATH");
}
use LBCGI;
$LBCGI::POST_MAX=1024*150;
$LBCGI::DISABLE_UPLOADS = 1;
$LBCGI::HEADERS_ONCE = 1;
require "lbadmin.lib.pl";
require "data/boardinfo.cgi";
require "lb.lib.pl";

$|++;                                     # Unbuffer the output

#################--- Begin the program ---###################
$thisprog = "shareforums.cgi";

$query = new LBCGI;

&ipbanned; #封杀一些 ip

$inmembername = $query->cookie("adminname");
$inpassword   = $query->cookie("adminpass");
$inmembername =~ s/[\a\f\n\e\0\r\t\`\~\!\@\#\$\%\^\&\*\(\)\+\=\\\{\}\;\'\:\"\,\.\/\<\>\?]//isg;
$inpassword =~ s/[\a\f\n\e\0\r\t\|\@\;\#\{\}\$]//isg;

	@params = $query->param;
	foreach $param(@params) {
		$theparam = $query->param($param);
        	$theparam = &cleaninput("$theparam");
		$PARAM{$param} = $theparam;
	    }



    $action      =  $PARAM{'action'};
    $forumid     =  $PARAM{'forum'};
    $new_forumname   =  $PARAM{'forumname'};
    $new_forumurl    =  $PARAM{'forumurl'};
    $new_foruminfo   =  $PARAM{'foruminfo'};
    $new_forumorder  =  $PARAM{'forumorder'};
    $new_weblogo     =  $PARAM{'weblogo'}; 
    $checkaction     =  $PARAM{'checkaction'};
    $oldforum        =  $PARAM{'oldforum'};
    $oforumname	     =  $PARAM{'oforumname'};
    
&getadmincheck;
print header(-charset=>gb2312);

&admintitle;
        
&getmember("$inmembername");
        
        if (($membercode eq "ad") && ($inpassword eq $password) && ($password ne "") && ($inmembername ne "") && (lc($inmembername) eq lc($membername))) { #s1
            
            my %Mode = ( 
            'addforum'            =>    \&addforum,
            'processnew'          =>    \&createforum,
            'edit'                =>    \&editform,
            'doedit'              =>    \&doedit,       
            'order'               =>    \&orderform,
            'reorder'             =>    \&reorderformnow,
            );


            if($Mode{$action}) { 
               $Mode{$action}->();
               }
                elsif (($action eq "delete") && ($checkaction ne "yes")) { &warning; }
                elsif (($action eq "delete") && ($checkaction eq "yes")) { &deleteforum; }
                else { &forumlist; }
            
            } #e1
                
                else {
                    &adminlogin;
                    }
        

##################################################################################
sub reorderformnow {
    $filetoopen = "$lbdir" . "data/shareforums.cgi";
    &winlock($filetoopen) if ($OS_USED eq "Nt");
    open(FILE, "$filetoopen");
    flock(FILE, 1) if ($OS_USED eq "Unix");
    my @forums = <FILE>;
    close(FILE);
    $forumnamenum = 0;
    foreach $forum (@forums) { #start foreach @forums
        chomp $forum;
	next if ($forum eq "");
	$forumnamenum++;
        ($forumname, $forumurl, $foruminfo, $forumorder, $weblogo) = split(/\t/,$forum);
	next if ($forumname eq "");
	if ($forumnamenum eq $oldforum) {
	    $holdforuminfo = $forum;
	    last;
	}
    } # end foreach (@forums)

    open(FILE, ">$filetoopen");
    flock(FILE, 2) if ($OS_USED eq "Unix");
    $forumnamenum = 0;
    foreach $forum (@forums) { #start foreach @forums
        chomp $forum;
	next if ($forum eq "");
	$forumnamenum ++;
        ($forumname, $forumurl, $foruminfo, $forumorder, $weblogo) = split(/\t/,$forum);
	next if ($forumname eq "");
    	next if ($forumnamenum eq $oldforum);
	print FILE "$forum\n";
	if ($forumnamenum eq $forumid) {
	    print FILE "$holdforuminfo\n";
	}

    } # end foreach (@forums)
    close(FILE);
    &winunlock($filetoopen) if ($OS_USED eq "Nt");

                print qq~
                <tr><td bgcolor=#333333" colspan=2><font color=#FFFFFF>
                <b>欢迎来到论坛管理中心 / 联盟论坛排序名称结果</b>
                </td></tr>
                <tr>
                <td bgcolor=#EEEEEE align=center colspan=2>
                <font color=#333333><b>所有信息已经成功保存</b>
                </td></tr></table></td></tr></table>
                ~;
}

sub orderform {
    print qq~
    <tr><td bgcolor=#333333 colspan=3><font face=宋体 color=#FFFFFF>
    <b>欢迎来到论坛管理中心 / 联盟论坛管理</b>
    </td></tr>
    <tr><td bgcolor=#FFFFFF colspan=3><font face=宋体 color=#333333>
    <b>注意事项:</b><br><br>
    在此您可以将联盟论坛重新排序。</td></tr>
    ~;

         print qq~
            <tr>
            <td bgcolor=#FFFFFF colspan=3 ><font face=宋体 color=#333333><hr noshade>
            </td></tr>
            <tr>
            <td bgcolor=#EEEEEE width=20% nowrap><font face=宋体 color=#333333>
            <form action="$thisprog" method="post">
            <input type=hidden name="action" value="reorder">
            <input type=hidden name="oldforum" value="$forumid">
       把联盟论坛 "<font color=red>$oforumname</font>" 移动到<BR> </font>
            <select name="forum">
       ~;
    $filetoopen = "$lbdir" . "data/shareforums.cgi";
    &winlock($filetoopen) if ($OS_USED eq "Nt");
    open(FILE, "$filetoopen");
    flock(FILE, 1) if ($OS_USED eq "Unix");
    @forums = <FILE>;
    close(FILE);
    &winunlock($filetoopen) if ($OS_USED eq "Nt");
$forumnamenum = 0;
    foreach $forum (@forums) { #start foreach @forums
        chomp $forum;
	next if ($forum eq "");
	$forumnamenum++;
        ($forumname, $forumurl, $foruminfo, $forumorder, $weblogo) = split(/\t/,$forum);
	next if ($forumname eq "");
    	next if ($forumnamenum eq $forumid);
         print qq~
	<option value=\"$forumnamenum\"> $forumname\n
	~;

    } # end foreach (@forums)
         print qq~</select> 下面。
                   </td></tr>
                    <tr>
                    <td bgcolor=#EEEEEE>
                    <BR>   <input type=submit value="提 交"></td></form></tr></table></td></tr></table>~;
    
} # end routine.

sub forumlist {
    $highest = 0;
    print qq~
    <tr><td bgcolor=#333333 colspan=3><font face=宋体 color=#FFFFFF>
    <b>欢迎来到论坛管理中心 / 联盟论坛管理</b>
    </td></tr>
    <tr><td bgcolor=#FFFFFF colspan=3><font face=宋体 color=#333333>
    <b>注意事项:</b><br><br>
    在下面,您将看到目前所有的联盟论坛。您可以编辑联盟论坛名或是增加一个新的联盟论坛。 
    也可以编辑或删除目前存在的联盟论坛。您可以对目前的联盟重新进行排列。<br>
    </td></tr>
    ~;

    $filetoopen = "$lbdir" . "data/shareforums.cgi";
    &winlock($filetoopen) if ($OS_USED eq "Nt");
    open(FILE, "$filetoopen");
    flock(FILE, 1) if ($OS_USED eq "Unix");
    my @forums = <FILE>;
    close(FILE);
    &winunlock($filetoopen) if ($OS_USED eq "Nt");

    foreach $forum (@forums) { #start foreach @forums
        chomp $forum;
	next if ($forum eq "");
        ($forumname, $forumurl, $foruminfo, $forumorder, $weblogo) = split(/\t/,$forum);
        $rearrange = ("$forumname\t$forumurl\t$foruminfo\t$forumorder\t$weblogo");
        push (@rearrangedforums, $rearrange);

    } # end foreach (@forums)

         print qq~
            <tr>
            <td bgcolor=#FFFFFF colspan=3 ><font face=宋体 color=#333333><hr noshade>
            </td></tr>
            <tr>
            <td bgcolor=#EEEEEE width=20% nowrap><font face=宋体 color=#333333>
       <a href="$thisprog?action=addforum">增加新的联盟论坛</a></font></td>
            </td></tr>
       
       ~;
    @finalsortedforums = @rearrangedforums;
    $forumnamenum = 0;
    foreach $sortedforums (@finalsortedforums) { #start foreach @finalsortedforums

        ($forumname, $forumurl, $foruminfo, $forumorder, $weblogo) = split(/\t/,$sortedforums);
        $forumnamenum++;
       
               print qq~
                <tr>
                <td bgcolor=#FFFFFF colspan=3 align=left><hr noshade width=70%><font face=宋体 color=#333333>
                <b>联盟论坛名称</b>: $forumname<BR><b>联盟论坛 URL</b>: $forumurl<br><b>联盟论坛LOGO</b>: $weblogo<br><b>联盟论坛简介</b>: $foruminfo<br>
                <br><a href="$thisprog?action=edit&forum=$forumnamenum">编辑此联盟论坛</a> | <font face=宋体 color=#333333><a href="$thisprog?action=delete&forum=$forumnamenum&oforumname=$forumname">删除此联盟论坛</a> | <font face=宋体 color=#333333><a href="$thisprog?action=order&forum=$forumnamenum&oforumname=$forumname">区内排序联盟论坛</a> </font></td>
                </font></td></tr>
                ~;
       
            } # end foreach
    
               
        print qq~
        <td bgcolor=#FFFFFF colspan=3 ><font face=宋体 color=#333333><hr noshade>
        </td></tr>
             <tr>
            <td bgcolor=#EEEEEE width=20% nowrap><font face=宋体 color=#333333>
       <a href="$thisprog?action=addforum">增加新的联盟论坛</a></font></td>
            </td></tr>
        </tr></table></td></tr></table>~;
    
} # end routine.

sub addforum {

        print qq~
        <tr><td bgcolor=#333333" colspan=2><font face=宋体 color=#FFFFFF>
        <b>欢迎来到论坛管理中心 / 增加联盟论坛</b>
        </td></tr>
        ~;

 
        print qq~
        
                     
        <form action="$thisprog" method="post">
        <input type=hidden name="action" value="processnew">       
        <tr>
        <td bgcolor=#FFFFFF valign=middle align=left width=40%>
        <font face=宋体 color=#333333><b>联盟论坛名称</b><br>请输入新联盟论坛的名称<BR>(请控制在 20 个汉字内)</font></td>
        <td bgcolor=#FFFFFF valign=middle align=left>
        <input type=text size=40 name="forumname" maxlength=40></td>
        </tr>       
        
        <tr>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -