X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=web%2Fhtdocs%2Fdetails%2Ffull.mc;h=50f947cb72961db21e60fb47fe1e799d65fe40ff;hb=HEAD;hp=4157b1f4d7263b1ae433742f0062146e89a6be3c;hpb=bbfd131d8f1de160bd3b1f4731eed59222f13d65;p=irspy-moved-to-github.git diff --git a/web/htdocs/details/full.mc b/web/htdocs/details/full.mc index 4157b1f..50f947c 100644 --- a/web/htdocs/details/full.mc +++ b/web/htdocs/details/full.mc @@ -1,9 +1,9 @@ -%# $Id: full.mc,v 1.30 2007-07-03 13:10:50 mike Exp $ <%args> $id <%perl> -my $conn = new ZOOM::Connection("localhost:8018/IR-Explain---1"); +my $db = ZOOM::IRSpy::connect_to_registry(); +my $conn = new ZOOM::Connection($db); $conn->option(elementSetName => "zeerex"); my $query = cql_target($id); my $rs = $conn->search(new ZOOM::Query::CQL($query)); @@ -22,9 +22,11 @@ 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" ], + [ "Proxy (if needed)" => "e:serverInfo/e:authentication/e:proxy" ], [ "Server ID" => 'i:status/i:serverImplementationId/@value' ], [ "Server Name" => 'i:status/i:serverImplementationName/@value' ], [ "Server Version" => 'i:status/i:serverImplementationVersion/@value' ], @@ -45,10 +47,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"); @@ -97,7 +102,7 @@ if ($n == 0) { sub calc_reliability_wrapper { my($id, $xc) = @_; - return calc_reliability($xc); + return calc_reliability_string($xc); } sub calc_init_options { @@ -158,6 +163,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 +184,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"; }