Add UDB to list of displayed fields.
[irspy-moved-to-github.git] / web / htdocs / details / full.mc
index 19008a9..6655727 100644 (file)
@@ -22,6 +22,7 @@ if ($n == 0) {
                  [ Host => "e:serverInfo/e:host" ],
                  [ Port => "e:serverInfo/e:port" ],
                  [ "Database Name" => "e:serverInfo/e:database" ],
+                 [ "Access Name (Unique DB)" => "e:databaseInfo/i:udb" ],
                  [ "Type of Library" => "i:status/i:libraryType" ],
 #                [ "Username (if needed)" => "e:serverInfo/e:authentication/e:user" ],
 #                [ "Password (if needed)" => "e:serverInfo/e:authentication/e:password" ],
@@ -45,10 +46,13 @@ if ($n == 0) {
                  [ "Services" => \&calc_init_options, $xc ],
                  [ "Bib-1 Use attributes" => \&calc_ap, $xc, "bib-1" ],
                  [ "Dan-1 Use attributes" => \&calc_ap, $xc, "dan-1" ],
+                 [ "Bath Profile searches" => \&calc_bath, $xc ],
                  [ "Operators" => \&calc_boolean, $xc ],
                  [ "Named Result Sets" => \&calc_nrs, $xc ],
                  [ "Record syntaxes" => \&calc_recsyn, $xc ],
                  [ "Explain" => \&calc_explain, $xc ],
+                 [ "Multiple OPAC records" => \&calc_mor, $xc ],
+                 [ "Piggyback searching" => \&calc_piggyback, $xc ],
                  );
     my $title = $xc->find("e:databaseInfo/e:title");
 </%perl>
@@ -158,6 +162,15 @@ sub _list_ap {
     return sort { $a <=> $b } map { $_->findvalue(".") } @nodes;
 }
 
+sub calc_bath {
+    my($id, $xc) = @_;
+
+    my @nodes = $xc->findnodes('i:status/i:search_bath[@ok = "1"]');
+    my $res = join(", ", map { $_->findvalue('@name') } @nodes);
+    $res = "[none]" if $res eq "";
+    return $res;
+}
+
 sub calc_boolean {
     my($id, $xc) = @_;
 
@@ -170,10 +183,14 @@ sub calc_boolean {
     return $res;
 }
 
-sub calc_nrs {
-    my($id, $xc) = @_;
+sub calc_nrs { _calc_boolean(@_, 'i:status/i:named_resultset[@ok = "1"]') }
+sub calc_mor { _calc_boolean(@_, 'i:status/i:multiple_opac[@ok = "1"]') }
+sub calc_piggyback { _calc_boolean(@_, 'i:status/i:piggyback[@ok = "1"]') }
+
+sub _calc_boolean {
+    my($id, $xc, $xpath) = @_;
 
-    my @nodes = $xc->findnodes('i:status/i:named_resultset[@ok = "1"]');
+    my @nodes = $xc->findnodes($xpath);
     return @nodes ? "Yes" : "No";
 }