|
「試合後の監督コメント」欄に管理者コメントを追加できるようにします。
試合を行ってコメントを残さなくても、管理者のみコメントを追加できるようになります。
新規参加者へのあいさつ、不正・暴言者への注意など、利用価値は高いのではないでしょうか。
管理者コメントは「管理モード」から、入力します。
■gekipawa.cgi
□モード選択部分(79行目)
if($form{'kiroku'}){
require './geki_else.cgi';
$no = $form{'no'};
if($no eq 1) { &last_team; }
elsif($no eq 2) { &last_play; }
elsif($no eq 3) { &past_rank; }
elsif($no eq 4 || $no eq 5) { &each_reco; }
else { &last_kekka; }
exit;
}
if($form{'rule'}) { &rule; exit; }
⊤
exit;
##### デコード&ローカル変数へ受け渡し
上記部分に下記赤字部分を追加する。
if($form{'kiroku'}){
require './geki_else.cgi';
$no = $form{'no'};
if($no eq 1) { &last_team; }
elsif($no eq 2) { &last_play; }
elsif($no eq 3) { &past_rank; }
elsif($no eq 4 || $no eq 5) { &each_reco; }
else { &last_kekka; }
exit;
}
if($form{'rule'}) { &rule; exit; }
if($form{'kanricom'}){ &kanricom; &kanri; exit; } # 管理者コメント
⊤
exit;
##### デコード&ローカル変数へ受け渡し
□コメント表示部分(317行目)
# コメント
open(CF,"$commentfile") || &error('指定されたファイルが開けません。');
seek(CF,0,0); @comments = <CF>; close(CF);
@com_pri = ();
$com_pri[0] = "<table border=1 width=\"$ysize\" cellpadding=5 cellspacing=0>\n";
$com_pri[1] = "<tr align=\"center\"><td>試合後の監督コメント</td></tr>\n";
$com_pri[2] = "<tr><td bgcolor=\"FFFFFF\">\n";
$i = 0;
foreach(@comments){
($no, $saku, $home, $date, $com, $kekka) = split /<>/;
$date = &date($date);
if($home){ $saku = "<a href=\"$home\" target=\"_blank\">$saku</a>"; }
if($no){
if($kekka){ $kekka = "【 $kekka 】"; }
$com_pri[$i+3] = "■ 劇ぱわニュース : 『 $com 』 $kekka ($date)\n";
}else{
$com_pri[$i+3] = "□ $saku : 『 $com 』 【 $kekka 】 ($date)\n";
}
if($i ne $#comments){
$com_pri[$i+3] = "$com_pri[$i+3]<hr width=\"70%\" size=1>\n";
}
$i++;
}
のオレンジ部分を下記赤字部分の様に変更します。
# コメント
open(CF,"$commentfile") || &error('指定されたファイルが開けません。');
seek(CF,0,0); @comments = <CF>; close(CF);
@com_pri = ();
$com_pri[0] = "<table border=1 width=\"$ysize\" cellpadding=5 cellspacing=0>\n";
$com_pri[1] = "<tr align=\"center\"><td>試合後の監督コメント</td></tr>\n";
$com_pri[2] = "<tr><td bgcolor=\"000000\">\n";
$i = 0;
foreach(@comments){
($no, $saku, $home, $date, $com, $kekka) = split /<>/;
$date = &date($date);
if($home){ $saku = "<a href=\"$home\" target=\"_blank\">$saku</a>"; }
if($no eq 1){
if($kekka){ $kekka = "【 $kekka 】"; }
$com_pri[$i+3] = " ■ Cat's eye Report : 『 $com 』 $kekka ($date)</font>\n";(←</font>は要りません。訂正します。2005/07/15)
$com_pri[$i+3] = " ■ Cat's eye Report : 『 $com 』 $kekka ($date)\n";
}elsif($no eq 0){
$com_pri[$i+3] = " □ $saku : 『 $com 』 【 $kekka 】 ($date)</font>\n";(←</font>は要りません。訂正します。2005/07/15)
$com_pri[$i+3] = " □ $saku : 『 $com 』 【 $kekka 】 ($date)\n";
}elsif($no eq 9){
$com_pri[$i+3] = "<font color=\"FF0000\">★ 管理者
: 『 $com 』 ($date)</font>\n";
}
if($i ne $#comments){
$com_pri[$i+3] = "$com_pri[$i+3]<hr width=\"70%\" size=1>\n";
}
$i++;
}
□コメント入力部分・ファイルへの書き込み部分(1,069行)
##### 管理用画面
sub kanri{
if($form{'kanripass'} ne $kanri_pass){ &error('パスワードが違います。'); }
&header;
print <<"_EOF_";
<font color="$tcolor" size="$tsize">管理モード画面</font><br>
<br><br><br>
チーム名を入力してください。<br>
<form action=$cgifile method=$method>
<input type=hidden name=login value=1>
<input type=hidden name=kanri_mode value=1>
<input type=text name=team size=15> <input type=submit name=login value="Enter">
</form>
<br><br>
_EOF_
# コメント
open(CF,"$commentfile") || &error('指定されたファイルが開けません。');
seek(CF,0,0); @comments = <CF>; close(CF);
print "<form action=$cgifile method=$method>\n";
print "<table border=1 width=$ysize cellpadding=5 cellspacing=0>\n";
print "<tr align=center><td>試合後の監督コメント</td></tr>\n";
$i = 0;
foreach(@comments){
($no, $saku, $home, $date, $com, $kekka) = split(/<>/, $_);
$date = &date($date);
print "<tr><td bgcolor=\"FFFFFF\">\n";
if($no){
if($kekka){ $kekka = "【 $kekka 】"; }
print "<input type=checkbox name=del$i value=$i> 劇ぱわニュース : 『 $com 』 $kekka ($date)\n";
}else{
print "<input type=checkbox name=del$i value=$i> $saku : 『 $com 』 【 $kekka 】 ($date)\n";
}
print "</td></tr>\n";
$i++;
}
print "</table><br>\n";
print "<input type=submit name=comdel value=\"コメント削除\">\n";
print "</form><br><br>\n";
&chosaku;
}#end kanri
##### コメントの削除処理
のオレンジ部分の変更と追加する部分を下記赤字部分の様に変更します。
##### 管理用画面
sub kanri{
if($form{'kanripass'} ne $kanri_pass){ &error('パスワードが違います。'); }
&header;
print <<"_EOF_";
<font color="$tcolor" size="$tsize">管理モード画面</font><br>
<br><br><br>
チーム名を入力してください。<br>
<form action=$cgifile method=$method>
<input type=hidden name=login value=1>
<input type=hidden name=kanri_mode value=1>
<input type=text name=team size=15> <input type=submit name=login value="Enter">
</form>
<br><br>
_EOF_
$comsize = $comleng * 2;
print "<form action=$cgifile method=$method>\n";
print "管理者コメント:";
print "<input type=text name=k_com size=$comsize>\n";
print " <input type=submit name=kanricom value=\"登録\">\n"; print "</form><br><br>\n";
# コメント
open(CF,"$commentfile") || &error('指定されたファイルが開けません。');
seek(CF,0,0); @comments = <CF>; close(CF);
print "<form action=$cgifile method=$method>\n";
print "<table border=1 width=$ysize cellpadding=5 cellspacing=0>\n";
print "<tr align=center><td>試合後の監督コメント</td></tr>\n";
$i = 0;
foreach(@comments){
($no, $saku, $home, $date, $com, $kekka) = split(/<>/, $_);
$date = &date($date);
print "<tr><td bgcolor=\"FFFFFF\">\n";
iif($no eq 1){(←iが二つありました……^^; 訂正します。2005/11/06)
if($no eq 1){
if($kekka){ $kekka = "【 $kekka 】"; }
$com_pri[$i+3] = " ■ Cat's eye Report : 『 $com 』 $kekka ($date)</font>\n";(←</font>は要りません。訂正します。2005/07/15)
$com_pri[$i+3] = " ■ Cat's eye Report : 『 $com 』 $kekka ($date)\n";(← 訂正します。2005/11/06)
print "<input type=checkbox name=del$i value=$i> 劇ぱわニュース
: 『 $com 』 $kekka ($date)\n";
}elsif($no eq 0){
$com_pri[$i+3] = " □ $saku : 『 $com 』 【 $kekka 】 ($date)</font>\n";(←</font>は要りません。訂正します。2005/07/15)
$com_pri[$i+3] = " □ $saku : 『 $com 』 【 $kekka 】 ($date)\n";(← 訂正します。2005/11/06)
print "<input type=checkbox name=del$i value=$i> $saku : 『
$com 』 【 $kekka 】 ($date)\n";
}elsif($no eq 9){
$com_pri[$i+3] = "<font color=\"FF0000\">★ 管理者
: 『 $com 』 ($date)</font>\n";(← 訂正します。2005/11/06)
print "<input type=checkbox name=del$i value=$i> ★ 管理者 :
『 $com 』 ($date)\n";
}
print "</td></tr>\n";
$i++;
}
print "</table><br>\n";
print "<input type=submit name=comdel value=\"コメント削除\">\n";
print "</form><br><br>\n";
&chosaku;
}#end kanri
# 管理者コメント記入処理 sub kanricom{
if(length($form{'k_com'}) < 1 || length($form{'k_com'}) > $comleng * 2){ &error('コメントの長さが正しくないよ。'); }
if(!$form{'k_com'}){ &error('コメントを入力してね。'); }
open(CF,"+<$commentfile") || &error('指定されたファイルが開けません。CF');
eval 'flock(CF,2);';
@comments = <CF>;
$kakiko = "9<>管理者<><>$times<>$form{'k_com'}<><>\n";
unshift(@comments, $kakiko);
splice(@comments, $com_max);
truncate (CF, 0);
seek(CF,0,0); print CF @comments;
close(CF);
eval 'flock(CF,8);';
$form{'$key'} = "kanri";
$form{'kanripass'} = $kanri_pass;
}#end kanricom
##### コメントの削除処理
※記述に誤りがありましたので修正しました。この色の部分を修正しました。(2005/07/15)
※記述に誤りがありましたので修正しました。この色の部分を修正しました。(2005/11/06)
|