X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=web%2Fhtdocs%2Fdetails%2Ffull.mc;h=2ce16c35522db7e708ad037dc50e3adf6e43bfdb;hb=e277114d1174f602b137e85b08837541f3aaa4b1;hp=a152a74e35ca3f2bd50d645c1a964ef3f21fa5db;hpb=22758a77f0c1cb3f41357468be56cd6b9207baff;p=irspy-moved-to-github.git diff --git a/web/htdocs/details/full.mc b/web/htdocs/details/full.mc index a152a74..2ce16c3 100644 --- a/web/htdocs/details/full.mc +++ b/web/htdocs/details/full.mc @@ -1,4 +1,4 @@ -%# $Id: full.mc,v 1.11 2006-11-06 17:34:58 mike Exp $ +%# $Id: full.mc,v 1.14 2006-11-14 16:24:39 mike Exp $ <%args> $id @@ -44,15 +44,21 @@ if ($n == 0) { [ "Implementation Name" => "i:status/i:implementationName" ], [ "Implementation Version" => "i:status/i:implementationVersion" ], [ "Reliability" => \&calc_reliability, $xc ], - [ "Services" => sub { "### IRSpy does not yet check for search, present, delSet, concurrentOperations, namedResultSets, etc. and store the information is a usable form." } ], + [ "Services" => sub { " +### IRSpy does not yet check for search, present, delSet, +concurrentOperations, namedResultSets, etc. and store the information +is a usable form. This information should probably be harvested from +the Init Response. +" } ], [ "Bib-1 Use attributes" => \&calc_ap, $xc, "bib-1" ], [ "Dan-1 Use attributes" => \&calc_ap, $xc, "dan-1" ], [ "Operators" => \&calc_boolean, $xc ], + [ "Named Result Sets" => \&calc_nrs, $xc ], [ "Record syntaxes" => \&calc_recsyn, $xc ], - [ "Explain" => sub { "### CategoryList, TargetInfo, DatabaseInfo, RecordSyntaxInfo, AttributeSetInfo, AttributeDetails" } ], + [ "Explain" => \&calc_explain, $xc ], ); -

<% xml_encode($xc->find("e:databaseInfo/e:title")) %>

+

<% xml_encode($xc->find("e:databaseInfo/e:title"), "") %>

<%perl> foreach my $ref (@fields) { @@ -131,14 +137,34 @@ sub calc_boolean { # The standard ZeeRex record should be extended with a # "supports" type for this. my @nodes = $xc->findnodes('i:status/i:boolean[@ok = "1"]'); - return join(", ", map { $_->findvalue('@operator') } @nodes); + my $res = join(", ", map { $_->findvalue('@operator') } @nodes); + $res = "[none]" if $res eq ""; + return $res; +} + +sub calc_nrs { + my($xc) = @_; + + my @nodes = $xc->findnodes('i:status/i:named_resultset[@ok = "1"]'); + return @nodes ? "Yes" : "No"; } sub calc_recsyn { my($xc) = @_; my @nodes = $xc->findnodes('e:recordInfo/e:recordSyntax'); - return join(", ", map { $_->findvalue('@name') } @nodes); + my $res = join(", ", map { $_->findvalue('@name') } @nodes); + $res = "[none]" if $res eq ""; + return $res; +} + +sub calc_explain { + my($xc) = @_; + + my @nodes = $xc->findnodes('i:status/i:explain[@ok = "1"]'); + my $res = join(", ", map { $_->findvalue('@category') } @nodes); + $res = "[none]" if $res eq ""; + return $res; }