From ace8e7dc1ddecb969aeda8aefd8bd77e12f8a70f Mon Sep 17 00:00:00 2001
From: Srdjan <srdjan@catalyst.net.nz>
Date: Fri, 1 Nov 2013 21:24:11 +1300
Subject: [PATCH] [PASSED QA] Bug 11184: correct attribute cloning for the
 maint screen

To test - Patron details entry page:
* Have  ExtendedPatronAttributes enabled. Check that "Additional
  attributes and identifiers" section behaves.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tested with different types of patron attributes:
- repeatable
- linked to an authorized value
- free text
Tested editing, adding, removing one of multiple, adding multiple,
etc. No regressions found.
Passes all tests and QA script.
---
 members/memberentry.pl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/members/memberentry.pl b/members/memberentry.pl
index 28ab5e0..ff92447 100755
--- a/members/memberentry.pl
+++ b/members/memberentry.pl
@@ -781,7 +781,7 @@ sub patron_attributes_form {
         };
         if (exists $attr_hash{$attr_type->code()}) {
             foreach my $attr (@{ $attr_hash{$attr_type->code()} }) {
-                my $newentry = { map { $_ => $entry->{$_} } %$entry };
+                my $newentry = { %$entry };
                 $newentry->{value} = $attr->{value};
                 $newentry->{password} = $attr->{password};
                 $newentry->{use_dropdown} = 0;
@@ -795,7 +795,7 @@ sub patron_attributes_form {
             }
         } else {
             $i++;
-            my $newentry = { map { $_ => $entry->{$_} } %$entry };
+            my $newentry = { %$entry };
             if ($attr_type->authorised_value_category()) {
                 $newentry->{use_dropdown} = 1;
                 $newentry->{auth_val_loop} = GetAuthorisedValues($attr_type->authorised_value_category());
-- 
1.8.3.2