#!/usr/local/bin/perl
## YY-BOARD v3.52 (2000/11/03)
## Copyright(C) Kent Web 1997-2000
## webmaster@kent-web.com
## http://www.kent-web.com/
# バージョン情報
$ver = 'YYBBS v3.52';
#--- [注意事項] ------------------------------------------------#
# 1. このスクリプトはフリーソフトです。このスクリプトを使用した #
# いかなる損害に対して作者は一切の責任を負いません。 #
# 2. 設置に関する質問はサポート掲示板にお願いいたします。 #
# 直接メールによる質問は一切お受けいたしておりません。 #
# 3. 添付の home.gif は L.O.V.E の mayuRin さんによる画像です。 #
#---------------------------------------------------------------#
#============#
# 設定項目 #
#============#
# 文字コードライブラリ取込
require './jcode.pl';
# タイトル名を指定
$title = "YY-BOARD";
# タイトルの色
$t_color = "#008080";
# タイトルの大きさ(ポイント数:スタイルシートで有効)
$t_size = '18pt';
# タイトル文字のフォントタイプ
$t_face = "MS Pゴシック";
# 本文の文字大きさ(ポイント数:スタイルシートで有効)
$b_size = '10pt';
# 壁紙を指定する場合(http://から指定)
$backgif = "";
# 背景色を指定
$bgcolor = "#E1F0F0";
# 文字色を指定
$text = "#000000";
# リンク色を指定
$link = "#0000FF"; # 未訪問
$vlink = "#800080"; # 訪問済
$alink = "#FF0000"; # 訪問中
# 戻り先のURL (index.htmlなど)
$homepage = "../index.html";
# 最大記事数
$max = 100;
# 管理者用マスタパスワード (英数字で8文字以内)
#
# pass word
$pass = 'hot1336';
# アイコン画像のある「ディレクトリ」
# --> yybbs.cgi と別ディレクトリとなる場合は、http://から記述する。
$imgurl = ".";
# アイコンを定義(上下は必ずペアで)
#@icon1 = ('bear.gif','cat.gif','cow.gif','dog.gif','fox.gif','hituji.gif',
# 'monkey.gif','zou.gif','mouse.gif','panda.gif','pig.gif','usagi.gif');
#@icon2 = ('くま','ねこ','うし','いぬ','きつね','ひつじ',
# 'さる','ぞう','ねずみ','パンダ','ぶた','うさぎ');
@icon1 = ('buta.gif','datyou.gif','hamaguri.gif','hebi.gif',
'hitsuji.gif','inoshishi.gif','inu.gif','kaeru.gif',
'kame.gif','neko.gif','nezumi.gif','niwatori.gif',
'otama.gif','raion.gif','sai.gif','saru.gif',
'tatsu.gif','tora.gif','uma.gif','usagi.gif',
'ushi.gif','wani.gif','zou.gif');
@icon2 = ('ぶた','だちょう','はまぐり','へび',
'ひつじ','いのしし','いぬ','かえる',
'かめ','ねこ','ねずみ','にわとり',
'おたま','らいおん','さい','さる',
'たつ','とら','うま','うさぎ',
'うし','わに','ぞう');
# 管理者専用アイコン機能 (0=no 1=yes)
# --> 【使い方】記事投稿時に「管理者アイコン」を選択し、削除キーに
# 「管理用パスワード」を入力して下さい。
$my_icon = 0;
# 管理者専用アイコンの「ファイル名」を指定
$my_gif = 'admin.gif';
# アイコンモード (0=no 1=yes)
$icon_mode = 1;
# 返信がつくと親記事をトップへ移動 (0=no 1=yes)
$topsort = 0;
# ホスト名取得モード
# --> 0 : $ENV{'REMOTE_HOST'} で取得できる場合
# --> 1 : gethostbyaddr で取得できる場合
$get_remotehost = 0;
# タイトルにGIF画像を使用する時 (http://から記述)
$title_gif = "";
$tg_w = '150'; # GIF画像の幅 (ピクセル)
$tg_h = '50'; # 〃 高さ (ピクセル)
# ファイルロック形式
# --> 0=no 1=symlink関数 2=open関数
# --> 1 or 2 を設定する場合は、ロックファイルを生成するディレクトリ
# のパーミッションは 777 に設定する。
$lockkey = 0;
# ロックファイル名
$lockfile = "./yybbs.lock";
# カウンタのロックファイル
$cntlock = "./yycnt.lock";
# ミニカウンタの設置
# --> 0=no 1=テキスト 2=GIF画像
$counter = 1;
# ミニカウンタの桁数
$mini_fig = 6;
# テキストのとき:ミニカウンタの色
$cnt_color = "#DD0000";
# GIFのとき:画像までのディレクトリ
$gif_path = ".";
$mini_w = 8; # 画像の横サイズ
$mini_h = 12; # 画像の縦サイズ
# カウンタファイル
$cntfile = "./count.dat";
# タグの許可 (0=no 1=yes)
$tagkey = 0;
# スクリプトのファイル名
# --> フルパスで指定する場合は http:// から記述
$script = "./yybbs.cgi";
# ログファイルを指定
# --> フルパスで指定する場合は / から記述
$logfile = "./yybbs.log";
# 記事 [タイトル] 部の長さ (全角文字換算)
$sub_len = '20';
# 記事の [タイトル] 部の色
$sub_color = "#006400";
# 記事表示部の下地の色
$tbl_color = "#FFFFFF";
# 家アイコンの使用 (0=no 1=yes)
$home_icon = 1;
$home_gif = "home.gif"; # 家アイコンのファイル名
$home_wid = 16; # 画像の横サイズ
$home_hei = 20; # 〃 縦サイズ
# イメージ参照画面の表示形態
# 1 : JavaScript
# 2 : HTML (JavaScriptが不安定なブラザが多い場合はこちら)
$ImageView = 1;
# イメージ参照画面のサイズ (JavaScriptの場合)
$img_w = '550'; # 横幅
$img_h = '450'; # 高さ
# methodの形式 (POST/GET)
$method = 'POST';
# 記事の更新は method=POST 限定 (0=no 1=yes)
# --> 連続投稿などの荒らし対策
$MethPost = 1;
# 同一IPアドレスからの連続投稿時間(秒数)
# --> 連続投稿などの荒らし対策
# --> 値を 0 にするとこの機能は無効になります
$wait = 30;
# 1ページ当たりの記事表示数 (親記事)
$p_log = 10;
# 投稿があるとメール通知する (sendmail必須)
# 0 : 通知しない
# 1 : 通知するが、自分の投稿記事はメールしない。
# 2 : 通知する。自分の投稿記事も通知する。
$mailing = 0;
# メールアドレス(メール通知する時)
#
# mail adress
$mailto = 'webmaster@maru-yoshi.com';
# sendmailパス(メール通知する時)
$sendmail = '/usr/lib/sendmail';
# 他サイトから投稿排除時に指定 (http://から書く)
$base_url = "";
# 文字色の設定。
@COLORS = ('800000','DF0000','008040','0000FF','C100C1','FF80C0','FF8040','000080');
# 投稿フォーム改行形式 (soft=手動 hard=強制)
$wrap = 'soft';
# URLの自動リンク (0=no 1=yes)
# --> タグ許可の場合は no とすること。
$autolink = 1;
# タグ広告挿入オプション (FreeWebなど)
# → の代わりに「広告タグ」を挿入する。
# → 広告タグ以外に、MIDIタグ や LimeCounter等のタグにも使用可能です。
$banner1 = ''; # 掲示板上部に挿入
$banner2 = ''; # 掲示板下部に挿入
# アクセス制限(ホスト名を記述)
@deny = (
"anonymizer",
"cache*.*.interlog.com",
"",
"",
"",
"",
"",
"",
""
);
#---(以下は「過去ログ」機能を使用する場合の設定です)---#
#
# 過去ログ生成 (0=no 1=yes)
$pastkey = 0;
# 過去ログ用NOファイル
$nofile = "./pastno.dat";
# 過去ログのディレクトリ
$pastdir = ".";
# 過去ログ1ファイルの行数
# (この行数を超えると次ページを自動生成します)
$log_line = '150';
# 過去ログ管理ファイル
$yybbs2 = "./yybbs2.cgi";
#============#
# 設定完了 #
#============#
# メイン処理
&decode;
&axs_check;
if ($mode eq "howto") { &howto; }
elsif ($mode eq "find") { &find; }
elsif ($mode eq "usr_del") { &usr_del; }
elsif ($mode eq "regist") { ®ist; }
elsif ($mode eq "res") { &res_form; }
elsif ($mode eq "admin") { &admin; }
elsif ($mode eq "image") { ℑ }
&html_log;
#----------------#
# アクセス制限 #
#----------------#
sub axs_check {
# ホスト名を取得
&get_host;
$flag=0;
foreach (@deny) {
if (!$_) { next; }
$_ =~ s/\*/\.\*/g;
if ($host =~ /$_/i) { $flag=1; last; }
}
if ($flag) { &error("アクセスを許可されていません"); }
}
#--------------#
# 記事表示部 #
#--------------#
sub html_log {
# クッキーを取得
&get_cookie;
# フォーム長を調整
&get_agent;
# ヘッダを出力
if ($ImageView == 1) { &header('ImageUp'); }
else { &header; }
# カウンタ処理
if ($counter) { &counter; }
# タイトル部
print "
\n";
if ($banner1 ne "") { print "$banner1\n"; }
if ($title_gif eq '') {
print "$title\n";
}
else {
print "
\n";
}
print "
\n";
print "[トップに戻る]\n";
print "[使い方]\n";
print "[ワード検索]\n";
# 過去ログのリンク部を表示
if ($pastkey) { print "[過去ログ]\n"; }
print <<"EOM";
[管理用]
\n";
print "
\n";
# ページ区切り処理
$start = $page + 1;
$end = $page + $p_log;
# 記事を展開
open(IN,"$logfile") || &error("Open Error : $logfile");
$top = ;
$i=0; $j=0;
$flag=0;
while () {
($no,$reno,$date,$name,$mail,$sub,
$comment,$url,$host,$pw,$color,$icon) = split(/<>/);
if ($reno eq "") { $i++; $j++; }
if ($i < $start) { next; }
if ($i > $end) { next; }
if ($mail) { $name = "$name"; }
if ($home_icon && $url) { $url = "
"; }
elsif (!$home_icon && $url) { $url = "<HOME>"; }
if (!$icon_mode) { $comment = "$comment
"; }
if (!$reno && $flag) {
print "
\n";
$flag=1;
}
if (!$reno) {
print "\n";
$flag=1;
}
if ($reno) { print " \n"; }
print "\n";
if ($reno) { print "
| \n"; }
# アイコンモード
if ($icon_mode) { print " | "; }
print "$comment";
print " | \n";
}
close(IN);
print " |
\n";
$next_page = $page + $p_log;
$back_page = $page - $p_log;
print "\n";
print "
\n";
# 著作権表示部
# MakiMakiさんの画像使用の有無に関わらずこの2箇所のリンク部の
# 削除改変を禁止します
print "$banner2\n";
print "- KENT & ";
print "MakiMaki -\n";
print "
\n";
print "