#!/usr/bin/perl

require "../cgi-lib.pl";
ReadParse(*params);

#print "Content-Type: text/html\n\n";

if($params{diff} !~ /\d/ ||
   $params{r} !~ /\S/ ||
   $params{w0cnt} !~ /\d/) {
    print "Content-Type: text/html\n\n";
    print "Unrecognized request\n";
    exit(0);
}
$text = join("\t",($params{diff},$params{gold},$params{power},$params{color},$params{r}));
$wave = "";
for($i=0;$i<100;$i++) {
    if($params{"w$i"."cnt"} > 0) {
	$wave .= "\t".$params{"w$i"."id"};
	$wave .= ",".$params{"w$i"."hp"};
	$wave .= ",".$params{"w$i"."sp"};
	$wave .= ",".$params{"w$i"."cnt"};
    } else {
	$i = 1000;
    }
}
$text .= $wave."\n";

$logf = "/home/dave/perl/maze_def/live_stats";
$sflag = 0;
if(1) { #quickie turn off
    if(open(LOGF,$logf)) {
	$content = "";
	#print STDERR "Looing for: $params{diff}\t...\t$params{r}$wave\n";
	while(<LOGF>) {
	    if(/^\Q$params{diff}\E\t([^\t]*)\t([^\t]*)\t([^\t]*)\t\Q$params{r}\E\Q$wave\E\s*$/) {
		my($gold,$power,$color) = ($1,$2,$3);
		if($gold !~ /\d+/) { $gold = $params{gold}; }
		if($power !~ /\d+/) { $power = $params{power}; }
		if($color !~ /\d+/) { $color = $params{color}; }
		$text = "$params{diff}\t$gold\t$power\t$color\t$params{r}$wave\n";
		#print STDERR "Match: $_";
	    } elsif($params{diff} == 0 && /^[1-5]\t[^\t]*\t[^\t]*\t[^\t]*\t\Q$params{r}\E\Q$wave\E\s*$/) {
		#Skip these goddamn incorrect Very Easy waves
		exit(0);
	    } else {
		$content .= $_;
	    }
	}
	close LOGF;
	$content .= $text;
	if(open(LOGF,"> /home/dave/perl/maze_def/live_stats")) {
	    print LOGF $content;
	    close LOGF;
	    #print "Write was ok!<br>\n";
	    $sflag = 1;
	} else {
	    #print "Write was bad!<br>\n";
	}
    } elsif(open(LOGF,">> /home/dave/perl/maze_def/live_stats")) {
	print LOGF $text;
	close LOGF;
	#print "Write2 was ok!<br>\n";
	$sflag = 1;
    } else {
	#print "All writes were bad!<br>\n";
    }
} else {
    $sflag = 1; #fake for now
}
if($sflag) {
    $img = "/home/dave/public_html/md/check.gif";
} else {
    $img = "/home/dave/public_html/md/red_x.gif";
}
#exit(0);
if(open(GIF,$img)) {
    print "Content-Type: image/gif\n\n";
    while(<GIF>) {
	print;
    }
    close GIF;
} else {
    print "Content-Type: text/html\n\n";
    print "Saved, but gif ($img) is wrong\n";
}
