From 56fea3a8f82dc26f7e40eab488c91fe4e013cddc Mon Sep 17 00:00:00 2001 From: Fabian Erni <ferni@snowflake.ch> Date: Tue, 26 Feb 2013 15:21:04 +0100 Subject: [PATCH] Update module/VuFind/src/VuFind/Controller/Plugin/Holds.php For the Aleph Driver, it's possible that the item ID (id from route) and the holding ID (id from query) are different. With the += operator for merging, the id attribute from $keyValueArray was not used and an invalid REST url was sent to the ILS. I'm not sure why the record id is loaded from the route here. With this fix, it's only used as a fallback when not defined in the query as a HMACKeys-variable of the ILS. Aleph uses id:item_id which causes the conflict here. --- module/VuFind/src/VuFind/Controller/Plugin/Holds.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/VuFind/src/VuFind/Controller/Plugin/Holds.php b/module/VuFind/src/VuFind/Controller/Plugin/Holds.php index 1b6e3f31353..3e95b87b9ce 100644 --- a/module/VuFind/src/VuFind/Controller/Plugin/Holds.php +++ b/module/VuFind/src/VuFind/Controller/Plugin/Holds.php @@ -212,7 +212,7 @@ class Holds extends AbstractPlugin $gatheredDetails['id'] = $params->fromRoute('id'); // Get Values Passed from holdings.php - $gatheredDetails += $keyValueArray; + $gatheredDetails = array_merge($gatheredDetails, $keyValueArray); return $gatheredDetails; } -- GitLab