#use strict;
#use warnings;
use File::Copy;
use Time::Local;
my $week="daily/Sun-20-Apr-2008/";
my $weeknum=5;
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdist) = localtime time;
my $input = "SNAGIT.txt";
#my ($quote,$time);
my $actualquote;
my $actualtime;
my $snaghour;
my $snagminute;
my $snagsecond;
my $picksecond=1;
my $pickminute;
my $month = (qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec)) [(localtime)[4]];
my $day = (Sun,Mon,Tue,Wed,Thu,Fri,Sat)[(localtime)[6]];
$year = $year+1900;
if ($min < 30) {$min = 0; }
else {$min = 30; }
## Open the SNAGIT.TXT, plus some sensible error checking
open(DATAFILE, "$input") || die("Can't open $input:!\n");
## Loop through the file one line at a time
while (<DATAFILE>) {
chomp;
unless ( m{^ (\d\.\d{5}) \s*,\s* (\d\d:\d\d:\d\d) \s* (.*) $ }x )
{
next;
}
# chomp $_;
my ( $quote, $time, $comment ) = ( $1, $2, $3 ); # captures
my ( $snaghour, $snagminute, $snagsecond ) = split /:/, $time;
#($quote,$time) = split(",", $_);
chop($quote);
#chop($quote);
# ($snaghour,$snagminute,$snagsecond) = split(":",$time);
if ($snagsecond==0 && ($snagminute==0 || $snagminute==30))
{
$actualtime=$time; $actualquote=$quote;$picksecond=99;
}
if ($snagminute>=$pickminute && ($snagminute<30 || $snagminute>31))
{
if ($snagminute==$pickminute && $snagsecond==$picksecond)
{
$picksecond=$snagsecond;$pickminute=$snagminute;$actualtime=$time;$actualquote=$quote;
}
elsif ($snagminute>$pickminute)
{
$picksecond=$snagsecond;$pickminute=$snagminute;$actualtime=$time;$actualquote=$quote;
}
elsif ($snagsecond>$picksecond)
{
$picksecond=$snagsecond;$pickminute=$snagminute;$actualtime=$time;$actualquote=$quote;
}
}
}
close(DATAFILE);
######### daily file creation and quote add ########
########################
#create new file for new day @ 1700
if ($hour == 17 && $min ==0)
{ open (DATA,">>$week$mday.txt");
close (DATA); }
#####################
### calculate REAL day
### by subtracting 1 from mday if hour > 00 and < 1700
###
use Date::Calc::Object;
my ($ydate) = Date::Calc->today - 1;
my $yday = $ydate->day;
my $filemday = $mday;
if ($hour < 17 && $hour >= 0)
{ $filemday = $yday; }
my $dayfile = $week.$filemday.".txt";
#########################
### print quote to file
#########################print "The Date-Time is ".$day."-".$mday."-".$month."-".$year."@".$hour."-".$min;
if (-e $dayfile) {
open (DATA,">>$dayfile");
print DATA "$hour:$min,$actualquote\n";
close (DATA);
}
##############
######### send reading to webserver http://192.168.1.3/pam/savequote.php?n=2008-03-17%2007:00:00,14444 ########
##############################################################################$year,$mon,$mday,$hour,$min,$actualquote
$mon=$mon+1;
(my $cutquote=$actualquote) =~ tr/.//d;
#print '-'.$year.'-'.$mon.'-'.$mday.'%20'.$hour.':'.$min.':00,'.$cutquote;
use LWP::Simple;
my $request = get "http://192.168.1.3/pam/savequote2.php?n=".$year."-".$mon."-".$mday."%20".$hour.":".$min.":00,".$cutquote.",".$weeknum.",".$filemday;
my $webrequest = get "http://pam.awardspace.biz/savequote.php?n=".$year."-".$mon."-".$mday."%20".$hour.":".$min.":00,".$cutquote;
my $webrequest3 = get "http://www.dailygrain.com/php/savequote_DG.php?n=".$year."-".$mon."-".$mday."%20".$hour.":".$min.":00,".$cutquote;
########
### dump snagit.txt file to my half hourlys
my $newfile = "30min/".$day."-".$mday."-".$month."-".$year."@".$hour."-".$min.".txt";
copy($input,$newfile) or die "bleeeeeur";
unlink($input);
######
## log runtimes
my $newtime = localtime time;
open (DATA,">>runtimes.txt");
print DATA "$newtime-";
print DATA "LOCAL: $request - AWARDSPACE: $webrequest - DG: $webrequest3";
close (DATA);