+ my $buf;
+ if ($self->{ve7cc}) {
+ $buf = VE7CC::dx_spot($dxchan, @$sref);
+ } else {
+ $buf = $self->format_dx_spot(@$sref);
+ $buf =~ s/\%5E/^/g;
+ }
+
+ $dxchan->local_send('N', $buf);
+}
+
+sub format_dx_spot
+{
+ my $self = shift;
+
+ my $t = ztime($_[2]);
+ my $loc = '';
+ my $clth = $self->{consort} eq 'local' ? 29 : 30;
+ my $comment = $_[3] || '';
+ my $ref = DXUser::get_current($_[1]);
+ if ($ref) {
+ $loc = $ref->qra;
+ $loc = ' ' . substr($loc, 0, 4) if $loc;
+ }
+ $comment .= ' ' x ($clth - (length($comment)+length($loc)));
+ $comment .= $loc if $loc;
+ $loc = '';
+ $ref = DXUser::get_current($_[4]);
+ if ($ref) {
+ $loc = $ref->qra;
+ $loc = ' ' . substr($loc, 0, 4) if $loc;
+ $loc ||= '';
+ }
+ return sprintf "RB de %7.7s:%11.1f %-12.12s %-s $t$loc", $_[4], $_[0], $_[1], $comment;
+}