X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FSpot.pm;h=cb91c18aead934482da1878bb292e7b1ad6672e6;hb=b08d8e083dd9762d205f68ada2bf56bd0a8acd90;hp=74e4e27a753ed2f640630f922036729575011537;hpb=d07b38eed1044b3b88876a53b8e5870386f38a20;p=spider.git diff --git a/perl/Spot.pm b/perl/Spot.pm index 74e4e27a..cb91c18a 100644 --- a/perl/Spot.pm +++ b/perl/Spot.pm @@ -23,13 +23,14 @@ use vars qw($fp $maxspots $defaultspots $maxdays $dirprefix $duplth $dupage $fil $fp = undef; $maxspots = 50; # maximum spots to return $defaultspots = 10; # normal number of spots to return -$maxdays = 365; # normal maximum no of days to go back +$maxdays = 3*31; # normal maximum no of days to go back $dirprefix = "spots"; $duplth = 20; # the length of text to use in the deduping $dupage = 3*3600; # the length of time to hold spot dups $filterdef = bless ([ # tag, sort, field, priv, special parser ['freq', 'r', 0, 0, \&decodefreq], + ['on', 'r', 0, 0, \&decodefreq], ['call', 'c', 1], ['info', 't', 3], ['by', 'c', 4], @@ -182,7 +183,7 @@ sub search $expr =~ s/\$f(\d)/\$ref->[$1]/g; # swap the letter n for the correct field name # $expr =~ s/\$f(\d)/\$spots[$1]/g; # swap the letter n for the correct field name - dbg("search", "expr='$expr', spotno=$from-$to, day=$dayfrom-$dayto\n"); + dbg("search", "hint='$hint', expr='$expr', spotno=$from-$to, day=$dayfrom-$dayto\n"); # build up eval to execute $eval = qq( @@ -243,7 +244,7 @@ sub ftor } elsif ($aa < $bb) { $out .= "[$aa-$bb]"; } else { - $out .= "[$bb-$aa]"; + $out .= "[0-$bb$aa-9]"; } } return $out; @@ -299,6 +300,7 @@ sub dup chomp $text; $text = substr($text, 0, $duplth) if length $text > $duplth; unpad($text); + $text =~ s/[\\\%]\d+//g; $text =~ s/[^a-zA-Z0-9]//g; my $dupkey = "X$freq|$call|$d|\L$text"; return DXDupe::check($dupkey, $main::systime+$dupage);