#!/usr/local/bin/perl#---------------------------------------## PETIT BOARD v5.22 (2001/03/21) ## Copyright(C) Kent Web 1997-2001 ## webmaster@kent-web.com ## http://www.kent-web.com/ ##---------------------------------------##---------------------------------------## PETIT BOARD Next 3.6 (2001/05/15) ## 改造者:立川 よーま 2000-2001 ## webmaster@tri.site.ne.jp ## http://tri.site.ne.jp/ ##---------------------------------------##---------------------------------------## Aqua for Petit Board ## Ver2.0 (2001/06/17) ## 改造者:立川 よーま 2000-2001 ## webmaster@tri.site.ne.jp ## http://tri.site.ne.jp/ ##---------------------------------------## バージョン情報$ver = 'PETIT BOARD v5.22';$next = 'Aqua for Petit Board v2.0';#--- [注意事項] ------------------------------------------------## 1. このスクリプトはフリーソフトです。このスクリプトを使用した ## いかなる損害に対して作者は一切の責任を負いません。 ## 2. 設置に関する質問はサポート掲示板にお願いいたします。 ## 直接メールによる質問は一切お受けいたしておりません。 ##---------------------------------------------------------------##============## 設定項目 ##============## 文字コードライブラリ取込require './jcode.pl';# 初期設定ライブラリ読み込みrequire './pref.cgi';#============## 設定完了 ##============## メイン処理&decode;&axs_check;if ($mode eq "howto") {$modename = "掲示板の使い方"; &howto; }elsif ($mode eq "find") {$modename = "ワード検索"; &find; }elsif ($mode eq "usr_del") { &usr_del; }elsif ($mode eq "regist") { ®ist; }elsif ($mode eq "res") { &res_form; }elsif ($mode eq "admin") {$modename = '管理人モード'; &admin; }elsif ($mode eq "image") {$modename = 'イメージサンプル'; ℑ }elsif ($mode eq "past") {$modename = '過去ログモード'; &past; }&html_log;#--------------## 記事表示部 ##--------------#sub html_log { # クッキーを取得 &get_cookie; # フォーム長を調整 &get_agent; # ヘッダを出力 if ($ImageView == 1) { &header('ImageUp'); } else { &header; } # タイトル/カウンタ処理 if ($banner1 ne "") { print "$banner1
\n"; } &dlog_1; print "$title\n"; &dlog_2; print <<"HTML";
HTML # 過去ログのリンク部を表示 if ($pastkey) { print "\n"; } print <<"EOM";
EOM # 投稿フォーム表示 ®istform; &dlog_3; # ページ区切り処理 $start = $page + 1; $end = $page + $p_log; # 記事を展開 open(IN,"$logfile") || &error("ログファイルが開けません:$logfile"); $top = ; $i=0; $flag=0; print "
\n"; # ログ書き出し処理 ▽ここから # データー形式:記事番号,レスのフラグ,投稿日,投稿者,投稿者のメール,記事のタイトル, # 記事,ホームページ,投稿者のホスト,パスワード,記事の文字色,アイコン,テーブル背景色 print "\n"; while () { $rf_flag=1; ($no,$reno,$date,$name,$mail,$sub, $comment,$url,$host,$pw,$color,$icon,$tbl_color) = split(/<>/); if ($reno eq "") { $i++; $j++;} if ($i < $start) { next; } if ($i > $end) { last; } # ナビゲーション用 $nav_next = ($j + 1); $nav_prev = ($j - 1); # ホームページのリンクの処理 if ($home_icon && $url) { $url = "
"; }elsif (!$home_icon && $url) { $url = "<HOME>"; } # 親記事の時で、レスがないとき、ここでテーブルを閉じ、返信フォームを表示する if (!$reno && $flag) { &window_4; &res_form("$res_num"); $flag=1; &window_5; print "
\n\n"; } # 親記事のときは、一番外側のテーブルを表示 if (!$reno) { &window_1; $flag=1; } # レスの時に区切り線を表示 if ($reno && !$res_flag) { print "
\n"; $res_flag=1; } elsif (!$reno && $res_flag) { $res_flag=0; } if (!$reno) { print "
"; print "[$no] $sub"; print "/$name\n"; &window_2; # 親記事の場合 $res_num = $no; print "投稿日:$date\n"; # ホストを表示 if ($showhost) { print "($host)"; } else { print "";} print "$url"; &window_3; # 親記事専用テーブルを表示 print "\n"; # アイコンモード if ($icon_mode) { # アイコンが見つからないときの処理 if (!(-e "$IconPath/$icon")){ $icon = $DefImg;} # テーブルを区切ってアイコンを表示 print " | \n"; }else{ # 非アイコンモード時の処理 $comment = "$comment
"; } # 記事を表示 print "$comment | "; } else { # レス記事の場合レス記事表示用テーブルを表示 print ""; # 投稿者(EメールがCookieにある場合は、リンクもはる) if ($mail) { print "$name"; }else{ print "$name"; } print " > | \n"; # レス記事を表示 print "$comment"; # 投稿日/記事番号を表示 print "<$date> No\.$no\n"; # ホストを表示 if ($showhost) { print " ($host)" } else{ print " "; } } print " |
\n"; } close(IN); if ($rf_flag) { &window_4; &res_form("$res_num"); &window_5; print "\n"; } # 一度に表示される親記事数をログの記事から計算 $next_page = $page + $p_log; $back_page = $page - $p_log; print "\n"; if ($back_page >= 0) { print " | \n"; } if ($next_page < $i) { print " | \n"; } print "
\n"; &dlog_1; print "【記事削除フォーム】\n"; &dlog_2; print "
\n"; &dlog_3; # Eメールチェック用JavaScriptを表示 if ($emailchk){ &emailchkjs; } &footer;}#----------------------## 投稿フォーム表示部 ##----------------------#sub registform { print <<"EOM";\n";}#------------------## アイコンモード ##------------------#sub select_icon{ # アイコン無しとランダムを配列の先頭に追加 @icon1 = reverse @icon1; @icon2 = reverse @icon2; if ($randamicon){ # ランダム push (@icon1,"randam"); push (@icon2,"ランダム"); } # なし push (@icon1,"$DefImg"); push (@icon2,"なし"); @icon1 = reverse @icon1; @icon2 = reverse @icon2; # 管理者アイコンを配列に付加 if ($my_icon) { push(@icon1,"admin"); push(@icon2,"管理者用"); } print "イメージ | (あなたのイメージを選択して下さい。)"; # イメージ参照のリンク if ($ImageView == 1) { print "[画像イメージ参照] \n"; } else { print "[画像イメージ参照] \n"; } print " |
\n";}sub footer{ # 著作権表示部 (削除改変を禁止) print "$banner2\n\n"; if ($input_border){ print "\n";} print "- PetitBoard -\n"; print " - $next - By立川 よーま \n"; print "\n"; if ($input_border){ print " |
\n";} print "