<?php
// mailbbs.phpのテーブル表示版です。
// malbbs.phpと差し替えてください。
// 画像が添付されたメールのみ表示します。
// 「戻る」がおかしいですが、それほど気にならないかと・・
// GD版でも通常版でも使えると思います
/*------設定------------------*/
// 画像保存デイレクトリ
$tmpdir = "./data/";
// ログファイル(必ず変更してください)pop.phpと同じにする事
$log = "./data/mail.log";
// 1ページの表示数(最後にタイトル+1)
$page_def = 14;
// 1行の個数
$return = 5;
// 画像表示サイズ
$w = 120; $h = 160;
// 削除パス
$delpass = "pass123";
// サムネイル(ある時
$thumb_dir = "./data/s/";
//----------------------------
//PHP4.1.0以下の場合
if(phpversion()<"4.1.0"){
$_GET = $HTTP_GET_VARS;
$_POST = $HTTP_POST_VARS;
$_SERVER = $HTTP_SERVER_VARS;
}
// 振り分け
$user_agent= explode( "/", $_SERVER['HTTP_USER_AGENT']);
switch( $user_agent[0] ){
case "DoCoMo" : include("j.php"); exit;
case "L-mode" : include("j.php"); exit;
case "ASTEL" : include("j.php"); exit;
case "UP.Browser" : include("ez.php"); exit;
case "PDXGW" : include("ez.php"); exit;
case "J-PHONE" : include("j.php"); exit;
}
if(preg_match("/^KDDI/",$user_agent[0])){ include("j.php"); exit;}
?>
<html>
<head>
<title>写メール BBS</title>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<style type="text/css">
<!--
a{text-decoration:none;}
a:link{color:#3366FF;}
a:visited{color:#3366FF;}
a:hover{color:darkred;}
-->
</style>
</head>
<body>
<table width="80%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#333333">
<tr>
<?php
$lines = file($log);
// 削除処理
if ($_POST['del'] && $_POST['pass'] == $delpass) {
$find = false;
for ($i=0; $i<count($lines); $i++) {
list($id, $ptime, $subject, $from, $body, $att,) = explode("<>", $lines[$i]);
if ($_POST['del'][$id] == "on") {
$lines[$i] = "";
if ($att !="" && file_exists($tmpdir.$att)) @unlink($tmpdir.$att);
$find = true;
}
}
if ($find) {
$fp = fopen($log, "w");
flock($fp, LOCK_EX);
fputs($fp, implode('', $lines));
fclose($fp);
}
$lines = file($log);
$_GET['mode'] = "admin";
} elseif($_POST['pass'] && $_POST['pass'] != $delpass) {
echo "パスワードがちがいます";
$_GET['mode'] = "admin";
}
// 削除パスフォーム
if ($_GET['mode'] == "admin") {
echo <<<DELFORM
<center>消したい物にチェックを入れてパスワードを入力し削除ボタンを押してください。<br>
<form action="{$_SERVER['PHP_SELF']}" method=POST>
<input type=hidden name=mode value=admin>
<input type=password name=pass size=8>
<input type=submit value=" 削 除 "></center><br>
DELFORM;
}
$st = (!$_GET['page']) ? 0 : $_GET['page'];
// ループ
for ($i=$st; $view<$page_def; $i++) {
if ($lines[$i] == "") break;
// 折り返し
if (($view % $return)==0) echo "</tr><tr>";
list($id, $ptime, $subject, $from, $body, $att,) = explode("<>", $lines[$i]);
$imgsrc= "";
$date = date("Y-m-d G:i", $ptime);
$size = (int)(@filesize($tmpdir.$att) / 1024);
$body = strip_tags($body);
// コメントリンク
$link = (trim($body) != "") ? "<a href='#' title='$body'>□</a>" : "";
if ($_GET['mode'] == "admin") $del = '<input type=checkbox name="del['.$id.']" value=on>';
// 画像がある時
if(eregi("\.(gif|jpe?g|png|bmp)$",$att)){
$href = $tmpdir.rawurlencode($att);
$isize = getimagesize($tmpdir.$att);
$winw = $isize[0] + 20;
$winh = $isize[1] + 20;
// サムネイルがある時、サムネイル表示。
$filename = substr($att,0,-4);
$src = (file_exists($thumb_dir.$filename.".png")) ? $thumb_dir.rawurlencode($filename).".png" : $href;
$imgsrc = "<a href=\"$href\" Onclick=\"window.open('$href','popup','width=$winw,height=$winh,menubar=no,status=no'); return false\"><img src=\"$src\" border=0 alt=\"$body\" width=$w height=$h></a>";
//メイン部分
echo <<<EOM
<td align="center" valign="top">$imgsrc<br>$del<font color="#BBBBBB" size="2">$subject</font><br>
<font color="#CCCCCC" size="1">$date $link</font>
</td>
EOM;
$view++;
}
}
$prev = $st - $page_def;
$next = $i;
if ($prev < 0) $prev = 0;
if ($_GET['mode'] == "admin") $mode = "&mode=admin";
//ページ
if ($st >= 0) {
$mae = "<a href={$_SERVER['PHP_SELF']}?page=$prev$mode>←</a>";
}
else {
$mae = "←";
}
if ($next < count($lines)) {
$tugi = "<a href={$_SERVER['PHP_SELF']}?page=$next$mode>→</a> ";
}
else {
$tugi = "→";
}
//フッタ部分
echo <<<EOD
<td align=center bgcolor=#444444><br><font color=#EDEDED><b><i>写メールBBS</i><br>
<br><small><a href=riyou.html>HowTo</a><br>
<br><a href=pop.php>Reload</a><br>
<br><br><br><small><a href="http://php.s3.to/" target=_blank>(c)</a>レッツPHP!</small></font></small></b><br><br><font color=white>$mae $tugi</font>
</td>
EOD;
if ($_GET['mode'] == "admin") echo "</form>";
?>
</tr>
</table>
</body>
</html>