📄 profile.cgi
字号:
#!/usr/bin/perl
#############################################################
# Ikonboard v2.1
# Copyright 2000 Ikondiscussion.com - All Rights Reserved
# Ikondiscussion is a trademark of Ikondiscussion.com
#
# Software Distributed by: Ikondiscussion.com
# Visit us online at http://www.ikondiscussion.com
# Email us on boards@ikondiscussion.com
#
# All files written by Matthew Mecham
#############################################################
#use CGI::Carp "fatalsToBrowser"; # Output errors to browser
use CGI qw(:standard); # Saves loads of work
$CGI::POST_MAX=1024 * 150; # limit post data
$CGI::DISABLE_UPLOADS = 1; # Disable uploads
eval {
($0 =~ m,(.*)/[^/]+,) and unshift (@INC, "$1");
($0 =~ m,(.*)\\[^\\]+,) and unshift (@INC, "$1");
require "data/progs.cgi"; # Require prog names
require "data/boardinfo.cgi";# Require board info
require "data/styles.cgi"; # Require styles info
require "ikonmail.lib"; # Require styles info
require "data/membertitles.cgi";
require "ikon.lib"; # Require ikonboard ()
};
if ($@) {
print header(-charset=>"gb2312"); print start_html(-title=>"ib2000 出错!");
print "不能够找到文件:$@\n如果您使用的是 Windows 类操作系统,请在每一个程序中更改 require 的设置,填入绝对路径!";
print end_html; exit;
}
$|++; # Unbuffer the output
#################--- Begin the program ---###################
$thisprog = "profile.cgi";
$query = new CGI;
&checkVALIDITY;
$boardurltemp =$boardurl;
$boardurltemp =~ s/http\:\/\/(\S+?)\/(.*)/\/$2/;
$cookiepath = $boardurltemp;
$cookiepath =~ y/$thisprog//;
$action = $query -> param('action');
$inmember = $query -> param('member');
$inmembername = $query -> param("membername");
$inpassword = $query -> param("password");
$oldpassword = $query -> param("oldpassword");
$action = &cleaninput("$action");
$inmember = &cleaninput("$inmember");
$inmembername = &cleaninput("$inmembername");
$inpassword = &cleaninput("$inpassword");
if (! $inmembername) { $inmembername = cookie("amembernamecookie"); }
if (! $inpassword) { $inpassword = cookie("apasswordcookie"); }
if ($inmembername eq "") { $inmembername = "客人"; }
else {
&getmemberstime("$inmembername");
}
if ($arrawsignpic eq "on") { $signpicstates = "允许";} else {$signpicstates = "禁止";}
if ($arrawsignfontsize eq "on") { $signfontsizestates = "允许";} else {$signfontsizestates = "禁止";}
if ($arrawsignsound eq "on") { $signsoundstates = "允许";} else {$signsoundstates = "禁止";}
# Print the page title
print header(-cookie=>[$namecookie, $passcookie], -charset=>"gb2312");
&title;
$output .= qq~
<table cellpadding=0 cellspacing=0 border=0 width=$tablewidth align=center>
<tr>
<td width=30% rowspan=2 valign=top>
<img src="$imagesurl/images/$boardlogo" border=0>
</td>
<td valign=top align=left>
<font face="$font" color=$fontcolormisc>
<img src="$imagesurl/images/closedfold.gif" border=0> <a href="$forumsummaryprog">$boardname</a>
<br>
<img src="$imagesurl/images/bar.gif" border=0 width=15 height=15><img src="$imagesurl/images/openfold.gif" border=0> 用户资料
</td>
</tr>
</table>
<p>
<table cellpadding=0 cellspacing=0 border=0 width=$tablewidth bgcolor=$tablebordercolor align=center>
<tr><td>
<table cellpadding=6 cellspacing=1 border=0 width=100%>
~;
my %Mode = (
'show' => \&showprofile,
'process' => \&savemodify,
'lostpassword' => \&lostpasswordform,
'lostpass' => \&lostpasswordform,
'sendpassword' => \&sendpassword,
'modify' => \&modify,
);
if($Mode{$action}) {
$Mode{$action}->();
}
else{
$inmembername =~ s/\_/ /g;
$output .= qq~
<tr>
<td bgcolor=$miscbacktwo valign=middle colspan=2 align=center>
<form action="$thisprog" method="post">
<input type=hidden name="action" value="modify">
<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></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>
~;
} # end else
&output(
-Title => $boardname,
-ToPrint => $output,
-Version => $versionnumber
);
# lost password routine
sub lostpasswordform {
$helpurl = &helpfiles("遗忘密码");
$helpurl = qq~$helpurl<img src="$imagesurl/images/help_b.gif" border=0></a>~;
$output =~ s/\ \;用户资料/\ \;忘记密码/g;
$output .= qq~
<p>
<tr>
<td bgcolor=$miscbacktwo valign=middle colspan=2 align=center>
<form action="$thisprog" method="post">
<input type=hidden name="action" value="sendpassword">
<font face="$font" color=$fontcolormisc><b>请输入您的用户名,我们可以将您的密码通过邮件发给您!</b></font></td></tr>
<tr>
<td bgcolor=$miscbackone><font face="$font" color=$fontcolormisc>请输入您的用户名</td>
<td bgcolor=$miscbackone><input type=text name="membername"> $helpurl</td></tr>
<td bgcolor=$miscbacktwo valign=middle colspan=2 align=center><input type=submit name=submit value="提 交">
</td></form></tr></table></td></tr></table>
~;
} # end lost password form.
sub sendpassword {
&getmember("$inmembername");
if ($membercode eq "ad") { &blocked; }
elsif ($userregistered ne "no") { # start emailing functions
$message .= "\n";
$message .= "$boardname\n";
$message .= "$boardurl/$forumsummaryprog\n\n";
$message .= "------------------------------------\n";
$message .= "应您的要求,现将您的密码寄给您!\n\n";
$message .= "您的密码是:$password\n\n";
$message .= "------------------------------------\n";
$to = "$emailaddress";
$from = "$homename <$adminemail_out>";
$subject = "忘记密码[$boardname]";
&sendmail($from, $from, $to, $SMTP_SERVER, $subject, $message );
$output =~ s/用户资料/密码已经寄出/g;
$output .= qq~
<tr>
<td bgcolor=$miscbacktwo valign=middle align=center><font face="$font" color=$fontcolormisc><b>你好,$inmembername</b></font></td></tr>
<tr>
<td bgcolor=$miscbackone align=center><font face="$font" color=$fontcolormisc>
您的密码已经成功的通过指定的邮件地址发送给您了。
</td></tr></table></td></tr></table>
~;
} # end user registered.
else {
&error("请求密码&不是注册用户!");
}
} # end routine.
################ show profile subroutine
sub showprofile {
$inmember =~ s/\_/ /isg;
&whosonline("$inmembername|个人资料|none|查看<b>$inmember</b>的个人资料|");
&getmember("$inmember");
if ($numberofposts >= $mpostmark11) { $mtitle = $mtitle11; $membergraphic = $mgraphic11; }
elsif ($numberofposts >= $mpostmark10) { $mtitle = $mtitle10; $membergraphic = $mgraphic10; }
elsif ($numberofposts >= $mpostmark9) { $mtitle = $mtitle9; $membergraphic = $mgraphic9; }
elsif ($numberofposts >= $mpostmark8) { $mtitle = $mtitle8; $membergraphic = $mgraphic8; }
elsif ($numberofposts >= $mpostmark7) { $mtitle = $mtitle7; $membergraphic = $mgraphic7; }
elsif ($numberofposts >= $mpostmark6) { $mtitle = $mtitle6; $membergraphic = $mgraphic6; }
elsif ($numberofposts >= $mpostmark5) { $mtitle = $mtitle5; $membergraphic = $mgraphic5; }
elsif ($numberofposts >= $mpostmark4) { $mtitle = $mtitle4; $membergraphic = $mgraphic4; }
elsif ($numberofposts >= $mpostmark3) { $mtitle = $mtitle3; $membergraphic = $mgraphic3; }
elsif ($numberofposts >= $mpostmark2) { $mtitle = $mtitle2; $membergraphic = $mgraphic2; }
elsif ($numberofposts >= $mpostmark1) { $mtitle = $mtitle1; $membergraphic = $mgraphic1; }
else { $mtitle = $mtitle0; $membergraphic = ""; } #显示默认等级
if ($showemail ne "yes") { $emailaddress = "保密"; }
else { $emailaddress = qq~<a href="mailto:$emailaddress">$emailaddress</a>~; }
if ($aolname eq "") { $aolname = "没有"; $aollogo ="";} else {$aollogo = qq~<a href=http://search.tencent.com/cgi-bin/friend/user_show_info?ln=$aolname target=_blank><img src="http://icon.tencent.com/$aolname/s/00/00/" alt="查看 OICQ:$aolname 的资料" border=0 width=16 height=16></a>~;}
if ($icqnumber eq "") { $icqnumber = "没有"; $icqlogo = ""; } else { $icqlogo = qq~<a href=$miscprog?action=icq&UIN=$icqnumber target=_blank><img src="http://wwp.icq.com/scripts/online.dll?icq=$icqnumber&img=7" alt="给 ICQ:$icqnumber 发个消息" border=0 width=16 height=16></a>~; }
if ((($membercode eq "ad")&&($membertitle eq "Member"))||(($membercode eq "ad")&&($membertitle eq "member")))
{ $membertitle = "论坛坛主"; }
if ((($membercode eq "mo")&&($membertitle eq "Member"))||(($membercode eq "mo")&&($membertitle eq "member")))
{ $membertitle = "论坛版主";}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -