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://sru.miketaylor.org.uk/?a=commitdiff_plain;h=cbb47a8ba994e8d60935581a4b00e3d635baf2f5;p=irspy-moved-to-github.git
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'";
}
}
%perl>
-% if (defined $id && $r->param("op") ne "copy") {
+% if (defined $id) {
This Target