Summary: | Koha lets you place item-level holds without a pick-up place | ||
---|---|---|---|
Product: | Koha | Reporter: | Peter Vashchuk <stalkernoid> |
Component: | Hold requests | Assignee: | Peter Vashchuk <stalkernoid> |
Status: | CLOSED FIXED | QA Contact: | Katrin Fischer <katrin.fischer> |
Severity: | critical | ||
Priority: | P5 - low | CC: | arthur.suzuki, gmcharlt, joonas.kylmala, lucas, martin.renvoize, nugged |
Version: | unspecified | ||
Hardware: | All | ||
OS: | All | ||
Change sponsored?: | --- | Patch complexity: | Small patch |
Documentation contact: | Documentation submission: | ||
Text to go in the release notes: | Version(s) released in: |
22.11.00, 22.05.01
|
|
Circulation function: | |||
Attachments: |
Bug 30960: Koha lets to place item-level holds without a pick-up place
Bug 30960: Don't allow user to place the hold without a pick-up place Bug 30960: Don't allow user to place the hold without a pick-up place Bug 30960: Don't allow user to place the hold without a pick-up place Bug 30960: Fix JS error message when no pick-up location is selected when placing a hold |
Description
Peter Vashchuk
2022-06-14 09:44:00 UTC
Created attachment 136066 [details] [review] Bug 30960: Koha lets to place item-level holds without a pick-up place It's possible to place item-level hold without selecting a pick-up location, which causes problems: if the item is then returned, Koha tells about a hold, but gives error 500. At customer's hold tab you see the number of holds, but cannot see the actual holds there. However, if you go to the title in question, then modify the hold so that it has a pick-up place, then the hold will work normally again. This patch fixes already existing but not working js error message and ensures that hold cannot be made while pickup location is undefined. To reproduce: 1. Go to admin page, to the libraries configurations, and disable pickup location for one of them. 2. Pick any biblio that has items that have that same library as a default pickup location. 3. When placing the item-level hold, notice that the pickup location dropdown box is empty by default. Keep it empty, place the hold. 4. Go to the patron's page of the patron who you placed that hold for, check that it doesn't show the new hold. 5. Apply patch. 6. Repeat steps 2 and 3, it shouldn't let you make the item-level hold until you select a specific pickup location. Comment on attachment 136066 [details] [review] Bug 30960: Koha lets to place item-level holds without a pick-up place Review of attachment 136066 [details] [review]: ----------------------------------------------------------------- ::: reserve/placerequest.pl @@ +83,2 @@ > > + if ( $item_pickup_location || $can_item_be_reserved eq 'OK' || ( $can_item_be_reserved ne 'itemAlreadyOnHold' && $can_override ) ) { $item_pickup_location shouldn't be here, this lets anyone to place holds, regardless of the circ rules/override allowability. Also the commit title should be changed to describe the change, not the issue at hand, so => Disallow placing item-level holds without a pick-up place Created attachment 136257 [details] [review] Bug 30960: Don't allow user to place the hold without a pick-up place It's possible to place item-level hold without selecting a pick-up location, which causes problems: if the item is then returned, Koha tells about a hold, but gives error 500. At customer's hold tab you see the number of holds, but cannot see the actual holds there. However, if you go to the title in question, then modify the hold so that it has a pick-up place, then the hold will work normally again. This patch fixes already existing but not working js error message and ensures that hold cannot be made while pickup location is undefined. To reproduce: 1. Go to admin page, to the libraries configurations, and disable pickup location for one of them. 2. Pick any biblio that has items that have that same library as a default pickup location. 3. When placing the item-level hold, notice that the pickup location dropdown box is empty by default. Keep it empty, place the hold. 4. Go to the patron's page of the patron who you placed that hold for, check that it doesn't show the new hold. 5. Apply patch. 6. Repeat steps 2 and 3, it shouldn't let you make the item-level hold until you select a specific pickup location. Created attachment 136304 [details] [review] Bug 30960: Don't allow user to place the hold without a pick-up place It's possible to place item-level hold without selecting a pick-up location, which causes problems: if the item is then returned, Koha tells about a hold, but gives error 500. At customer's hold tab you see the number of holds, but cannot see the actual holds there. However, if you go to the title in question, then modify the hold so that it has a pick-up place, then the hold will work normally again. This patch fixes already existing but not working js error message and ensures that hold cannot be made while pickup location is undefined. To reproduce: 1. Go to admin page, to the libraries configurations, and disable pickup location for one of them. 2. Pick any biblio that has items that have that same library as a default pickup location. 3. When placing the item-level hold, notice that the pickup location dropdown box is empty by default. Keep it empty, place the hold. 4. Go to the patron's page of the patron who you placed that hold for, check that it doesn't show the new hold. 5. Apply patch. 6. Repeat steps 2 and 3, it shouldn't let you make the item-level hold until you select a specific pickup location. Signed-off-by: David Nind <david@davidnind.com> Created attachment 136325 [details] [review] Bug 30960: Don't allow user to place the hold without a pick-up place It's possible to place item-level hold without selecting a pick-up location, which causes problems: if the item is then returned, Koha tells about a hold, but gives error 500. At customer's hold tab you see the number of holds, but cannot see the actual holds there. However, if you go to the title in question, then modify the hold so that it has a pick-up place, then the hold will work normally again. This patch fixes already existing but not working js error message and ensures that hold cannot be made while pickup location is undefined. To reproduce: 1. Go to admin page, to the libraries configurations, and disable pickup location for one of them. 2. Pick any biblio that has items that have that same library as a default pickup location. 3. When placing the item-level hold, notice that the pickup location dropdown box is empty by default. Keep it empty, place the hold. 4. Go to the patron's page of the patron who you placed that hold for, check that it doesn't show the new hold. 5. Apply patch. 6. Repeat steps 2 and 3, it shouldn't let you make the item-level hold until you select a specific pickup location. Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Created attachment 136326 [details] [review] Bug 30960: Fix JS error message when no pick-up location is selected when placing a hold It's possible to place item-level hold without selecting a pick-up location, which causes problems: if the item is then returned, Koha tells about a hold, but gives error 500. At patron's hold tab you see the number of holds, but cannot see the actual holds there. However, if you go to the title in question, then modify the hold so that it has a pick-up location, then the hold will work normally again. This patch fixes already existing but not working JS error message and ensures that hold cannot be made while pickup location is undefined. To reproduce: 1. Go to admin page, to the libraries configurations, and disable pickup location for one of them. 2. Pick any biblio that has items that have that same library as a default pickup location. 3. When placing the item-level hold, notice that the pickup location dropdown box is empty by default. Keep it empty, place the hold. 4. Go to the patron's page of the patron who you placed that hold for, check that it doesn't show the new hold. 5. Apply patch. 6. Repeat steps 2 and 3, it shouldn't let you make the item-level hold until you select a specific pickup location. Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> I'm not sure about this patch actually.. the controller change feels somehow wrong, silently skipping. I'd expect to either see an error thrown back or for us to default to the items homebranch or holdingbranch (though holdingbranch may be 'unknown' as the item may be on loan) OK, I see.. the controller already has president of just skipping bad case and hopes for the best clientside. As you were.. Pushed to master for 22.11. Nice work everyone, thanks! Backported to 22.05.x for 22.05.01 I don't reproduce the bug in 21.11.x. Not backporting. |