#!/usr/local/bin/perl

&cgi_init;

$row = $queryelt{"ROW"};
$col = $queryelt{"COL"};
$subject = $queryelt{"SUBJECT"};
$name = $queryelt{"NAME"};
$address = $queryelt{"ADDRESS"};
$text = $queryelt{"TEXT"};

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

if ($row =~ /./) {
  if ($subject) {
    $date = localtime();
    open(FILE,">current/$row$col.html");
    print FILE "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"300; URL=http://www.dds.nl/~n5mj/babylon/\">

<HTML>
<HEAD>
<TITLE>BABYLON TOWER</TITLE>
</HEAD>
<body bgcolor=\"#000000\" text=\"#9A9A9A\" LINK=\"#123466\" vlink=\"#9a9a9a\">
<CENTER>
<a href=\"/cgi-bin/imagemap/~n5mj/map/nnnbabylon.map\"><img border=0 src=\"../../gfx/nnn1.gif\" ismap></a><p>
</center>
<BR> <BR>

<CENTER><PRE>
Contribution from: <B> $name </b> <A HREF=\"mailto: $address\">&lt;$address&gt;</A>
Date: <B> $date </b>

$text
</PRE></CENTER>


<CENTER>

<BR>

</CENTER></BODY></HTML>
    ";
    close(FILE);
    print"Location: http://www.dds.nl/~n5mj/babylon/\n\n";
  } else {
    print"\n
    <TITLE>Contribute a reaction...</title>
    <BODY BGCOLOR=\"#000000\" TEXT=\"#aacfff\" link=\"#aacfff\" vlink=\"#aacfff\"></BODY>
    <center><a href=\"/cgi-bin/imagemap/~n5mj/map/nnnbabylon.map\"><img border=0 src=\"../gfx/nnn1.gif\" ismap></a></center><p>
    <CENTER><H3>Contribute a reaction to the Babylon Tower of TV's</H3></CENTER>
    <BR>
    <CENTER><form method=GET action=./>
    <input type=hidden name=ROW value=$row>
    <input type=hidden name=COL value=$col>
    Subject:<BR>
    <INPUT NAME=SUBJECT TYPE=\"text\" SIZE=40,10><BR> <BR>
    Your name:<BR>
    <input name=NAME type=\"text\" size=40,10><BR> <BR>
    Your E-mail adress:<BR>
    <input name=ADDRESS type=\"text\" size=40,10><BR> <BR>
    Your Reaction:<BR> 
    <TEXTAREA NAME=TEXT ROWS=10 COLS=50></TEXTAREA><BR>
    <BR> <BR>
    <INPUT TYPE=\"submit\" VALUE=\"Submit\" border=0>
    </FORM>
    </center>
    ";
  }
} else {

  srand();

  $x = int(rand(3))+1;

  print"\n<head><title>BABYLON TOWER</title></head>
  <body bgcolor=#000000 text=#aacfff LINK=#FFFFFF vlink=#FFFFFF background=../gfx/back_babylon.gif>
  <map name=nnn>
  <area shape=rect href=/~n5mj/say/ coords=\"0,0,108,30\">
  <area shape=rect href=/~n5mj/quote/ coords=\"323,0,412,30\">
  </map>
  <center><a href=/cgi-bin/imagemap/~n5mj/map/nnnbabylon.map><img border=0 
  usemap=#nnn ismap src=../gfx/nnn$x.gif></a><p>

  <CENTER><H2>Babylon Tower</H2>";

  # read in all tv's in current tower

  opendir(DIR,"current");
  while ($e = readdir(DIR)) {
    if ($e =~ /^([0-9])([0-9])/) {
      $tv[$1][$2] = 1;
      $n++;
    }
  }
  closedir(DIR);

  # read all towers

  $towers=0;
  opendir(DIR,".");
  while ($e = readdir(DIR)) {
    if ($e =~ /^tower/) {
      $towers++;
    }
  }
  closedir(DIR);

  if ($n == 20) {

    system("mv current tower$towers; mkdir current");
    $towers++;
    for ($r = 0; $r < 5; $r++) {
      for ($c = 0; $c < 4; $c++) {
        $tv[$r][$c] = 0;
      }
    }
  }

  print "<TABLE COLSPEC=\"C20 C20 C20 C20\" BORDER=5 >";
  for ($r = 0; $r < 5; $r++) {
    print "<tr>\n";
    for ($c = 0; $c < 4; $c++) {
      print "<td>";
      if ($tv[$r][$c]) {
        print "<A HREF=current/$r$c.html><IMG SRC=\"../gfx/$r$c.gif\" border=1></A>";
      } else {
        print "<A HREF=./?ROW=$r&COL=$c><IMG SRC=\"../gfx/zwart.gif\" border=1></A>";
      }
      print "</td>\n";
    }
    print "</tr>\n";
  }
  print"</TABLE><p>";

  if ($towers) {
    for ($tower = $towers - 1; $tower >= 0; $tower--) {
      print "<TABLE COLSPEC=\"C20 C20 C20 C20\" BORDER=5 >";
      for ($r = 0; $r < 5; $r++) {
        print "<tr>\n";
        for ($c = 0; $c < 4; $c++) {
          print "<td>";
          print "<A HREF=tower$tower/$r$c.html><IMG SRC=\"../gfx/$r$c.gif\" border=1></A>";
          print "</td>\n";
        }
        print "</tr>\n";
      }
      print"</TABLE><p>";
    }
  }

  print "</CENTER>
  <BR>
  <BR>
  
  <a href=\"/cgi-bin/imagemap/~n5mj/map/si_bi.map\"><img border=0 src=\"../gfx/si_bi2.gif\" ismap></a><BR>
  
  </CENTER></body></html>


  ";
}

sub cgi_init
{
if ($ENV{'REQUEST_METHOD'} eq 'POST')
{
	if ($ENV{'CONTENT_TYPE'} ne 'application/x-www-form-urlencoded')
	{
		print
		  'Content type must be application/x-www-form-urlencoded'.$nl;
		exit 1;
	}
	read(STDIN, $qstring, $ENV{'CONTENT_LENGTH'});
} elsif ($ENV{'QUERY_STRING'})
{
	$qstring = $ENV{'QUERY_STRING'};
} else
{
	$qstring = '';
}

@querylist = split(m'&', $qstring);

for $i (@querylist)
{
	($key,$value) = split(/=/, $i);
	$value =~ tr/+/ /;
	$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
	$queryelt{$key} = $value;
}
}
