fix sh/dx <call> with sql spot logging

This commit is contained in:
Dirk Koopman 2015-02-13 22:40:00 +00:00
parent a340e9dd6b
commit 74a756eeda
4 changed files with 12 additions and 7 deletions

View File

@ -1,3 +1,6 @@
13Feb14=======================================================================
1. Fix problem with sh/dx <call> if people are logging spots to a SQL database
2. My late father would have been 102 today.
27Nov14=======================================================================
1. Add CTY-2415 prefix list
25Nov14=======================================================================

View File

@ -31,6 +31,8 @@ my $fromdxcc;
my $exact;
my ($doqsl, $doiota, $doqra, $dofilter);
my $usesql = $main::dbh && $Spot::use_db_for_search;
while ($f = shift @list) { # next field
# print "f: $f list: ", join(',', @list), "\n";
if (!$from && !$to) {
@ -180,7 +182,7 @@ if ($pre) {
unless (@ans) {
$pre .= '*' unless $pre =~ /[\*\?\[]$/o;
$pre = shellregex($pre);
if ($main::dbh) {
if ($usesql) {
$pre =~ s/\.\*/%/g;
} else {
$pre =~ s/\.\*\$$//;
@ -256,7 +258,7 @@ if ($spotter) {
$expr .= ' && ' if $expr;
$spotter .= '*' unless $spotter =~ /[\*\?\[]/o;
$spotter = shellregex($spotter);
if ($main::dbh) {
if ($usesql) {
$spotter =~ s/\.\*/%/g;
} else {
$spotter =~ s/\.\*\$$//;
@ -330,7 +332,7 @@ if ($state) {
push @expr, "\$f12 eq '$_'";
push @hint, "m{$_}";
}
if ($main::dbh) {
if ($usesql) {
$expr .= @expr > 1 ? '(' . join(' || ', @expr) . ')' : "$expr[0]";
} else {
$expr .= @expr > 1 ? '(\$f12 && (' . join(' || ', @expr) . '))' : "(\$f12 && $expr[0])";
@ -346,7 +348,7 @@ if ($bystate) {
push @expr, "\$f13 eq '$_'";
push @hint, "m{$_}";
}
if ($main::dbh) {
if ($usesql) {
$expr .= @expr > 1 ? '(' . join(' || ', @expr) . ')' : "$expr[0]";
} else {
$expr .= @expr > 1 ? '(\$f13 && (' . join(' || ', @expr) . '))' : "(\$f13 && $expr[0])";

View File

@ -36,7 +36,7 @@ sub has_ipaddr
my $sth = $self->prepare($s);
$sth->execute;
while (my @t = $sth->fetchrow_array) {
if ($t[0] eq 'ipaddr') {
if ($t[1] eq 'ipaddr') {
$sth->finish;
return 1;
}
@ -48,7 +48,7 @@ sub has_ipaddr
sub add_ipaddr
{
my $self = shift;
my $s = q(alter table spot add column ipaddr varchar(40));
my $s = q(alter table spot add column ipaddr text);
$self->do($s);
}

View File

@ -44,7 +44,7 @@ sub file_exists
sub del_file
{
m
}
sub new