added support for for truncation attribute to z39 queries. Thanks, James!
authorerickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 21 Apr 2008 15:41:45 +0000 (15:41 +0000)
committererickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 21 Apr 2008 15:41:45 +0000 (15:41 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/branches/rel_1_2@9394 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/src/perlmods/OpenILS/Application/Search/Z3950.pm

index e2dd3f9..7908069 100755 (executable)
@@ -284,13 +284,13 @@ sub compile_query {
     # "structure attribute"
     # -------------------------------------------------------------------
        for( keys %$hash ) {
-#              $str .= '@attr ' .
-#                      $services{$service}->{attrs}->{$_}->{format} . '=' .
-#                      $services{$service}->{attrs}->{$_}->{code} . " \"" . $$hash{$_} . "\" ";                
-        $str .= 
-            '@attr 1=' . $services{$service}->{attrs}->{$_}->{code} . # add the use attribute
-            ' @attr 4=' . $services{$service}->{attrs}->{$_}->{format} . # add the structure attribute
-            " \"" . $$hash{$_} . "\" "; # add the search term
+               next unless ( exists $services{$service}->{attrs}->{$_} );
+        $str .= '@attr 1=' . $services{$service}->{attrs}->{$_}->{code} . # add the use attribute
+                       ' @attr 4=' . $services{$service}->{attrs}->{$_}->{format}; # add the structure attribute
+               if (exists $services{$service}->{attrs}->{$_}->{truncation}){
+                       $str .= ' @attr 5=' . $services{$service}->{attrs}->{$_}->{truncation};
+               }
+               $str .= " \"" . $$hash{$_} . "\" "; # add the search term
        }
        return $str;
 }