From 1b29429069328d4c2046b471206e865eed0b72c3 Mon Sep 17 00:00:00 2001 From: Mike Taylor Date: Fri, 20 Oct 2006 16:57:40 +0000 Subject: [PATCH] New --- web/htdocs/details/edit.mc | 57 +++++++++++++++++++++++++++++++++++++++++ web/htdocs/details/full.mc | 60 ++++++++++++++++++++++++++++++++++++++++++++ web/htdocs/edit.html | 3 +++ web/htdocs/full.html | 3 +++ 4 files changed, 123 insertions(+) create mode 100644 web/htdocs/details/edit.mc create mode 100644 web/htdocs/details/full.mc create mode 100644 web/htdocs/edit.html create mode 100644 web/htdocs/full.html diff --git a/web/htdocs/details/edit.mc b/web/htdocs/details/edit.mc new file mode 100644 index 0000000..5107d08 --- /dev/null +++ b/web/htdocs/details/edit.mc @@ -0,0 +1,57 @@ +%# $Id: edit.mc,v 1.1 2006-10-20 16:57:40 mike Exp $ +<%args> +$id + +<%once> +use ZOOM; + +<%perl> +my $conn = new ZOOM::Connection("localhost:3313/IR-Explain---1"); +$conn->option(elementSetName => "zeerex"); +my $qid = $id; +$qid =~ s/"/\\"/g; +my $query = qq[rec.id="$qid"]; +my $rs = $conn->search(new ZOOM::Query::CQL($query)); +my $n = $rs->size(); +if ($n == 0) { + $m->comp("/details/error.mc", + title => "Error", message => "No such ID '$id'"); +} else { + my $rec = $rs->record(0); + my $xc = irspy_xpath_context($rec); + my @fields = ( + [ Protocol => "e:serverInfo/\@protocol" ], + [ Host => "e:serverInfo/e:host" ], + [ Port => "e:serverInfo/e:port" ], + [ "Database Name" => "e:serverInfo/e:database" ], + [ "Username (if needed)" => + "e:serverInfo/e:authentication/e:user" ], + [ "Password (if needed)" => + "e:serverInfo/e:authentication/e:password" ], + [ Title => "e:databaseInfo/e:title", + lang => "en", primary => "true" ], + [ Description => "e:databaseInfo/e:description", + lang => "en", primary => "true" ], + [ Author => "e:databaseInfo/e:author" ], + [ Contact => "e:databaseInfo/e:contact" ], + [ Extent => "e:databaseInfo/e:extent" ], + [ History => "e:databaseInfo/e:history" ], + [ "Language of Records" => "e:databaseInfo/e:langUsage" ], + [ Restrictions => "e:databaseInfo/e:restrictions" ], + [ Subjects => "e:databaseInfo/e:subjects" ], + ### Remember to set e:metaInfo/e:dateModified + ); + +

<% xml_encode($id) %>

+ +<%perl> + foreach my $ref (@fields) { + my($caption, $xpath, %attrs) = @$ref; + + + + + +% } +
<% $caption %><% $xc->find($xpath) %>
+% } diff --git a/web/htdocs/details/full.mc b/web/htdocs/details/full.mc new file mode 100644 index 0000000..7e75f4d --- /dev/null +++ b/web/htdocs/details/full.mc @@ -0,0 +1,60 @@ +%# $Id: full.mc,v 1.1 2006-10-20 16:57:40 mike Exp $ +<%args> +$id + +<%once> +use ZOOM; + +<%perl> +my $conn = new ZOOM::Connection("localhost:3313/IR-Explain---1"); +$conn->option(elementSetName => "zeerex"); +my $qid = $id; +$qid =~ s/"/\\"/g; +my $query = qq[rec.id="$qid"]; +my $rs = $conn->search(new ZOOM::Query::CQL($query)); +my $n = $rs->size(); +if ($n == 0) { + $m->comp("/details/error.mc", + title => "Error", message => "No such ID '$id'"); +} else { + my $rec = $rs->record(0); + my $xc = irspy_xpath_context($rec); + my @fields = ( + [ Protocol => "e:serverInfo/\@protocol" ], + [ Host => "e:serverInfo/e:host" ], + [ Port => "e:serverInfo/e:port" ], + [ "Database Name" => "e:serverInfo/e:database" ], + [ "Username (if needed)" => + "e:serverInfo/e:authentication/e:user" ], + [ "Password (if needed)" => + "e:serverInfo/e:authentication/e:password" ], + [ Title => "e:databaseInfo/e:title", + lang => "en", primary => "true" ], + [ Description => "e:databaseInfo/e:description", + lang => "en", primary => "true" ], + [ Author => "e:databaseInfo/e:author" ], + [ Contact => "e:databaseInfo/e:contact" ], + [ Extent => "e:databaseInfo/e:extent" ], + [ History => "e:databaseInfo/e:history" ], + [ "Language of Records" => "e:databaseInfo/e:langUsage" ], + [ Restrictions => "e:databaseInfo/e:restrictions" ], + [ Subjects => "e:databaseInfo/e:subjects" ], + ### Remember to set e:metaInfo/e:dateModified + ); + +

<% xml_encode($id) %>

+ +<%perl> + foreach my $ref (@fields) { + my($caption, $xpath, %attrs) = @$ref; + my $data = $xc->find($xpath); + if ($data) { + + + + + +% } +% } +
<% xml_encode($caption) %><% xml_encode($data) %>
+% } diff --git a/web/htdocs/edit.html b/web/htdocs/edit.html new file mode 100644 index 0000000..7f9ebc6 --- /dev/null +++ b/web/htdocs/edit.html @@ -0,0 +1,3 @@ +%# $Id: edit.html,v 1.1 2006-10-20 16:57:40 mike Exp $ +<& /chrome/layout.mc, %ARGS, title => "Edit target record", + component => "/details/edit.mc" &> diff --git a/web/htdocs/full.html b/web/htdocs/full.html new file mode 100644 index 0000000..3924bf4 --- /dev/null +++ b/web/htdocs/full.html @@ -0,0 +1,3 @@ +%# $Id: full.html,v 1.1 2006-10-20 16:57:40 mike Exp $ +<& /chrome/layout.mc, %ARGS, title => "Full target record", + component => "/details/full.mc" &> -- 1.7.10.4