X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FVE7CC.pm;h=ee524604d00bfe191a5798acf87fd38bfd8f62ad;hb=a472851a7e290dac262131fd7f73b567332df6e4;hp=2679ff1e4e2f39dda68d71821c6e9a8faa9fb65b;hpb=d7c0e5450bfc963d1adb291611dd5b3664f9069d;p=spider.git diff --git a/perl/VE7CC.pm b/perl/VE7CC.pm index 2679ff1e..ee524604 100644 --- a/perl/VE7CC.pm +++ b/perl/VE7CC.pm @@ -15,29 +15,47 @@ use DXDebug; use DXUtil; use Julian; use Prefix; +use DXUser; use strict; use vars qw($VERSION $BRANCH); $VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ ); -$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ || (0,0)); +$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /^\d+\.\d+(?:\.(\d+)\.(\d+))?$/ || (0,0)); $main::build += $VERSION; $main::branch += $BRANCH; sub dx_spot { my $self = shift; # this may be useful some day - my $freq = shift; - my $spotted = shift; - my $t = shift; + my $spot = ref $_[0] ? shift : \@_; + my $freq = $spot->[0]; + my $spotted = $spot->[1]; + my $t = $spot->[2]; + my $loc_spotted = ''; + my $loc_spotter = ''; + my $ref = DXUser->get_current($spotted); + if ($ref) { + my $loc = $ref->qra || ''; + $loc_spotted =substr($loc, 0, 4) if $loc; + } + + # remove any items above the top of the max spot data + pop while @_ > 14; - # remove interface callsign; - pop; + # make sure both US states are defined + $_[12] ||= ''; + $_[13] ||= ''; my $spotted_cc = (Prefix::cty_data($spotted))[5]; - my $spotter_cc = (Prefix::cty_data($_[1]))[5]; + my $spotter_cc = (Prefix::cty_data($_[4]))[5]; + $ref = DXUser->get_current($_[4]); + if ($ref) { + my $loc = $ref->qra || ''; + $loc_spotter = substr($loc, 0, 4) if $loc; + } - return sprintf("CC11^%0.1f^%s^", $freq, $spotted) . join('^', cldate($t), ztime($t), @_, $spotter_cc, $spotted_cc); + return sprintf("CC11^%0.1f^%s^", $freq, $spotted) . join('^', cldate($t), ztime($t), @$spot[3..-1], $spotted_cc, $spotter_cc, $loc_spotted, $loc_spotter); } 1;