X-Git-Url: http://git.indexdata.com/?p=irspy-moved-to-github.git;a=blobdiff_plain;f=web%2Fhtdocs%2Fchrome%2Flayout.mc;h=b99cb80e7ebf22f6cdced5772f179834c580481b;hp=fa0d6600dfb829154b52462d8d2ea8d12978ec5b;hb=d4baae06246f4218bcd30b8b8c91a0b862408db7;hpb=030a789ac8395f6796a35ca836994613bd536727 diff --git a/web/htdocs/chrome/layout.mc b/web/htdocs/chrome/layout.mc index fa0d660..b99cb80 100644 --- a/web/htdocs/chrome/layout.mc +++ b/web/htdocs/chrome/layout.mc @@ -1,18 +1,21 @@ -%# $Id: layout.mc,v 1.22 2007-01-02 17:26:40 mike Exp $ +%# $Id: layout.mc,v 1.38 2007-07-17 13:07:57 mike Exp $ <%args> $debug => undef $title $component <%once> -use URI::Escape; +use URI::Escape qw(uri_escape uri_escape_utf8); use ZOOM; use ZOOM::IRSpy::Web; -use ZOOM::IRSpy::Utils qw(isodate xml_encode cql_quote cql_target - irspy_xpath_context modify_xml_document +use ZOOM::IRSpy::Utils qw(utf8param isodate xml_encode cql_target cql_quote + irspy_xpath_context irspy_make_identifier + irspy_record2identifier + irspy_identifier2target modify_xml_document bib1_access_point); % $r->content_type("text/html; charset=utf-8"); +% my $text = $m->scomp($component, %ARGS); - -
@@ -55,9 +64,10 @@ use ZOOM::IRSpy::Utils qw(isodate xml_encode cql_quote cql_target

Home
- Test all targets
+ Test all targets
Find a target
- Add a target
+ Add a target
+ Upload a target
Statistics

@@ -66,42 +76,44 @@ use ZOOM::IRSpy::Utils qw(isodate xml_encode cql_quote cql_target % foreach my $i ('a' .. 'z') { <% uc($i) %> % } + [Others]

<%perl> -my $id = $r->param("id"); +# Find the identifier to use in the record-specific menu, if any. If +# the identifier components are all present (e.g. because a record has +# just been edited or copied) we make an ID from those; otherwise we +# use the "id" parameter, if specified. +my $id = utf8param($r, "id"); { - # Make up ID for newly created records. It would be more - # rigorously correct, but insanely inefficient, to submit the - # record to Zebra and then search for it; but since we know the - # formula for IDs anyway, we just build one by hand. - my $id = $r->param("id"); - my $host = $r->param("host"); - my $port = $r->param("port"); - my $dbname = $r->param("dbname"); - #warn "id='$id', host='$host', port='$port', dbname='$dbname'"; + # Make up ID for newly created records. + my $protocol = utf8param($r, "protocol"); + my $host = utf8param($r, "host"); + my $port = utf8param($r, "port"); + my $dbname = utf8param($r, "dbname"); + #warn "id='$id', protocol='$protocol' host='$host', port='$port', dbname='$dbname'"; #warn "%ARGS = {\n" . join("", map { "\t'$_' => '" . $ARGS{$_} . ",'\n" } sort keys %ARGS) . "}\n"; - if ((!defined $id || $id eq "") && - defined $host && defined $port && defined $dbname) { - $id = "$host:$port/$dbname"; + if (defined $protocol && defined $host && + defined $port && defined $dbname) { + $id = irspy_make_identifier($protocol, $host, $port, $dbname); #warn "id set to '$id'"; } } -% if (defined $id && $r->param("op") ne "copy") { +% if (defined $id) {
This Target
Show details
- ">Edit details + ">Edit details
- ">Copy target + ">Copy target
- Delete target + Delete target

- ">Quick Test + ">Quick Test
- ">Full Test + ">Full Test

XML @@ -133,7 +145,7 @@ my $id = $r->param("id");   -<& $component, %ARGS &> +% print $text; @@ -143,7 +155,11 @@ my $id = $r->param("id"); Powered by Index Data + >Index Data. +
+ Report errors and omissions to irspy@indexdata.com