#!/usr/local/bin/perl

$len= $ENV{CONTENT_LENGTH};
read(STDIN, $query, $len);

$vals{image}= "http://...";

@parts= split(/&/, $query);

foreach $part (@parts) {
    ($name, $val)= split(/=/, $part);
    $val=~ tr/+/ /;
    $val=~ s/%(..)/pack("H2", $1)/eg;
    $vals{$name}= $val;
}

$fail= "";

$name= $vals{name};
$email= $vals{email};
$commit= $vals{commitment};
$pic= $vals{image};
$haiku= $vals{haiku};
$haiku=~ tr/\r/\n/;
$haiku=~ s!\n+!///!g;
$submitted= $vals{signup};

$fail= "You haven't noted how many events you'll attend\n" if ($commit eq "");
$fail.= "You haven't entered your email address\n" if ($email eq "");
$fail.= "You haven't entered your name\n" if ($name eq "");

$pic="" if ($pic=~/\.\.\./);

open(IN, "people");
while(<IN>) {
    ($rname, $remail, $reffort, $rteam, $rimg, $rhaiku)= split(/\#\#\#/);
    $fullness{$rteam}+= ($reffort+1);
    $fail.= "You have already been signed up to the $rteam team\n" if ($remail eq $email);
}

close IN;

if ($fail ne "") {
    if ($submitted ne "") {
	$fail=~ s/\n/<br>/g;
	$oops= "<font color=#800000><dl><dt><b>Oops!</b><dd>$fail</dl></font>";
    }
    print <<EOF;
Content-type: text/html

<html>
<head>
<title>Olympics 2001 signup</title>
</head>
<body bgcolor=#ffffff>
<center><img src=images/title.GIF>
<font face="Arial,Geneva,Helvetica">

<h2>If memory serves me right... <br>It's time to sign up for the Iron Chef Olympics!</h2>
</center>
$oops

<form method=POST action=assign.cgi>
<table border=0 cellpadding=4>
  <tr>
    <td align=right>Your name:</td>
    <td><input type=text name="name" value="$vals{name}"></td>
  </tr>
  <tr>
    <td align=right>Full e-mail address:</td>
    <td><input type=text name="email" value="$vals{email}"></td>
  </tr>
  <tr>
    <td align=right>How many events<br>do you think you will attend?<br>(Be
    honest)</td>
    <td>
      <input type=radio name=commitment value="0">Very few<br>
      <input type=radio name=commitment value="1">About 1/4<br>
      <input type=radio name=commitment value="2">About half<br>
      <input type=radio name=commitment value="3">About 3/4<br>
      <input type=radio name=commitment value="4">All of them!
    </td>
  </tr>
  <tr>
    <td align=right>URL of a picture of you<br>(optional, but highly encouraged)</td>
    <td><input type=text name="image" size=60 value="$vals{image}"></td>
  </tr>
  <tr>
    <td align=right>Briefly state your <br>cooking
	background.<br>
	(This is optional)</td>
    <td><textarea rows=3 cols=40 wrap=on name=haiku>$vals{haiku}</textarea>
    </td>
  </tr>
  <tr>
    <td colspan=2 align=center><input type=submit name=signup
    value="Sign me up!"></td>
  </tr>
</table>
</form>

<p>
<a href="index.cgi"><img src="images/home.gif"></a>

</font>
</body>
</html>
EOF
    ;
    exit(0);
}

# find the team with the lowest commitment

$mincommit= 999999999;
foreach $cteam (keys %fullness) {
  if ($fullness{$cteam} < $mincommit) {
    $mincommit= $fullness{$cteam};
    $minteam= $cteam;
  }
}


$myline= join("###", ($name, $email, $commit, $minteam, $pic, $haiku));

$mailalias = "iron-chefs-";
$minteam=~ tr/A-Z/a-z/;
$mailalias .= $minteam;

if (open (MAIL, ">>/com/mailer/olympics2001/$mailalias")) {
    print MAIL "$email\n";
    close MAIL;
}

#open (OUT2, ">>/com/web/docs/people/calvarad/olympics/people");
#print OUT2 "$myline\n";
#close OUT2;

open (OUT, ">>people");
print OUT "$myline\n";
close OUT;

print "Location: team.cgi?name=$minteam&$mailalias&newjoin=1\n\n";

#print "Location: index.cgi\n\n";
