<?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&nbsp;&nbsp;&nbsp;$tugi</font>
    </td>
EOD;

if ($_GET['mode'] == "admin") echo "</form>";
?>
</tr>
</table>
</body>
</html>