#!/usr/local/bin/perl
#GoodBook System.
#This program will show data to browser.
#It is designed for BookClub website.
#Written by Kung-Ming Fung at Yam Digital Technology Co.,Ltd..
#Date:1999/06/08

$DocRoot = "books/";
$Header = "header.html";
$Footer = "footer.html";

#######

print "Content-type: text/html\n\n";

open (IN,"<$Header") or die ("Can't open $Header.\n");
while (<IN>) { print; }
close (IN);

print << "END";
<blockquote>
<center>
<h2><font color="#a76fc0">罔讀好書推薦詳細資料</font></h2>
</center>
END

&GetForm();

$filename = $WWWForm{"no"};

#show result to browser

$Abstract = "";
$Reason = "";
$Comment = "";
open (IN,"<$DocRoot$filename") or die ("Can't open $filename.\n");
while (<IN>)
     {
      chomp ($_);
      if ($_ !~ /<--Abstract-->/)
        {
         next;
        }
      else
          {
           while (<IN>)
                {
                 chomp ($_);
                 if ($_ =~ /<--End-->/) { last; }
                 $Abstract = $Abstract.$_;
                }
          }          
     }
close (IN);

open (IN,"<$DocRoot$filename") or die ("Can't open $filename.\n");
while (<IN>)
     {
      chomp ($_);
      if ($_ !~ /<--Reason-->/) 
        { 
         next; 
        }
      else
          {
           while (<IN>)
                {
                 chomp ($_); 
                 if ($_ =~ /<--End-->/) { last; }
                 $Reason = $Reason.$_;
                }
          }
     }
close (IN);

open (IN,"<$DocRoot$filename") or die ("Can't open $filename.\n");
while (<IN>)
     {
      chomp ($_);
      if ($_ !~ /<--Comment-->/)
        {
         next;
        }
      else
          {
           while (<IN>)
                {
                 chomp ($_);
                 if ($_ =~ /<--End-->/) { last; }
                 $Comment = $Comment.$_;
                }
          }          
     }
close (IN);

$filename = $filename.".usr";
open (IN,"<$DocRoot$filename");
while (<IN>)
     {
      chomp ($_);
      ($key,$value) = split (/: /,$_);
      $UserData{$key} = $value;
     }
close (IN);

print "<table width=450 border=0 align=\"center\" bgcolor='#ffffff' cellpadding='15' cellspacing=5>\n";
print "<tr>\n";
print "<td bgcolor=\"#d7f4cd\">\n";
print "<font color=\"#1B4000\" size=3>書名：</font>\n";
print "<font size=2>$UserData{\"BookName\"}</font><br>\n";
print "<font color=\"#1B4000\" size=3>作者：</font>\n";
print "<font size=2>$UserData{\"BookAuthor\"}</font><br>\n"; 
print "<font color=\"#1B4000\" size=3>譯者：</font>\n";
print "<font size=2>$UserData{\"BookInterpreter\"}</font><br>\n";
print "<font color=\"#1B4000\" size=3>價格：</font>\n";
print "<font size=2>新台幣</font>";
print "<font color=\"red\" size=2>$UserData{\"BookCharge\"}</font>";
print "<font size=2>元整</font>\n";
print "</td>\n</tr>\n";
print "<td bgcolor=\"#d7f4cd\">\n";
#print "<center>\n";
#print "<b><font color=\"red\" size=+1>出版社資料</font></b>\n";
#print "</center>\n<p>\n";
print "<font color=\"#1B4000\" size=3>出版社名稱：</font>\n";
print "<font size=2>$UserData{\"Publisher\"}</font><br>\n";
print "<font color=\"#1B4000\" size=3>地址：</font>\n";
print "<font size=2>$UserData{\"PubAddress\"}</font><br>\n";
print "<font color=\"#1B4000\" size=3>電話：</font>\n";
print "<font size=2>$UserData{\"PubTel\"}</font>\n"; 
print "</td>\n</tr>\n";
print "<td bgcolor=\"#d7f4cd\">\n"; 
print "<font color=\"#1B4000\" size=3>本書摘要</font><p>\n";
print "<font size=2>$Abstract</font>\n";
print "</td>\n</tr>\n"; 
print "<td bgcolor=\"#d7f4cd\">\n";
print "<font color=\"#1B4000\" size=3>推薦本書的原因</font><p>\n";
print "<font size=2>$Reason</font>\n";
print "</td>\n</tr>\n";
print "<td bgcolor=\"#d7f4cd\">\n";
print "<font color=\"#1B4000\" size=3>備註</font><p>\n";
print "<font size=2>$Comment</font>\n";
print "</td>\n";   
print "</tr>\n";
print "<td bgcolor=\"#d7f4cd\">\n";
print "<font color=\"#1B4000\" size=3>推薦人：</font>\n";
print "<font size=2>$UserData{\"UserName\"}</font>\n<br>\n";
#if ($WWWForm{"admin"})
#  {
#   print "<font color=\"#1B4000\" size=3>E-Mail：</font>\n";
#   print "<a href=\"mailto:$UserData{\"UserEmail\"}\">";
#   print "<font size=2>$UserData{\"UserEmail\"}</font></a>\n";
#  }
print "</td>\n";
print "</tr>\n";
print "</table>\n";
print "<hr>\n";
print "<center>\n";
print "<a href=\"javascript:history.go(-1)\"><font size=2>回上一頁</font></a>　　\n";
print "<a href=\"suggest.html\"><font size=2>我也要推薦</font></a>　　\n";
print "<a href=\"../index.html\"><font size=2>回罔讀首頁</font></a>\n";
print "</center>\n";
print "</blockquote>\n";

open (IN,"<$Footer") or die ("Can't open $Footer.\n");
while (<IN>) { print; }
close (IN);

exit;

#end of program

#subroutine start

sub GetForm()
   {
    local ($fields,$name,$value,$data);
    $data = $ENV{"QUERY_STRING"};
    @fields = split (/&/,$data);

    foreach $item (@fields)
           {
            ($name,$value) = split (/=/,$item);
            $name = &UnEscapeString ($name);
            $value = &UnEscapeString ($value);
            $WWWForm{$name} = $value;
           }
   }

sub UnEscapeString ()
   {
    local($s) = $_[0];
    local($pos,$ascii);
    $s =~ s/\+//g;
    $pos = 0;
    while (($pos = index($s,"%",$pos)) != -1)
         {
          $ascii = hex(substr($s,$pos+1,2));
          substr ($s,$pos,3) = pack ("c",$ascii);
         }
    return $s;
   }
