Change callsign suffix handling somewhat
[spider.git] / perl / Prefix.pm
index 37afddf7c075e7d00efefb143e0585d4b58bdc2f..d7552cb65f0d712b53ddc34ed017463a67cd8fc4 100644 (file)
@@ -26,7 +26,7 @@ $db = undef;                                  # the DB_File handle
 %prefix_loc = ();                              # the meat of the info
 %pre = ();                                             # the prefix list
 $hits = $misses = $matchtotal = 1;             # cache stats
-$lrusize = 1000;                               # size of prefix LRU cache
+$lrusize = 5000;                               # size of prefix LRU cache
 
 sub init
 {
@@ -274,7 +274,7 @@ LM: foreach $call (split /,/, $calls) {
 
                # remove any /0-9 /P /A /M /MM /AM suffixes etc
                if (@parts > 1) {
-                       @parts = grep { !/^\d+$/ && !/^[PABM]$/ && !/^(?:|AM|MM|BCN|JOTA|SIX|WEB|NET|Q\w+)$/; } @parts;
+                       pop @parts if $parts[-1] =~ /^(?:[PABM]|AM|MM|BCN|JOTA|SIX|WEB|NET|Q\w+)$/;
 
                        # can we resolve them by direct lookup
                        my $s = join('/', @parts); 
@@ -472,17 +472,17 @@ sub cty_data
 }
 
 my %valid = (
+                        city => '0,City',
+                        cont => '0,Continent',
+                        cq => '0,CQ',
+                        dxcc => '0,DXCC',
+                        itu => '0,ITU',
                         lat => '0,Latitude,slat',
                         long => '0,Longitude,slong',
-                        dxcc => '0,DXCC',
                         name => '0,Name',
-                        itu => '0,ITU',
-                        cq => '0,CQ',
+                        qra => '0,Locator',
                         state => '0,State',
-                        city => '0,City',
                         utcoff => '0,UTC offset',
-                        cont => '0,Continent',
-                        qra => '0,Locator',
                        );
 
 sub AUTOLOAD