#!/usr/local/bin/perl -w
#use strict;

# by Curtis Clifton

# Define fairly-constants

$mailprog = '/usr/sbin/sendmail';
$recipient = 'leavens@cs.uiowa.edu';

# directory to check
$SRCDIR="/home/bambam/leavens/WWW/ComS362/feedback/";
# directory for valid files
$DSTDIR="/home/bambam/leavens/WWW/ComS362/feedback/";
# signature for valid files
$signature="innagaddadavita";

#---------------------------------------------------------------------
# move each valid file to the $DSTDIR, delete each invalid file,
# count the valid files
#---------------------------------------------------------------------
# get the source directory
opendir (SRC, "$SRCDIR") || die "Can't open $SRCDIR $!\n";
# switch to the source directory
chdir "$SRCDIR";

# process each file
$CNT = 0;
foreach $file (readdir(SRC) ) {
    $valid = 0;
    if (open (FEEDBACK, "$file")) {
	if (defined($line = <FEEDBACK>)) {
	    chop($line);
	    if ($line eq $signature) {
		# got a valid file
		$CNT++;
		$valid = 1;
		#print "Got $CNT\n";
		rename "$SRCDIR$file", "$DSTDIR$file"
		    || die "Can't rename $file $!\n";
	    }
	}
	close (FEEDBACK);
    }
    if ($valid eq 0) {
	unlink $file;
    }
}

if ($CNT gt 0) {
    open (MAIL, "|$mailprog $recipient") || die "Can't open $mailprog $!\n";

    print MAIL "Subject: 22C:181 Feedback\n\n";
    print MAIL "From: 22C:181 at-job\n\n";
    print MAIL "You have $CNT new feedback message";
    if ($CNT gt 1) {
	print MAIL "s";
    }
    print MAIL "\nin the $DSTDIR directory\n\n";
    print MAIL "\n\n\n\n";

    close(MAIL);
}
