Bug 14387: Merge reference selection has no effect when merging authorities.
authormxbeaulieu <maxime.beaulieu@inlibro.com>
Mon, 15 Jun 2015 15:05:51 +0000 (11:05 -0400)
committerMason James <mtj@kohaaloha.com>
Fri, 28 Aug 2015 02:55:24 +0000 (14:55 +1200)
This patch swaps the authority records according to the refenrece record selection.

To TEST:
Merge two authority records, select the second as merge reference.
The reference authority is always the first.

Apply the patch.
Repeat previous steps, the authority is now merged using the selected reference record.

modified:   authorities/merge.pl

Signed-off-by: Nick Clemens <nick@quecheelibrary.org>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit ee7666a5fdd1b04f1bf50aa89900488e1a01402b)
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Liz Rea <wizzyrea@gmail.com>

authorities/merge.pl

index 3628381..6176daf 100755 (executable)
@@ -123,10 +123,13 @@ else {
                 }
             }
 
-            my $notreference =
-              ( $authid[0] == $mergereference )
-              ? $authid[1]
-              : $authid[0];
+            #Setting $notreference
+            my $notreference = $authid[1];
+            if($mergereference == $notreference){
+                $notreference = $authid[0];
+                #Swap so $recordObj1 is always the correct merge reference
+                ($recordObj1, $recordObj2) = ($recordObj2, $recordObj1);
+            }
 
             # Creating a loop for display