#!/usr/bin/perl

use strict;
use warnings;
use Pdfpanels;
my $dbh = Database->new->dbh;

my $p = Pdfpanels->new;

my ( $loncenter, $timecenter ) = @ARGV;

my ( $of, $badness, $tc, $wasrtalert ) = $p->page( $timecenter, $loncenter );

$of = "$loncenter-$timecenter.pdf" if !defined $of || !$of;

open X, ">", $of;
print X $p->render;

close X;
use Mail::Sender;

use Mail::Sender;

my $sender =
  Mail::Sender->new( { "smtp" => "smtp", "from" => "tshoppa\@wmata.com" } );

my $crit = $badness;
$crit +=3000 if (defined $wasrtalert and $wasrtalert>0);

my @tolist = ();

my $tolist =
  $dbh->selectall_arrayref("SELECT email from emailnotify where realtime>0 and realtimethreshold<$crit");

for (@$tolist) {
    print "pushing ", $_->[0];
    push @tolist, $_->[0];
}

push @tolist,'jglansdorp@wmata.com' if $tc =~ /F03/;

my @msg;
push @msg,
"This is an automatic early warning LOS Alarm of a potentially hazardous condition.  ";
push @msg, "Attached PDF has event from " . ( scalar localtime $timecenter );
push @msg, "At or near track circuit " . $tc . ".  ";

# push @msg,"Attached PDF contains this event and ".($ifound-1)." recent previous events." if $ifound>1;
push @msg, "";
push @msg, "       IMMEDIATE ACTION REQUIRED";
push @msg, "       -------------------------";
push @msg, "";
my $msg = join "\r\n", @msg;

print "$msg to ", join ",", @tolist;
print "\n";

$sender->MailFile(
    {
        "to"                  => \@tolist,
        "subject"             => "LOS Alarm $badness $tc",
        "msg"                 => $msg,
        "priority"            => 1,
        "bcc"                 => "tshoppa\@gmail.com",
        "debug"               => "pdfmail.log",
        "skip_bad_recipients" => 1,
        "debug_level"         => 3,
        "file"                => $of
    }
);

