#!/usr/bin/perl

$0 = "wmjmail";

use Wharf::JDockApp;
use Getopt::Long;

#___________________ setup ________________________________#

my $mailbox = "/var/spool/mail/$ENV{USER}";
my $seconds = 1;
GetOptions( 
    "delay=i" => \$seconds,
    "mbox=s"  => \$mailbox,
    "help"    => \$help,
) or &usage;

#_________________________ the program ____________________#

SetSetup(  sub { SetDelay($seconds) } );
SetUpdate( \&update );
SetExpose( \&update );
SetButton( \&update );

StartApp;

#_____________________________________ subs _______________#

sub update {
    my ($msg, $fakem, $newm, $readm) = (0, 0, 0, 0);

    open IN, $mailbox or die "Shoot ... $!";
    while(<IN>) {
        $msg++   if /^Message[-]ID:/i;
        $readm++ if /^Status: RO/;
        $fakem++ if /^Content[-]Type: Message.rfc/i;
    }
    close IN;

    $msg -= $fakem;
    $newm = $msg - $readm;

    ClearWindow;

    jpprint(0, 0, YELLOW, "    J-mail");

    jpprint(1, 2, BLUE, "New");
    jprint(GREEN, ":");
    if($newm) {
        jpprint(7, 2, RED,  "$newm");
    } else {
        jpprint(7, 2, CYAN, "$newm");
    }

    jpprint(1, 3, BLUE, "Read");
    jprint(GREEN, ":");
    jpprint(7, 3, CYAN, "$readm");

    jpprint(1, 4, BLUE, "Total");
    jprint(GREEN, ":");
    jpprint(7, 4, CYAN, "$msg");
}
