die on unsupported format
[Biblio-Z3950.git] / server.pl
index 4dc54d5..f1ea91b 100755 (executable)
--- a/server.pl
+++ b/server.pl
@@ -8,6 +8,7 @@ use Net::Z3950::OID;
 use Data::Dumper;
 use COBISS;
 use Aleph;
+use Encode;
 
 my $databases = {
        'COBISS' => 'COBISS',
@@ -62,6 +63,8 @@ diag "using $module for $database ", Dumper( $from );
         return;
     }
 
+       $query = decode('utf-8', $query); # FIXME Zoom encoding
+
 diag "search for $query";
 
     my $setname  = $self->{SETNAME};
@@ -118,13 +121,13 @@ sub FetchHandle {
         return;
     }
 
-    $self->{BASENAME} = "HtmlZ3950";
+    $self->{BASENAME} = $rs->{database};
 
        my $format =
                $req_form eq Net::Z3950::OID::xml()     ? 'xml' :
                $req_form eq Net::Z3950::OID::unimarc() ? 'unimarc' :
                $req_form eq Net::Z3950::OID::usmarc()  ? 'marc' : # XXX usmarc -> marc
-               undef;
+               die "unknown format $req_form";
 
        if ( ! $format ) {
                warn "ERROR: $req_form format not supported";
@@ -262,7 +265,7 @@ warn "# usemap ", dump($usemap);
         }
     }
 
-    my $q = $prefix . $self->{term};
+    my $q = $prefix . $self->{term} . '*';
        print "# q: $q\n";
        return $q;
 }