Truncate overlong table entries.
[irspy-moved-to-github.git] / web / htdocs / details / ap.mc
1 %# $Id: ap.mc,v 1.1 2007-06-28 12:19:37 mike Exp $
2 <%args>
3 $id
4 $set
5 </%args>
6 <%perl>
7 my $conn = new ZOOM::Connection("localhost:8018/IR-Explain---1");
8 $conn->option(elementSetName => "zeerex");
9 my $query = cql_target($id);
10 my $rs = $conn->search(new ZOOM::Query::CQL($query));
11 my $n = $rs->size();
12 if ($n == 0) {
13     return $m->comp("/details/error.mc",
14                     title => "Error", message => "No such ID '$id'");
15 }
16
17 my $xc = irspy_xpath_context($rs->record(0));
18 my $title = $xc->find("e:databaseInfo/e:title");
19 </%perl>
20      <h2><% xml_encode($title, "") %></h2>
21 <%perl>
22 my $expr = 'e:indexInfo/e:index[@search = "true"]/e:map/e:attr[
23         @set = "'.$set.'" and @type = "1"]';
24 my @nodes = $xc->findnodes($expr);
25 my @aps = sort { $a <=> $b } map { $_->findvalue(".") } @nodes;
26
27 $n = @aps;
28 if ($n == 0) {
29     print "     [none]\n";
30     return;
31 }
32 </%perl>
33      <table class="fullrecord" border="1" cellspacing="0" cellpadding="5" width="100%">
34 % foreach my $ap (@aps) {
35 % my $name = "[unknown]";
36 % $name = bib1_access_point($ap) if $set eq "bib-1";
37 % ### Should support translation of other attribute sets' access points
38       <tr>
39        <th><% $ap %></th>
40        <td><% xml_encode($name) %></td>
41       </tr>
42 % }
43      </table>