X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FSpot.pm;h=4b0e7c72929ba3822afe2bbc0c3faebc39b709ed;hb=ab10b5e76b152d41273281b30b019e4c82ed22d8;hp=9f5c8645511711919943fc6564b239f59918bbda;hpb=4e2ad8b6e6a0209ffd739a625c2a6bba0ae873cb;p=spider.git diff --git a/perl/Spot.pm b/perl/Spot.pm index 9f5c8645..4b0e7c72 100644 --- a/perl/Spot.pm +++ b/perl/Spot.pm @@ -17,6 +17,7 @@ use Julian; use Prefix; use DXDupe; use Data::Dumper; +use QSL; use strict; @@ -26,7 +27,7 @@ $BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ || (0,0)) $main::build += $VERSION; $main::branch += $BRANCH; -use vars qw($fp $statp $maxspots $defaultspots $maxdays $dirprefix $duplth $dupage $filterdef $totalspots $hfspots $vhfspots); +use vars qw($fp $statp $maxspots $defaultspots $maxdays $dirprefix $duplth $dupage $filterdef $totalspots $hfspots $vhfspots ); $fp = undef; $statp = undef; @@ -101,8 +102,9 @@ sub init mkdir "$dirprefix", 0777 if !-e "$dirprefix"; $fp = DXLog::new($dirprefix, "dat", 'd'); $statp = DXLog::new($dirprefix, "dys", 'd'); - system("rm -f $main::data/$dirprefix/200?/*.bys"); - system("rm -f $main::data/$dirprefix/200?/*.cys"); + my $rm = $main::is_win ? 'del' : 'rm -f'; + system("$rm $main::data/$dirprefix/*/*.bys"); + system("$rm $main::data/$dirprefix/*/*.cys"); } sub prefix @@ -159,6 +161,10 @@ sub add } else { $vhfspots++; } + if ($_[3] =~ /(?:QSL|VIA)/i) { + my $q = QSL::get($_[1]) || new QSL $_[1]; + $q->update($_[3], $_[2], $_[4]); + } } # search the spot database for records based on the field no and an expression @@ -369,6 +375,7 @@ sub genstats($) my ($freq, $by, $dxcc) = (split /\^/)[0,4,6]; my $ref = $list{$by} || [0, $dxcc]; for (@freq) { + next unless defined $_; if ($freq >= $_->[1] && $freq <= $_->[2]) { $$ref[$_->[0]+2]++; $tot[$_->[0]+2]++;