From: Mike Taylor Date: Thu, 3 May 2007 09:33:10 +0000 (+0000) Subject: ID used for target-specific menu is that of newly created, copied or X-Git-Tag: CPAN-v1.02~441 X-Git-Url: http://git.indexdata.com/?p=irspy-moved-to-github.git;a=commitdiff_plain;h=cbb47a8ba994e8d60935581a4b00e3d635baf2f5 ID used for target-specific menu is that of newly created, copied or edited record rather than that of one that it was copied from. --- diff --git a/web/htdocs/chrome/layout.mc b/web/htdocs/chrome/layout.mc index 1ec34b3..a5b9f08 100644 --- a/web/htdocs/chrome/layout.mc +++ b/web/htdocs/chrome/layout.mc @@ -1,4 +1,4 @@ -%# $Id: layout.mc,v 1.30 2007-04-27 14:04:40 mike Exp $ +%# $Id: layout.mc,v 1.31 2007-05-03 09:33:10 mike Exp $ <%args> $debug => undef $title @@ -77,6 +77,10 @@ use ZOOM::IRSpy::Utils qw(isodate xml_encode cql_target cql_quote [Others]

<%perl> +# 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 = $r->param("id"); { # Make up ID for newly created records. @@ -86,15 +90,14 @@ my $id = $r->param("id"); my $dbname = $r->param("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 $protocol && defined $host && + 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