#!/usr/bin/perl

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

# $B=i4|CMFI$_(B

$query = "?".$ENV{'QUERY_STRING'} if $ENV{'QUERY_STRING'} ne "";

# Get FORM data ...
%form = &read_input;

$bred=$form{'bred'};
$bgreen=$form{'bgreen'};
$bblue=$form{'bblue'};
$tred=$form{'tred'};
$tgreen=$form{'tgreen'};
$tblue=$form{'tblue'};

print <<EOD;

<head>
<title>Color Table</title>
</head>
<body>
<h1>Automate color GIF image</h1>

<hr>

<form action="/cgi-bin/colors.cgi" method="GET">

<h3>Background Color (Decimal 0-255)</h3>
Red <input type="text" name="bred" size=3 maxlength=3 value="$bred">
Gree <input type="text" name="bgreen" size=3 maxlength=3 value="$bgreen">
Blue <input type="text" name="bblue" size=3 maxlength=3 value="$bblue">

<h3>Text Color (Decimal 0-255)</h3>
Red <input type="text" name="tred" size=3 maxlength=3 value="$tred">
Gree <input type="text" name="tgreen" size=3 maxlength=3 value="$tgreen">
Blue <input type="text" name="tblue" size=3 maxlength=3 value="$tblue"><p>
<input type="submit">
</form>

<p>

<img src="/cgi-bin/colors_gif.cgi$query">

</body>
EOD

#

sub read_input
{
    local ($buffer, @pairs, $pair, $name, $value, %FORM);
    # Read in text
    $ENV{'REQUEST_METHOD'} =~ tr/a-z/A-Z/;
    if ($ENV{'REQUEST_METHOD'} eq "POST")
    {
	read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
    } else
    {
	$buffer = $ENV{'QUERY_STRING'};
    }
    @pairs = split(/&/, $buffer);
    foreach $pair (@pairs)
    {
	($name, $value) = split(/=/, $pair);
	$value =~ tr/+/ /;
	$value =~ s/%(..)/pack("C", hex($1))/eg;
	$FORM{$name} = $value;
    }
    %FORM;
}

