[Bug 8367] New: How long is a hold waiting for pickup at a more granular level
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Priority: P5 - low Change sponsored?: --- Bug ID: 8367 CC: gmcharlt@gmail.com, kyle.m.hall@gmail.com Assignee: koha-bugs@lists.koha-community.org Summary: How long is a hold waiting for pickup at a more granular level Severity: enhancement Classification: Unclassified OS: All Reporter: paul.poulain@biblibre.com Hardware: All Status: NEW Version: master Component: Circulation Product: Koha The syspref reservemaxpickupdelay says how long a hold is waiting for patron pickup. This could be set at issuingrule level, to let a student of library A 4 days and a teacher of library B 10 days -- You are receiving this mail because: You are the assignee for the bug. You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Paul Poulain <paul.poulain@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |8362 -- You are receiving this mail because: You are the assignee for the bug. You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 claire.hernandez@biblibre.com <claire.hernandez@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |claire.hernandez@biblibre.c | |om -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #1 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 12130 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=12130&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay This patch adds: - a new column in the issuing rules - a new field issuingrules.holdspickupdelay You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. To test: Check there is no regression with a normal reserve workflow. Add one or more issuingrules. In 4 templates, you can see the max pickup delay for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). -- You are receiving this mail because: You are the assignee for the bug. You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |Needs Signoff CC| |jonathan.druart@biblibre.co | |m Assignee|koha-bugs@lists.koha-commun |jonathan.druart@biblibre.co |ity.org |m -- You are receiving this mail because: You are the assignee for the bug. You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Owen Leonard <oleonard@myacpl.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |Patch doesn't apply --- Comment #2 from Owen Leonard <oleonard@myacpl.org> --- I tried to manually fix the merge errors and ended up getting this error: The 'days' parameter (undef) to DateTime::Duration::new was an 'undef', which is not one of the allowed types: scalar at /usr/lib/perl5/DateTime/Duration.pm line 31 DateTime::Duration::new(undef, 'days', undef) called at /usr/lib/perl5/DateTime.pm line 1640 DateTime::add('DateTime=HASH(0xa1d3494)', 'days', undef) called at /home/oleonard/kohaclone/C4/Reserves.pm line 552 C4::Reserves::GetMaxPickupDate('HASH(0xa11168c)', undef) called at /home/oleonard/kohaclone/circ/waitingreserves.pl line 107 Not sure if this is a real error or whether I made a mistake in merging? -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #12130|0 |1 is obsolete| | --- Comment #3 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 13139 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=13139&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay This patch adds: - a new column in the issuing rules - a new field issuingrules.holdspickupdelay You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. To test: Check there is no regression with a normal reserve workflow. Add one or more issuingrules. In 4 templates, you can see the max pickup delay for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Patch doesn't apply |Needs Signoff --- Comment #4 from Jonathan Druart <jonathan.druart@biblibre.com> --- (In reply to comment #2)
Not sure if this is a real error or whether I made a mistake in merging?
Maybe both :) The merge was not easy to resolve and errors exist in the previous patch. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |Failed QA CC| |kyle@bywatersolutions.com --- Comment #5 from Kyle M Hall <kyle@bywatersolutions.com> --- This patch looks good in all cases except for waitingreserves.pl. Even though my hold is past its pickup window, it is showing in the waiting holds tab, and not in the holds over tab is it should be. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #6 from Jonathan Druart <jonathan.druart@biblibre.com> --- Hi Kyle, What is the value filled for the "Available since-until" column ? I have 2 holds and 1 by tab: first have "19/11/2012 - 26/11/2012", second (over) "28/10/2012 - 04/11/2012". And it is what is expected. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #7 from Kyle M Hall <kyle@bywatersolutions.com> --- On circulation.pl it shows: Item 1 waiting at Centerville until 11/20/2012 On waitingreserves.pl it shows: 11/19/2012 - 11/26/2012 so it appears to be using the new issue rules setting for circulation.pl, but it's still using the system preference for waitingreserves.pl I have my rule set to 1 day, and my system pref set to 7. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #8 from Kyle M Hall <kyle@bywatersolutions.com> --- Created attachment 13602 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=13602&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay - Followup -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Failed QA |Needs Signoff -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #13139|0 |1 is obsolete| | --- Comment #9 from Kyle M Hall <kyle@bywatersolutions.com> --- Created attachment 13603 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=13603&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay This patch adds: - a new column in the issuing rules - a new field issuingrules.holdspickupdelay You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. To test: Check there is no regression with a normal reserve workflow. Add one or more issuingrules. In 4 templates, you can see the max pickup delay for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #13602|0 |1 is obsolete| | --- Comment #10 from Kyle M Hall <kyle@bywatersolutions.com> --- Created attachment 13604 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=13604&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay - Followup -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #13604|0 |1 is obsolete| | --- Comment #11 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 13624 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=13624&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay - Followup Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #12 from Jonathan Druart <jonathan.druart@biblibre.com> --- (In reply to comment #10)
Created attachment 13604 [details] Bug 8367: Add more granular level for ReservesMaxPickUpDelay - Followup
Good catch Kyle, Thanks! It would be worth having an other SO for these patches -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |Signed Off Patch complexity|--- |Medium patch -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Signed Off |Needs Signoff -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |Signed Off --- Comment #13 from Kyle M Hall <kyle@bywatersolutions.com> --- It's been a month without another signer. I think it's time to move these patches to QA. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #14 from Paul Poulain <paul.poulain@biblibre.com> --- (In reply to comment #13)
It's been a month without another signer. I think it's time to move these patches to QA.
agreed (and agreed also because now QAers are supposed to test the patch) -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 M. de Rooy <m.de.rooy@rijksmuseum.nl> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |m.de.rooy@rijksmuseum.nl QA Contact| |m.de.rooy@rijksmuseum.nl --- Comment #15 from M. de Rooy <m.de.rooy@rijksmuseum.nl> --- QA: Looking at this now. Rebasing it first.. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #16 from M. de Rooy <m.de.rooy@rijksmuseum.nl> --- Created attachment 15334 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=15334&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay This patch adds: - a new column in the issuing rules - a new field issuingrules.holdspickupdelay You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. To test: Check there is no regression with a normal reserve workflow. Add one or more issuingrules. In 4 templates, you can see the max pickup delay for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Rebased on Feb 15, 2013 (Marcel de Rooy): Merge conflict in opac/opac-user.pl Merge conflict in koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt Merge conflict in installer/data/mysql/updatedatabase.pl Merge conflict in circ/waitingreserves.pl -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #17 from M. de Rooy <m.de.rooy@rijksmuseum.nl> --- Created attachment 15335 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=15335&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay - Followup Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 M. de Rooy <m.de.rooy@rijksmuseum.nl> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #13603|0 |1 is obsolete| | -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 M. de Rooy <m.de.rooy@rijksmuseum.nl> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #13624|0 |1 is obsolete| | -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 M. de Rooy <m.de.rooy@rijksmuseum.nl> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Signed Off |Failed QA --- Comment #18 from M. de Rooy <m.de.rooy@rijksmuseum.nl> --- QA Comment: I like the feature! But IMO it needs some more attention before pushing it: Issue while resolving merge conflict in circ/waitingreserves.pl: The dateformat template var has been removed in master (was in the patch) but is still used in one line of template (waitingreserves.pl). Please check. IMO it is confusing that the old pref exists besides the new column in issuing rules. I would suggest simplification by obsoleting pref ReservesMaxPickUpDelay. At this time behavior is not so clear anymore. Note that there is no comment either on the preferences form that this syspref could be overruled by issuing rules. And the other way around: If no rule is found, the pref still holds. Does the user still understand that from the rules form? GetMaxPickupDate: It may be worth to consider if it would be easier to add a maxpickupdate to the reserves table instead of recalculating it "everywhere". GetMaxPickupDelay: Only called by GetMaxPickupDate. A serious issue IMO is the FIXME in CancelExpiredReserves. Instead of calling GetMaxPickupDelay, you just use the pref value! I understand that from performance point of view, but this is "killing" the feature. When using the cron job to remove holds, the new pickup delay should be used not the old one. Note that you could easily resolve this by looking at a maxpickupdate when adding this to the reserve table and calculating it at confirm hold time. Minor representation issue: In the opac user form I see the max pickup date. Would it be consistent to show it on staff catalogue detail too (Holds tab)? Setting to Failed QA, mainly for the cancelling holds issue. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #19 from M. de Rooy <m.de.rooy@rijksmuseum.nl> --- Just another thought: If you would remove the pref, please add a db change to copy it into the new column of the existing issuing rules. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #20 from Jonathan Druart <jonathan.druart@biblibre.com> --- (In reply to comment #18)
QA Comment: Note that you could easily resolve this by looking at a maxpickupdate when adding this to the reserve table and calculating it at confirm hold time.
Hi Marcel, Thanks for QAing this patch! It is a great idea even though it was not so easy :) A patch is coming. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Failed QA |Needs Signoff -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #21 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 15369 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=15369&action=edit Bug 8367: Followup Add more granular level for ReservesMaxPickUpDelay This patch removes the ReservesMaxPickUpDelay syspref. The update database script will update the issuingrules table with the correct value before removing it. 1 new column: reserves.maxpickupdate (and for old_reserves). It contains the waitingdate + the corresponding max pickup delay. Each time the waitingdate is modified, this value will be modified too. To test: Play with the reserve workflow (Add, remove, change priority, etc.) -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #22 from Kyle M Hall <kyle@bywatersolutions.com> --- Questions, does this take into account days the library is closed? It would make sense for the expiration day for pickups to skip to the next open day if they land on a holiday. This is something that needed has needed to be addressed for some time now. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #23 from M. de Rooy <m.de.rooy@rijksmuseum.nl> --- (In reply to comment #20)
It is a great idea even though it was not so easy :) Yes, I see. In circulation nothing seems to be easy.. Will try to have a look at your patches again later this week.
Just a question from quickly glancing through your code. In CancelExpiredReserves: + my $query = "SELECT * FROM reserves WHERE TO_DAYS( NOW() ) - TO_DAYS( waitingdate ) > maxpickupdate AND found = 'W' AND priority = 0"; Does that work? Looks to me that it doesn't. Shouldn't you just look for maxpickupdate < now? -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #24 from M. de Rooy <m.de.rooy@rijksmuseum.nl> --- (In reply to comment #22)
Questions, does this take into account days the library is closed? It would make sense for the expiration day for pickups to skip to the next open day if they land on a holiday. This is something that needed has needed to be addressed for some time now.
Looks like that this report does not do that. I agree that it should, but you could say that it is beyond scope here? Followup or additional report? But this report does pave the way. We only have to refine the routine where maxpickupdate is calculated now. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Katrin Fischer <katrin.fischer@bsz-bw.de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |katrin.fischer@bsz-bw.de --- Comment #25 from Katrin Fischer <katrin.fischer@bsz-bw.de> --- Hm, there is a downside to the new column too - we loose a bit of flexibility. Say a library closes for some time and changes the pickup delay to be longer, so the holds don't go stale - with the patch in effect they would have to do a database update to those holds. It's only one use case I have come up with so far. There might be other disadvantages/advantages of both ways of doing it. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #26 from Jonathan Druart <jonathan.druart@biblibre.com> --- (In reply to comment #23)
Just a question from quickly glancing through your code. In CancelExpiredReserves: + my $query = "SELECT * FROM reserves WHERE TO_DAYS( NOW() ) - TO_DAYS( waitingdate ) > maxpickupdate AND found = 'W' AND priority = 0"; Does that work? Looks to me that it doesn't. Shouldn't you just look for maxpickupdate < now?
Yes, of course! (new patch coming) (In reply to comment #24)
(In reply to comment #22)
Questions, does this take into account days the library is closed? It would make sense for the expiration day for pickups to skip to the next open day if they land on a holiday. This is something that needed has needed to be addressed for some time now.
Looks like that this report does not do that. I agree that it should, but you could say that it is beyond scope here? Followup or additional report? But this report does pave the way. We only have to refine the routine where maxpickupdate is calculated now.
Yes, that can be developed later without investing too much effort. (In reply to comment #25)
Hm, there is a downside to the new column too - we loose a bit of flexibility. Say a library closes for some time and changes the pickup delay to be longer, so the holds don't go stale - with the patch in effect they would have to do a database update to those holds. It's only one use case I have come up with so far. There might be other disadvantages/advantages of both ways of doing it.
You are right. But do you think many librarians often change this value? I don't see how to manage the feature and this use case. We can imagine a script that modifies directly the max pickup date in DB according some variables. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #27 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 15498 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=15498&action=edit Bug 8367: Followup Add more granular level for ReservesMaxPickUpDelay This patch removes the ReservesMaxPickUpDelay syspref. The update database script will update the issuingrules table with the correct value before removing it. 1 new column: reserves.maxpickupdate (and for old_reserves). It contains the waitingdate + the corresponding max pickup delay. Each time the waitingdate is modified, this value will be modified too. To test: Play with the reserve workflow (Add, remove, change priority, etc.) -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #15369|0 |1 is obsolete| | -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #28 from M. de Rooy <m.de.rooy@rijksmuseum.nl> --- (In reply to comment #25)
Hm, there is a downside to the new column too - we loose a bit of flexibility. Say a library closes for some time and changes the pickup delay to be longer, so the holds don't go stale - with the patch in effect they would have to do a database update to those holds. It's only one use case I have come up with so far. There might be other disadvantages/advantages of both ways of doing it.
What is Koha doing if I adjust the loan period? It does not change the due dates in the system. The due date was set with the active guidelines of that moment. You could say: Doing the same for holds is consistent :) If the library closes, they should stop confirming holds in due time, limiting the number of waiting holds. Pending holds are no problem. The pickup date should be calculated at confirm hold time. They could also stop the cron job for cancelling holds until they processed the holds queue after reopening? Would they really need a db update? -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #29 from Katrin Fischer <katrin.fischer@bsz-bw.de> --- As I said - I think thre are arguments for both approaches. :) Only I am thinking that this would not work:
If the library closes, they should stop confirming holds in due time, limiting >the number of waiting holds. Pending holds are no problem. The pickup date >should be calculated at confirm hold time.
While that might, but requires you have access to the system or your support vendor lets you do it:
They could also stop the cron job for cancelling holds until they processed the >holds queue after reopening? Would they really need a db update?
-- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Katrin Fischer <katrin.fischer@bsz-bw.de> changed: What |Removed |Added ---------------------------------------------------------------------------- See Also| |http://bugs.koha-community. | |org/bugzilla3/show_bug.cgi? | |id=8735 --- Comment #30 from Katrin Fischer <katrin.fischer@bsz-bw.de> --- Ah sorry, I missed half the comments: @Jonathan: No, I don't think it happens often that the value changes. I just have been thinking about the consequences of not recalculating. I didn't think about the calendar - that would be a solution (see bug 8735) Maybe making it possible to change the date from the interface (out of scope here) would be nice too at some point. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #31 from M. de Rooy <m.de.rooy@rijksmuseum.nl> --- QA: Looking again here now.. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 M. de Rooy <m.de.rooy@rijksmuseum.nl> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |Failed QA --- Comment #32 from M. de Rooy <m.de.rooy@rijksmuseum.nl> --- Preliminary comments: Report Holds awaiting pickup: A DateTime object can only be compared to another DateTime object (DateTime=HASH(0x53d7020), 2013-02-22). at /usr/share/koha/testclone/circ/waitingreserves.pl line 110 Another serious issue: During upgrade all reserves need a maxpickupdate. Now they are null. Before I would signoff and pass qa, it would be very useful to have another signoff on this one. After testing your changes thorougly, another external signoff (maybe from Kyle?) is welcome too. The nature of these patches asks for more extensive testing. Please note that a more detailed test plan could help. For now setting status to Failed QA. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 M. de Rooy <m.de.rooy@rijksmuseum.nl> changed: What |Removed |Added ---------------------------------------------------------------------------- See Also| |http://bugs.koha-community. | |org/bugzilla3/show_bug.cgi? | |id=5786 -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #33 from M. de Rooy <m.de.rooy@rijksmuseum.nl> --- Please have a look too at bug 5786. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #34 from Jonathan Druart <jonathan.druart@biblibre.com> --- (In reply to comment #32)
Preliminary comments: Report Holds awaiting pickup: A DateTime object can only be compared to another DateTime object (DateTime=HASH(0x53d7020), 2013-02-22). at /usr/share/koha/testclone/circ/waitingreserves.pl line 110
Another serious issue: During upgrade all reserves need a maxpickupdate. Now they are null.
Fixed.
Before I would signoff and pass qa, it would be very useful to have another signoff on this one. After testing your changes thorougly, another external signoff (maybe from Kyle?) is welcome too. The nature of these patches asks for more extensive testing.
Yes! I tested some cases but there are so many specific cases, it is difficult to test everything alone.
Please note that a more detailed test plan could help.
Since the patch affects all the pages related to holds, I don't know how to write a complete test plan. (In reply to comment #33)
Please have a look too at bug 5786.
I did. I think my patch is closer to be pushed to master than bug 5786. I didn't find where the new column issuingrules.reservesmaxpickupdelay is used elsewhere than in the issuingrules management (add/remove in DB + in tt files). -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Failed QA |Needs Signoff -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #15498|0 |1 is obsolete| | --- Comment #35 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 15613 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=15613&action=edit Bug 8367: Followup Add more granular level for ReservesMaxPickUpDelay This patch removes the ReservesMaxPickUpDelay syspref. The update database script will update the issuingrules table with the correct value before removing it. 1 new column: reserves.maxpickupdate (and for old_reserves). It contains the waitingdate + the corresponding max pickup delay. Each time the waitingdate is modified, this value will be modified too. To test: 1/ Play with the reserve workflow (Add, remove, change priority, etc.) and check there are no regression. 2/ Update the new column 'Holds pickup delay' in your issuing rules. According to a library and an item type, the maxpickupdate value will be equal to the waiting date + the pickup delay defined. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #15613|0 |1 is obsolete| | --- Comment #36 from Kyle M Hall <kyle@bywatersolutions.com> --- Created attachment 15658 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=15658&action=edit Bug 8367: Followup Add more granular level for ReservesMaxPickUpDelay This patch removes the ReservesMaxPickUpDelay syspref. The update database script will update the issuingrules table with the correct value before removing it. 1 new column: reserves.maxpickupdate (and for old_reserves). It contains the waitingdate + the corresponding max pickup delay. Each time the waitingdate is modified, this value will be modified too. To test: 1/ Play with the reserve workflow (Add, remove, change priority, etc.) and check there are no regression. 2/ Update the new column 'Holds pickup delay' in your issuing rules. According to a library and an item type, the maxpickupdate value will be equal to the waiting date + the pickup delay defined. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |Signed Off -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #37 from Kyle M Hall <kyle@bywatersolutions.com> --- Created attachment 15659 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=15659&action=edit Bug 8367: Skip to next open day if max pickup date is a holiday -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #15334|Bug 8367: Add more granular |[SIGNED-OFF] Bug 8367: Add description|level for |more granular level for |ReservesMaxPickUpDelay |ReservesMaxPickUpDelay -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #15335|Bug 8367: Add more granular |[SIGNED-OFF] Bug 8367: Add description|level for |more granular level for |ReservesMaxPickUpDelay - |ReservesMaxPickUpDelay - |Followup |Followup -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #15658|Bug 8367: Followup Add more |[SIGNED-OFF] Bug 8367: description|granular level for |Followup Add more granular |ReservesMaxPickUpDelay |level for | |ReservesMaxPickUpDelay -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Signed Off |Needs Signoff -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #38 from Kyle M Hall <kyle@bywatersolutions.com> --- (In reply to comment #37)
Created attachment 15659 [details] [review] Bug 8367: Skip to next open day if max pickup date is a holiday
I should note this also fixes a bug, where the call to GetReservesFromItemnumber assumed it would receive a reserve hashref, but it does not. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Owen Leonard <oleonard@myacpl.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |Failed QA --- Comment #39 from Owen Leonard <oleonard@myacpl.org> --- The last patch needs a commit message with a test plan. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #40 from Jonathan Druart <jonathan.druart@biblibre.com> --- (In reply to comment #39)
The last patch needs a commit message with a test plan.
Kyle, since this patch is from you, could you provide a test plan please? -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Failed QA |Patch doesn't apply --- Comment #41 from Kyle M Hall <kyle@bywatersolutions.com> --- (In reply to comment #40)
(In reply to comment #39)
The last patch needs a commit message with a test plan.
Kyle, since this patch is from you, could you provide a test plan please?
Sure! 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Edit the calendar for the given location, and make the pickup date a holiday 4) View waitingreserves.pl, the last pickup date should now be the increased by one day I would add this to the patch, but at the moment the first patch isn't applying. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Galen Charlton <gmcharlt@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |9004 -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #15334|0 |1 is obsolete| | Attachment #15335|0 |1 is obsolete| | Attachment #15658|0 |1 is obsolete| | Attachment #15659|0 |1 is obsolete| | --- Comment #42 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 19093 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19093&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay This patch adds: - a new column in the issuing rules - a new field issuingrules.holdspickupdelay You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. To test: Check there is no regression with a normal reserve workflow. Add one or more issuingrules. In 4 templates, you can see the max pickup delay for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Rebased on Feb 15, 2013 (Marcel de Rooy): CONFLICT (content): Merge conflict in opac/opac-user.pl CONFLICT (content): Merge conflict in koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt CONFLICT (content): Merge conflict in installer/data/mysql/updatedatabase.pl CONFLICT (content): Merge conflict in circ/waitingreserves.pl -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #43 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 19094 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19094&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay - Followup Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #44 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 19095 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19095&action=edit Bug 8367: Followup Add more granular level for ReservesMaxPickUpDelay This patch removes the ReservesMaxPickUpDelay syspref. The update database script will update the issuingrules table with the correct value before removing it. 1 new column: reserves.maxpickupdate (and for old_reserves). It contains the waitingdate + the corresponding max pickup delay. Each time the waitingdate is modified, this value will be modified too. To test: 1/ Play with the reserve workflow (Add, remove, change priority, etc.) and check there are no regression. 2/ Update the new column 'Holds pickup delay' in your issuing rules. According to a library and an item type, the maxpickupdate value will be equal to the waiting date + the pickup delay defined. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #45 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 19096 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19096&action=edit Bug 8367: Skip to next open day if max pickup date is a holiday Test plan: 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Edit the calendar for the given location, and make the pickup date a holiday 4) View waitingreserves.pl, the last pickup date should now be the increased by one day -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Patch doesn't apply |Signed Off -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #46 from Jonathan Druart <jonathan.druart@biblibre.com> --- I rebased 4 patches and added a test plan for the last one. Thanks Kyle! -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Signed Off |ASSIGNED -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #19093|0 |1 is obsolete| | Attachment #19094|0 |1 is obsolete| | Attachment #19095|0 |1 is obsolete| | Attachment #19096|0 |1 is obsolete| | --- Comment #47 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 19104 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19104&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay This patch adds: - a new column in the issuing rules - a new column reserves.maxpickupdate (+old_reserves) It contains the waitingdate + the corresponding max pickup delay. Each time the waitingdate is modified, this value will be modified too. - a new field issuingrules.holdspickupdelay This patch removes the ReservesMaxPickUpDelay syspref. The update database script will update the issuingrules table with the correct value before removing it. You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. To test: Check there is no regression with a normal reserve workflow. Add one or more issuingrules. Update the new column 'Holds pickup delay' in your issuing rules. In 4 templates, you can see the max pickup delay for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). According to a library and an item type, the maxpickupdate value will be equal to the waiting date + the pickup delay defined. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #48 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 19105 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19105&action=edit Bug 8367: Skip to next open day if max pickup date is a holiday Test plan: 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Edit the calendar for the given location, and make the pickup date a holiday 4) View waitingreserves.pl, the last pickup date should now be the increased by one day -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |Needs Signoff --- Comment #49 from Jonathan Druart <jonathan.druart@biblibre.com> --- I squashed the 3 first patches, it has become too difficult to rebase them... It needs a SO. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |ASSIGNED -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |Needs Signoff -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #19104|0 |1 is obsolete| | Attachment #19105|0 |1 is obsolete| | --- Comment #50 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 19107 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19107&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay This patch adds: - a new column in the issuing rules - a new column reserves.maxpickupdate (+old_reserves) It contains the waitingdate + the corresponding max pickup delay. Each time the waitingdate is modified, this value will be modified too. - a new field issuingrules.holdspickupdelay This patch removes the ReservesMaxPickUpDelay syspref. The update database script will update the issuingrules table with the correct value before removing it. You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. To test: Check there is no regression with a normal reserve workflow. Add one or more issuingrules. Update the new column 'Holds pickup delay' in your issuing rules. In 4 templates, you can see the max pickup delay for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). According to a library and an item type, the maxpickupdate value will be equal to the waiting date + the pickup delay defined. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #51 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 19108 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19108&action=edit Bug 8367: Skip to next open day if max pickup date is a holiday Test plan: 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Edit the calendar for the given location, and make the pickup date a holiday 4) View waitingreserves.pl, the last pickup date should now be the increased by one day -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |10487 -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #52 from Jonathan Druart <jonathan.druart@biblibre.com> --- Note: Unit tests for GetMaxPickupDate are provided by bug 10487 (depends on 10289) -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |Failed QA --- Comment #53 from Kyle M Hall <kyle@bywatersolutions.com> --- When I tried to create my first rule on a fresh database with the first patch only, I got this error: smart-rules.pl: DBD::mysql::st execute failed: called with 18 bind variables when 17 are needed at /home/koha/kohaclone/admin/smart-rules.pl line 137., referer: http://staff.kohadev/cgi-bin/koha/admin/smart-rules.pl -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Failed QA |Needs Signoff -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #54 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 19116 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19116&action=edit Bug 8367: Followup FIX a sql statement (bad conflict merge) -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |Signed Off -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #19107|0 |1 is obsolete| | --- Comment #55 from Kyle M Hall <kyle@bywatersolutions.com> --- Created attachment 19180 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19180&action=edit [SIGNED-OFF] Bug 8367: Add more granular level for ReservesMaxPickUpDelay This patch adds: - a new column in the issuing rules - a new column reserves.maxpickupdate (+old_reserves) It contains the waitingdate + the corresponding max pickup delay. Each time the waitingdate is modified, this value will be modified too. - a new field issuingrules.holdspickupdelay This patch removes the ReservesMaxPickUpDelay syspref. The update database script will update the issuingrules table with the correct value before removing it. You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. To test: Check there is no regression with a normal reserve workflow. Add one or more issuingrules. Update the new column 'Holds pickup delay' in your issuing rules. In 4 templates, you can see the max pickup delay for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). According to a library and an item type, the maxpickupdate value will be equal to the waiting date + the pickup delay defined. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Signed Off |Needs Signoff -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #19108|0 |1 is obsolete| | --- Comment #56 from Kyle M Hall <kyle@bywatersolutions.com> --- Created attachment 19181 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19181&action=edit Bug 8367: Skip to next open day if max pickup date is a holiday Test plan: 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Edit the calendar for the given location, and make the pickup date a holiday 4) View waitingreserves.pl, the last pickup date should now be the increased by one day -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #19116|0 |1 is obsolete| | --- Comment #57 from Kyle M Hall <kyle@bywatersolutions.com> --- Created attachment 19182 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19182&action=edit [SIGNED-OFF] Bug 8367: Followup FIX a sql statement (bad conflict merge) Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #58 from Jonathan Druart <jonathan.druart@biblibre.com> --- (In reply to Kyle M Hall from comment #56)
Created attachment 19181 [details] [review] Bug 8367: Skip to next open day if max pickup date is a holiday
Kyle, I don't understand how this patch can worked. The maxpickupdate is stored in the DB, when adding or updating an hold. The patch works but not with this test plan. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #59 from Kyle M Hall <kyle@bywatersolutions.com> --- You're right, I think the test plan should be: Test plan: 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Cancel this hold 5) Edit the calendar for the given location, and make the pickup date a holiday 6) Repeat step 2 7) View waitingreserves.pl, the last pickup date for this new hold should now be the increased by one day -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #60 from Jonathan Druart <jonathan.druart@biblibre.com> --- Kyle, I agree with your test plan. I am signing off your patch. But I think I found a bug, could you take a look at this new patch please? -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #19181|0 |1 is obsolete| | --- Comment #61 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 19360 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19360&action=edit Bug 8367: Skip to next open day if max pickup date is a holiday Test plan: 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Cancel this hold 5) Edit the calendar for the given location, and make the pickup date a holiday 6) Repeat step 2 7) View waitingreserves.pl, the last pickup date for this new hold should now be the increased by one day Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #62 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 19361 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19361&action=edit Bug 8367: Fix the maxpickupdate when we set waitingdate to NOW() ModReserveAffect get the maxpickupdate before changing the waitingdate to NOW. We should update the waitingdate and next calculate the maxpickupdate. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #63 from Katrin Fischer <katrin.fischer@bsz-bw.de> --- Hmm, I think NOW() is a mysqlism. I know we probably have lots of those in the codebase already, but maybe worth trying not to add more and find best practices for replacing them? Mtj suggested using CURRENT_TIMESTAMP() instead on IRC: http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #64 from Jonathan Druart <jonathan.druart@biblibre.com> --- (In reply to Katrin Fischer from comment #63)
Hmm, I think NOW() is a mysqlism. I know we probably have lots of those in the codebase already, but maybe worth trying not to add more and find best practices for replacing them?
Mtj suggested using CURRENT_TIMESTAMP() instead on IRC: http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html
I don't add it, it already exists. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |Signed Off -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #19361|0 |1 is obsolete| | --- Comment #65 from Kyle M Hall <kyle@bywatersolutions.com> --- Created attachment 19362 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=19362&action=edit Bug 8367: Fix the maxpickupdate when we set waitingdate to NOW() ModReserveAffect get the maxpickupdate before changing the waitingdate to NOW. We should update the waitingdate and next calculate the maxpickupdate. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #66 from Katrin Fischer <katrin.fischer@bsz-bw.de> --- Ok, maybe we could take a look at the NOW()s another time. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #67 from Kyle M Hall <kyle@bywatersolutions.com> --- (In reply to Katrin Fischer from comment #66)
Ok, maybe we could take a look at the NOW()s another time.
Yes, I would suggest filing a bug report to take care of any NOW()'s in the codebase. It seems likely however, that the upcoming DBIx::Class switchover will take care of those anyway. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Katrin Fischer <katrin.fischer@bsz-bw.de> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Signed Off |Patch doesn't apply --- Comment #68 from Katrin Fischer <katrin.fischer@bsz-bw.de> --- Hi Kyle, there is a conflict in Reserves.pm I am not sure how to fix - could you take a look please? I think it's because your patch for using reserve_id is in now, so it might need a little work there. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #19180|0 |1 is obsolete| | Attachment #19182|0 |1 is obsolete| | Attachment #19360|0 |1 is obsolete| | Attachment #19362|0 |1 is obsolete| | --- Comment #69 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 20300 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=20300&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay This patch adds: - a new column in the issuing rules - a new column reserves.maxpickupdate (+old_reserves) It contains the waitingdate + the corresponding max pickup delay. Each time the waitingdate is modified, this value will be modified too. - a new field issuingrules.holdspickupdelay This patch removes the ReservesMaxPickUpDelay syspref. The update database script will update the issuingrules table with the correct value before removing it. You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. To test: Check there is no regression with a normal reserve workflow. Add one or more issuingrules. Update the new column 'Holds pickup delay' in your issuing rules. In 4 templates, you can see the max pickup delay for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). According to a library and an item type, the maxpickupdate value will be equal to the waiting date + the pickup delay defined. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Patch doesn't apply |Signed Off -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Jonathan Druart <jonathan.druart@biblibre.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #20300|0 |1 is obsolete| | --- Comment #70 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 20301 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=20301&action=edit Bug 8367: Add more granular level for ReservesMaxPickUpDelay This patch adds: - a new column in the issuing rules - a new column reserves.maxpickupdate (+old_reserves) It contains the waitingdate + the corresponding max pickup delay. Each time the waitingdate is modified, this value will be modified too. - a new field issuingrules.holdspickupdelay This patch removes the ReservesMaxPickUpDelay syspref. The update database script will update the issuingrules table with the correct value before removing it. You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. To test: Check there is no regression with a normal reserve workflow. Add one or more issuingrules. Update the new column 'Holds pickup delay' in your issuing rules. In 4 templates, you can see the max pickup delay for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). According to a library and an item type, the maxpickupdate value will be equal to the waiting date + the pickup delay defined. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #71 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 20302 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=20302&action=edit Bug 8367: Followup FIX a sql statement (bad conflict merge) Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #72 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 20303 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=20303&action=edit Bug 8367: Skip to next open day if max pickup date is a holiday Test plan: 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Cancel this hold 5) Edit the calendar for the given location, and make the pickup date a holiday 6) Repeat step 2 7) View waitingreserves.pl, the last pickup date for this new hold should now be the increased by one day Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #73 from Jonathan Druart <jonathan.druart@biblibre.com> --- Created attachment 20304 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=20304&action=edit Bug 8367: Fix the maxpickupdate when we set waitingdate to NOW() ModReserveAffect get the maxpickupdate before changing the waitingdate to NOW. We should update the waitingdate and next calculate the maxpickupdate. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #74 from Jonathan Druart <jonathan.druart@biblibre.com> --- (In reply to Katrin Fischer from comment #68)
Hi Kyle, there is a conflict in Reserves.pm I am not sure how to fix - could you take a look please? I think it's because your patch for using reserve_id is in now, so it might need a little work there.
Conflicts solved. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Katrin Fischer <katrin.fischer@bsz-bw.de> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Signed Off |Patch doesn't apply --- Comment #75 from Katrin Fischer <katrin.fischer@bsz-bw.de> --- Hi Jonathan, I am sorry, there are a couple of new conflicts now in this patch: Apply? [(y)es, (n)o, (i)nteractive] y Applying: Bug 8367: Add more granular level for ReservesMaxPickUpDelay Using index info to reconstruct a base tree... Falling back to patching base and 3-way merge... Auto-merging opac/opac-user.pl CONFLICT (content): Merge conflict in opac/opac-user.pl Auto-merging koha-tmpl/opac-tmpl/prog/en/modules/opac-user.tt Auto-merging koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt Auto-merging koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref Auto-merging installer/data/mysql/updatedatabase.pl CONFLICT (content): Merge conflict in installer/data/mysql/updatedatabase.pl Auto-merging installer/data/mysql/kohastructure.sql Auto-merging C4/Reserves.pm CONFLICT (content): Merge conflict in C4/Reserves.pm Failed to merge in the changes. Patch failed at 0001 Bug 8367: Add more granular level for ReservesMaxPickUpDelay When you have resolved this problem run "git bz apply --continue". If you would prefer to skip this patch, instead run "git bz apply --skip". To restore the original branch and stop patching run "git bz apply --abort". Patch left in /tmp/Bug-8367-Add-more-granular-level-for-ReservesMaxPi-BWSyFY.patch -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Agnes Rivers-Moore <arm@hanover.ca> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |arm@hanover.ca --- Comment #76 from Agnes Rivers-Moore <arm@hanover.ca> --- We would like the option to have a shorter pickup period for some item types. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #77 from Paul Poulain <paul.poulain@biblibre.com> --- (In reply to Agnes Rivers-Moore from comment #76)
We would like the option to have a shorter pickup period for some item types.
Sorry, but this patch does not apply anymore, and should be rewritten almost from scratch because another patch has been pushed before this one, that make what Jonathan made invalid. So, without funding to re-do the work, we (BibLibre) will not work on it anymore, sorry. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |olli-antti.kivilahti@jns.fi Assignee|jonathan.druart@biblibre.co |olli-antti.kivilahti@jns.fi |m | -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Patch doesn't apply |ASSIGNED --- Comment #78 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Hi there gentlemen and esteemed gentle lady! I just finished refactoring this feature to master and I am looking forward to sharing the results ASAP I get it better tested. Our bookmobiles are suffering from constantly canceled/billed reserves and this feature solves a big issue for them. Unfortunately this feature breaks a lot of our in-house work, but such is life :) I hope you can sharpen your "Sign off"-daggers and start stabbing, presuming you or your client is looking forward to getting this feature to master. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #79 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 32786 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=32786&action=edit Bug 8367 - How long is a hold waiting for pickup at a more granular level This patch adds: - a new column in the issuing rules, including help topics. - a new column reserves.lastpickupdate (+old_reserves) It contains the waitingdate + the corresponding "holds pickup wait". Each time the waitingdate is modified, this value will be modified too. - a new field issuingrules.holdspickupwait - a new function C4::Reserves::MoveWaitingdate() to help in testing this feature. This patch removes the ReservesMaxPickUpDelay syspref. - Also removes a code section from C4::Letters::_parseLetter() which worked blatantly disrespectfully towards Koha Calendar. - TODO put the <<reserves.lastpickupdate>> as a placeholder in C4::Letters. - TODO figure out how to rename existing letter placeholders <<expirationdate>> with <<lastpickupdate>> The update database script will update the issuingrules table with the correct value before removing it. You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. -TODO Refactoring unit tests is in progress. $$$$$$$$$$$$$ $ TEST PLAN $ $$$$$$$$$$$$$ ****** ****** *** *** *** TEST: BASIC WORKFLOW * ****** ****** 1. Check there is no regression with a normal reserve workflow. 2. Add one or more issuingrules. 3. Update the new column 'Holds pickup wait' in your issuing rules. 4. In 4 templates, you can see the 'Last pickup date' for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). 5. According to a library and an item type, the lastpickupdate value will be equal to the waiting date + the "holds pickup wait" defined. ** ** ** ** ** ** *** *** *** TEST: RESPECTING CALENDAR HOLIDAYS * ** ** ** ** ** ** 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Cancel this hold 5) Edit the calendar for the given location, and make the pickup date a single, unrepeated, holiday. Then make the next day a weekly repeating holiday. Then make the next two days an annual holiday repeatable every year. 6) Repeat step 2 7) View waitingreserves.pl, the last pickup date for this new hold should now be increased by four days. ** ** ** ** ** ** *** *** *** TEST: LETTER lastpickupdate PLACEHOLDER AND REGRESSION * ** ** ** ** ** ** 1. Modify the HOLD-letter, add <<reserves.lastpickupdate>> and <<reserves.waitingdate>> somewhere. 2. Catch a hold for a borrower. 3. See the members/notices.pl for the message queued and verify that the lastpickupdate-placeholder is set in your desired datetime format and that it is not on a holiday. Verify that the waitingdate is today. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |In Discussion --- Comment #80 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Making unit tests for the smart-rules.pl is rather tedious with the lack of proper getters/setters for rules. Need to introduce a C4::SmartRules.pm to access them more conveniently. I hope this is not getting way out of scope for this feture? -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #81 from Katrin Fischer <katrin.fischer@bsz-bw.de> --- Hm, introducing a new module just for testing seems a bit out of scope :) Have you taken a look at some of the other tests for recently added features? I think there are some for the new automatic renewal and maybe others that could be useful. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #32786|0 |1 is obsolete| | --- Comment #82 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 32826 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=32826&action=edit Bug 8367 - How long is a hold waiting for pickup at a more granular level You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. The lastpickupdate-column is set based on the given instruction and lands only on an open library day. Also cancel_expired_reserves.pl now cancels only on open library days after the last pickup date has expired. And waitingreserves.pl respects the new DB column. This patch adds: - a new column in the issuing rules, including help topics. - a new column reserves.lastpickupdate (+old_reserves) It contains the waitingdate + the corresponding "holds pickup wait". Each time the waitingdate is modified, this value will be modified too. - a new field issuingrules.holdspickupwait - a new function C4::Reserves::MoveWaitingdate() to help in testing this feature. - a new function C4::Reserves::GetLastPickupDate() to calculate the proper date from Calendar. This patch removes: - the ReservesMaxPickUpDelay syspref. - the ExpireReservesOnHolidays syspref, because it became obsolete due to the changes in handling the last pickup date with Koha Calendar. - Also removes a code section from C4::Letters::_parseLetter() which worked blatantly disrespectfully towards Koha Calendar. - TODO put the <<reserves.lastpickupdate>> as a placeholder in C4::Letters. - TODO figure out how to rename existing letter placeholders <<expirationdate>> with <<lastpickupdate>> TODO Refactoring unit tests is in progress. $$$$$$$$$$$$$ $ TEST PLAN $ $$$$$$$$$$$$$ ****** ****** *** *** *** TEST: BASIC WORKFLOW * ****** ****** 1. Check there is no regression with a normal reserve workflow. 2. Add one or more issuingrules. 3. Update the new column 'Holds pickup wait' in your issuing rules. 4. In 4 templates, you can see the 'Last pickup date' for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). 5. According to a library and an item type, the lastpickupdate value will be equal to the waiting date + the "holds pickup wait" defined. ** ** ** ** ** ** *** *** *** TEST: RESPECTING CALENDAR HOLIDAYS * ** ** ** ** ** ** 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Cancel this hold 5) Edit the calendar for the given location, and make the pickup date a single, unrepeated, holiday. Then make the next day a weekly repeating holiday. Then make the next two days an annual holiday repeatable every year. 6) Repeat step 2 7) View waitingreserves.pl, the last pickup date for this new hold should now be increased by four days. ** ** ** ** ** ** *** *** *** TEST: LETTER lastpickupdate PLACEHOLDER AND REGRESSION * ** ** ** ** ** ** 1. Modify the HOLD-letter, add <<reserves.lastpickupdate>> and <<reserves.waitingdate>> somewhere. 2. Catch a hold for a borrower. 3. See the members/notices.pl for the message queued and verify that the lastpickupdate-placeholder is set in your desired datetime format and that it is not on a holiday. Verify that the waitingdate is today. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #32826|0 |1 is obsolete| | --- Comment #83 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 32884 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=32884&action=edit Bug 8367 - How long is a hold waiting for pickup at a more granular level You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. The lastpickupdate-column is set based on the given instruction and lands only on an open library day. Also cancel_expired_reserves.pl now cancels only on open library days after the last pickup date has expired. And waitingreserves.pl respects the new DB column. This patch adds: - a new column in the issuing rules, including help topics. - a new column reserves.lastpickupdate (+old_reserves) It contains the waitingdate + the corresponding "holds pickup wait". Each time the waitingdate is modified, this value will be modified too. - a new field issuingrules.holdspickupwait - a new function C4::Reserves::MoveWaitingdate() to help in testing this feature. - a new function C4::Reserves::GetLastPickupDate() to calculate the proper date from Calendar. This patch removes: - the ReservesMaxPickUpDelay syspref. - the ExpireReservesOnHolidays syspref, because it became obsolete due to the changes in handling the last pickup date with Koha Calendar. - Also removes a code section from C4::Letters::_parseLetter() which worked blatantly disrespectfully towards Koha Calendar. - TODO figure out how to rename existing letter placeholders <<expirationdate>> with <<lastpickupdate>> TODO Refactoring unit tests is in progress. $$$$$$$$$$$$$ $ TEST PLAN $ $$$$$$$$$$$$$ ****** ****** *** *** *** TEST: BASIC WORKFLOW * ****** ****** 1. Check there is no regression with a normal reserve workflow. 2. Add one or more issuingrules. 3. Update the new column 'Holds pickup wait' in your issuing rules. 4. In 4 templates, you can see the 'Last pickup date' for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). 5. According to a library and an item type, the lastpickupdate value will be equal to the waiting date + the "holds pickup wait" defined moved to the next open library day. ****** ****** *** *** *** TEST: LETTER PLACEHOLDER (no code modifications here, just regression)* ****** ****** 1. Modify the RESERVESLIP->email Letter. Add "Last pickup date<<reserves.lastpickupdate>>" somewhere. 2. Make a hold for a borrower. 3. Catch the hold and print the reserve slip. Verify that the lastpickupdate is actually the (current date + the 'Holds pickup wait' in your issuing rules) in days. ** ** ** ** ** ** *** *** *** TEST: RESPECTING CALENDAR HOLIDAYS * ** ** ** ** ** ** 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Cancel this hold 5) Edit the calendar for the given location, and make the pickup date a single, unrepeated, holiday. Then make the next day a weekly repeating holiday. Then make the next two days an annual holiday repeatable every year. 6) Repeat step 2 7) View waitingreserves.pl, the last pickup date for this new hold should now be increased by four days. ** ** ** ** ** ** *** *** *** TEST: LETTER lastpickupdate PLACEHOLDER AND REGRESSION * ** ** ** ** ** ** 1. Modify the HOLD-letter, add <<reserves.lastpickupdate>> and <<reserves.waitingdate>> somewhere. 2. Catch a hold for a borrower. 3. See the members/notices.pl for the message queued and verify that the lastpickupdate-placeholder is set in your desired datetime format and that it is not on a holiday. Verify that the waitingdate is today. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|In Discussion |Needs Signoff -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #20301|0 |1 is obsolete| | Attachment #20302|0 |1 is obsolete| | Attachment #20303|0 |1 is obsolete| | Attachment #20304|0 |1 is obsolete| | --- Comment #84 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 32885 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=32885&action=edit using this to obsolete previous patches -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #32885|0 |1 is obsolete| | -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #32884|0 |1 is obsolete| | --- Comment #85 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 32916 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=32916&action=edit Bug 8367 - How long is a hold waiting for pickup at a more granular level You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. The lastpickupdate-column is set based on the given instruction and lands only on an open library day. Also cancel_expired_reserves.pl now cancels only on open library days after the last pickup date has expired. And waitingreserves.pl respects the new DB column. This patch adds: - a new column in the issuing rules, including help topics. - a new column reserves.lastpickupdate (+old_reserves) It contains the waitingdate + the corresponding "holds pickup wait". Each time the waitingdate is modified, this value will be modified too. - a new field issuingrules.holdspickupwait - a new function C4::Reserves::MoveWaitingdate() to help in testing this feature. - a new function C4::Reserves::GetLastPickupDate() to calculate the proper date from Calendar. This patch removes: - the ReservesMaxPickUpDelay syspref. - the ExpireReservesOnHolidays syspref, because it became obsolete due to the changes in handling the last pickup date with Koha Calendar. - Also removes a code section from C4::Letters::_parseLetter() which worked blatantly disrespectfully towards Koha Calendar. - TODO figure out how to rename existing letter placeholders <<expirationdate>> with <<lastpickupdate>> TODO Refactoring unit tests is in progress. $$$$$$$$$$$$$ $ TEST PLAN $ $$$$$$$$$$$$$ ****** ****** *** *** *** TEST: BASIC WORKFLOW * ****** ****** 1. Check there is no regression with a normal reserve workflow. 2. Add one or more issuingrules. 3. Update the new column 'Holds pickup wait' in your issuing rules. 4. In 4 templates, you can see the 'Last pickup date' for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt). 5. According to a library and an item type, the lastpickupdate value will be equal to the waiting date + the "holds pickup wait" defined moved to the next open library day. ****** ****** *** *** *** TEST: LETTER PLACEHOLDER (no code modifications here, just regression)* ****** ****** 1. Modify the RESERVESLIP->email Letter. Add "Last pickup date<<reserves.lastpickupdate>>" somewhere. 2. Make a hold for a borrower. 3. Catch the hold and print the reserve slip. Verify that the lastpickupdate is actually the (current date + the 'Holds pickup wait' in your issuing rules) in days. ** ** ** ** ** ** *** *** *** TEST: RESPECTING CALENDAR HOLIDAYS * ** ** ** ** ** ** 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Cancel this hold 5) Edit the calendar for the given location, and make the pickup date a single, unrepeated, holiday. Then make the next day a weekly repeating holiday. Then make the next two days an annual holiday repeatable every year. 6) Repeat step 2 7) View waitingreserves.pl, the last pickup date for this new hold should now be increased by four days. ** ** ** ** ** ** *** *** *** TEST: LETTER lastpickupdate PLACEHOLDER AND REGRESSION * ** ** ** ** ** ** 1. Modify the HOLD-letter, add <<reserves.lastpickupdate>> and <<reserves.waitingdate>> somewhere. 2. Catch a hold for a borrower. 3. See the members/notices.pl for the message queued and verify that the lastpickupdate-placeholder is set in your desired datetime format and that it is not on a holiday. Verify that the waitingdate is today. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Paola Rossi <paola.rossi@cineca.it> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |Failed QA CC| |paola.rossi@cineca.it --- Comment #86 from Paola Rossi <paola.rossi@cineca.it> --- Kind Olli-Antti Kivilahti, I've applied the patch against master 3.17.00.035. I've upgraded the DB from a one that had been filled with some holds. After having applied, by mysql command line, on the DB I saw the new field "lastpickupdate" of the table "reserves" as required; in all the holds this new field was set to NULL. About this step: 4. In the 4 templates, you can see the 'Last pickup date' for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt) in circ/circulation.tt (CIRC, Check out, Holds) and members/moremember.tt (Patrons, patron X, Details, Holds) there was the title "Last pickup date" of the new column (the 2-nd from the left) of the table, but the datas in the cells below it were the titles. All the other datas on the right were shifted on the left by 1 column, and the last column "Delete?" of the table had nothing in the cells below it. I created a new hold for a patron without holds, and the problem was the same on both the *.tt . About opac-user.tt, I logged in to OPAC as a patron with n holds. Here ("your summary", tag "Holds (n)") I didn't see any new column. So I pass the patch to "Failed QA" status. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #32916|0 |1 is obsolete| | --- Comment #87 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 32930 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=32930&action=edit Bug 8367 - How long is a hold waiting for pickup at a more granular level You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. The lastpickupdate-column is set based on the given instruction and lands only on an open library day. Also cancel_expired_reserves.pl now cancels only on open library days after the last pickup date has expired. And waitingreserves.pl respects the new DB column. If ReservesMaxPickUpDelay is not set prior to the databaseupdate, the holdspickupwait-directive is never defined, thus disabling this feature until the holdspickupwait is set. If the issuingrules holdspickupwait is 0 or less, this feature is disabled. So each issuingrule can disable this feature for the material it matches, while being fully functional with other rules. This patch adds: - a new column in the issuing rules, including help topics. - a new column reserves.lastpickupdate (+old_reserves) It contains the waitingdate + the corresponding "holds pickup wait". Each time the waitingdate is modified, this value will be modified too. - a new field issuingrules.holdspickupwait - a new function C4::Reserves::MoveWaitingdate() to help in testing this feature. - a new function C4::Reserves::GetLastPickupDate() to calculate the proper date from Calendar. This patch removes: - the ReservesMaxPickUpDelay syspref. - the ExpireReservesOnHolidays syspref, because it became obsolete due to the changes in handling the last pickup date with Koha Calendar. - Also removes a code section from C4::Letters::_parseLetter() which worked blatantly disrespectfully towards Koha Calendar. - TODO figure out how to rename existing letter placeholders <<expirationdate>> with <<lastpickupdate>> Unit tests included. $$$$$$$$$$$$$ $ TEST PLAN $ $$$$$$$$$$$$$ 0. BEFORE UPDATING THE DATABASE! MAKE SURE THAT THE SYSPREF 'ReservesMaxPickUpDelay' is bigger than 0. Otherwise existing reserves won't get UPDATEd with the new lastpickupdate-values. ****** ****** *** *** *** TEST: BASIC WORKFLOW * ****** ****** 1. Check there is no regression with a normal reserve workflow. 2. Add one or more issuingrules. 3. Update the new column 'Holds pickup wait' in your issuing rules. 4. In the 3 templates of staff client, you can see the 'Last pickup date' for an hold (circ/circulation.pl, circ/waitingreserves.pl, members/moremember.pl) 5. In opac-user.pl the last pickup date is displayed in the status-column if available. 5. According to a library and an item type, the lastpickupdate value will be equal to the waiting date + the "holds pickup wait" defined moved to the next open library day. ****** ****** *** *** *** TEST: LETTER PLACEHOLDER (no code modifications here, just regression)* ****** ****** 1. Modify the RESERVESLIP->email Letter. Add "Last pickup date<<reserves.lastpickupdate>>" somewhere. 2. Make a hold for a borrower. 3. Catch the hold and print the reserve slip. Verify that the lastpickupdate is actually the (current date + the 'Holds pickup wait' in your issuing rules) in days. ** ** ** ** ** ** *** *** *** TEST: RESPECTING CALENDAR HOLIDAYS * ** ** ** ** ** ** 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Cancel this hold 5) Edit the calendar for the given location, and make the pickup date a single, unrepeated, holiday. Then make the next day a weekly repeating holiday. Then make the next two days an annual holiday repeatable every year. 6) Repeat step 2 7) View waitingreserves.pl, the last pickup date for this new hold should now be increased by four days. ** ** ** ** ** ** *** *** *** TEST: LETTER lastpickupdate PLACEHOLDER AND REGRESSION * ** ** ** ** ** ** 1. Modify the HOLD-letter, add <<reserves.lastpickupdate>> and <<reserves.waitingdate>> somewhere. 2. Catch a hold for a borrower. 3. See the members/notices.pl for the message queued and verify that the lastpickupdate-placeholder is set in your desired datetime format and that it is not on a holiday. Verify that the waitingdate is today. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #88 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- (In reply to Paola Rossi from comment #86)
Kind Olli-Antti Kivilahti,
Thank you so much for testing this patch Ms. or Mrs. Rossi!
I've applied the patch against master 3.17.00.035.
I've upgraded the DB from a one that had been filled with some holds.
After having applied, by mysql command line, on the DB I saw the new field "lastpickupdate" of the table "reserves" as required; in all the holds this new field was set to NULL.
Sorry, my test plans were not complete. I added the following clause: 0. BEFORE UPDATING THE DATABASE! MAKE SURE THAT THE SYSPREF 'ReservesMaxPickUpDelay' is bigger than 0. Otherwise existing reserves won't get UPDATEd with the new lastpickupdate-values.
About this step: 4. In the 4 templates, you can see the 'Last pickup date' for an hold (circ/circulation.tt, circ/waitingreserves.tt, members/moremember.tt, opac-user.tt)
in circ/circulation.tt (CIRC, Check out, Holds) and members/moremember.tt (Patrons, patron X, Details, Holds) there was the title "Last pickup date" of the new column (the 2-nd from the left) of the table, but the datas in the cells below it were the titles. All the other datas on the right were shifted on the left by 1 column, and the last column "Delete?" of the table had nothing in the cells below it.
I created a new hold for a patron without holds, and the problem was the same on both the *.tt .
Are you sure you used the english language? I have encountered this issue mostly with not-up-to-date language templates. I retested this feature and was unable to replicate your report.
About opac-user.tt, I logged in to OPAC as a patron with n holds. Here ("your summary", tag "Holds (n)") I didn't see any new column.
Sorry, updated the TEST PLAN as follows: 5. In opac-user.pl the last pickup date is displayed in the status-column if available.
So I pass the patch to "Failed QA" status. Thanks for testing! Hope to hear from you soon :)
-- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Paola Rossi <paola.rossi@cineca.it> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Failed QA |Needs Signoff --- Comment #89 from Paola Rossi <paola.rossi@cineca.it> --- (In reply to Olli-Antti Kivilahti from comment #88)
[...] Hope to hear from you soon
Thanks, Olli-Antti, for your kind feedbacks. Today I've applied the patch against master 3.17.00.043. After having applied, I've created a hold reserving an item that was checked out. So the reserve/hold's status became "W" after checking in it. On the browser I refreshed the cache (Ctrl r, Ctrl F5): so I saw the hold by the 4 *.tt as required in step 4. In particular: on OPAC, for a logged patron with holds, the lastpickupdate was in the "until" part of the "Status" column of the hold. On circ/waitingreserves.tt (Home › Circulation › Holds awaiting pickup) the lastpickupdate was in the "until" part of the first column "Available" of "n Hold(s) waiting" tag. The tables with holds with NULL lastpickupdate (holds created reserving items not checked out, as allowed by syspref AllowOnShelfHolds set to "Allow") were shown OK too. So I pass the patch back to "Needs Signoff" status. I've changed the syspref 'ReservesMaxPickUpDelay' from the default 0 value, thank you again. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #90 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- (In reply to Paola Rossi from comment #89)
(In reply to Olli-Antti Kivilahti from comment #88)
[...] Hope to hear from you soon
Thanks, Olli-Antti, for your kind feedbacks.
Today I've applied the patch against master 3.17.00.043.
After having applied, I've created a hold reserving an item that was checked out. So the reserve/hold's status became "W" after checking in it. On the browser I refreshed the cache (Ctrl r, Ctrl F5): so I saw the hold by the 4 *.tt as required in step 4.
In particular: on OPAC, for a logged patron with holds, the lastpickupdate was in the "until" part of the "Status" column of the hold. On circ/waitingreserves.tt (Home › Circulation › Holds awaiting pickup) the lastpickupdate was in the "until" part of the first column "Available" of "n Hold(s) waiting" tag.
The tables with holds with NULL lastpickupdate (holds created reserving items not checked out, as allowed by syspref AllowOnShelfHolds set to "Allow") were shown OK too.
So I pass the patch back to "Needs Signoff" status.
I've changed the syspref 'ReservesMaxPickUpDelay' from the default 0 value, thank you again.
Nice to hear from you! Is there anything here that prevents your from signing this off? I believe this feature needs more than one sign off to be considered fit for QA and yours would be a great start! -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Paola Rossi <paola.rossi@cineca.it> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |Failed QA --- Comment #91 from Paola Rossi <paola.rossi@cineca.it> --- [I beg you pardon for the length of this comment, my delay in answering and possible inaccuracies.] I've applied the patch against master 3.17.00.044 [HEAD 10860]. To test the patch IMHO on ADMIN it is better: - (as required by the test plan) kept the value of syspref "ReservesMaxPickupDelay" > 0 - set the syspref "EnhancedMessagingPreferences" to ON (default is OFF) To test the patch IMHO on ADMIN it could be better: - kept the default value "Don't allow" to the syspref "AllowOnShelfHolds" - set the "Charge" of the item-types to 0.00 (default 5.00) for all types - [remember to set the circulation rules] - set the syspref "KohaAdminEmailAddress" to a value not filtered by antispam's own emailing-system [to receive notices' email] - [remeber to refresh the cache [Ctrl r - Ctrl F5] after seeing master's behaviour]. At my tests, the RESERVESLIP and HOLD notices are allowed to be cloned to your specific library, but I saw that koha uses only the "ALL LIBRARIES" notices, and never the cloned ones. So I changed those 2 notices to test the 2 parts of the test plan about LETTER. To test the part of the test plan about the RESERVESLIP notice, i.e. see below: *** TEST: LETTER PLACEHOLDER ***, IMHO the functions to test are "Confirm"/"Print and confirm", on cheching in a record already on hold by another patron. To test the last part of the test plan about the HOLD notice, i.e. see below: *** TEST: LETTER lastpickupdate PLACEHOLDER AND REGRESSION ****, if I'm not wrong : - set the notice's email [i.e. "Primary email"] of the test patron to your own email - if this patron had a found/status W hold, you'll receive a mail soon after: perl ./misc/cronjobs/advance_notices.pl -c perl ./misc/cronjobs/process_message_queue.pl IMHO it would be better explicitly adding a further last part to the test plan about the provided: t/db_dependent/Holds.t [perhaps other parts of the preamble could need a testing action too.] At my tests the upgrade of the DB is OK. The 4 *.tt are OK. NB1.: on ADMIN, in the "Circ and fines issuing rules", perhaps the new column "Holds wait for pickup (day)" could be better set at the right of "Holds allowed (count)", at the right of all the 4 columns about renewal, and not among these 4 ones. NB2.: on CIRC, on waitingreserves.pl (="Holds awaiting pickup"), on the "Holds over" tag, the present string: "Holds listed here have been awaiting pickup for more than days." could be modified. In master it was: "Holds listed here have been awaiting pickup for more than X days." where X was the value of the syspref "ReservesMaxPickUpDelay" which has been removed by this patch. NB3.: On opac-user.pl, for a logged in user with W holds, the W holds had not neigher the "Cancel" icon nor the "Suspend" icon. [I didn't check the master about this behaviour, sorry. If this patch had changed the behaviour, this regression would be on error, and this point will be added to the errors' list.] PROBLEMS: NB4.: [MASTER] at my tests the "W" found/status of a hold/reserve is set in only 1 case: it is set to a hold, that previously had been opened on a biblio record which was already checked out (found=NULL), and then checked in (found=W) without "Ignore" submit. [I'd like to have a feedback about it, please, because all my tests were about this assumption.] NB5.: [MASTER] So, at my tests, the waitingdate of a hold/reserve can be only the current date, i.e. the current day on which I check-in a biblio record. [I'd like to have a feedback about it, please, because all my tests were about this assumption.] 1) I saw no reserves.lastpickupdate nor the reserves.waitingdate on RESERVESLIP notice. But I think that this problem is out of this bug, because the master too behaves so. [On the contrary, on master (and after applying too) the reserves.reservesnotes is correctly shown by the notice.] 2) Whilst a check out lasts 1 more day for an intervening holiday, the hold's period doesn't: I'd like to have a feedback about this, please. If the W hold would last 1 more day, the patch would be in error. 3) On upgrading the DB, by syspref "ReservesMaxPickupDelay" > 0, all the holds for all the patrons' categories and item types would receive the same lasting period. Whilst the patch, once applied, could assign a different value to each of them. I think this remarkable to get coherent DB datas. 4) The found/status "W" meaning is about the lasting period available to the patron to pick up the document. But when a "Transfer" is needed from the check-out' library, to the hold's library, koha [master] doesn't set the found/status to "W", but to NULL/T: I think that this behaviour could be evaluated, that it can be a master's bug, and, if this is the case, that this patch could be tested after having resolved this bug on a DB with such cases. 5) prove t/db_dependent/Holds.t t/db_dependent/Holds.t .. 1/46 # Failed test 'GetLastPickupDate(): Not using Calendar' # at t/db_dependent/Holds.t line 436. # got: '2014-11-10' # expected: '2014-11-05' # Failed test 'GetLastPickupDate(): Moving lastpickupdate over holidays, but not affected by them' # at t/db_dependent/Holds.t line 448. # got: '2014-11-10' # expected: '2014-11-05' # Failed test 'MoveWaitingdate(): Moving to past' # at t/db_dependent/Holds.t line 401. # got: '' # expected: '1' # Failed test 'Waiting reserve with lastpickupdate for 2014-11-04 totally canceled' # at t/db_dependent/Holds.t line 367. # got: '1' # expected: '0' # Looks like you failed 4 tests of 46. t/db_dependent/Holds.t .. Dubious, test returned 4 (wstat 1024, 0x400) Failed 4/46 subtests Test Summary Report ------------------- t/db_dependent/Holds.t (Wstat: 1024 Tests: 46 Failed: 4) Failed tests: 37, 39, 41, 44 Non-zero exit status: 4 Files=1, Tests=46, 1 wallclock secs ( 0.01 usr 0.01 sys + 0.91 cusr 0.29 csys = 1.22 CPU) Result: FAIL For the 5-th problem I pass the patch to "Failed QA" status. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #92 from Paola Rossi <paola.rossi@cineca.it> --- I beg your pardon for the following comment, further in addition to the 91-th comment. It's about the syspref "AllowOnShelfHolds". As the manual 3.16 says: "Asks: ___ hold requests to be placed on items that are not checked out." At my tests, the default value is "Don't allow" instead of the manual's default "Allow". The "Allow" status is the most interesting one, of course. [on MASTER] A) About a multi branch system, with "Transfer" from L1 to L2 ["if the library system is a multi branch system and patrons used the hold system to request items from other libraries"], the 3 status/found (of the just created hold, of the transferred hold by L1, and also after cancelling the Transfer by L2's receiving] are all NULL. IMHO the status/found of the hold could be "W" after cancelling. B) About reserving from home ["if the library wanted to allow users to place holds on items [NOT OUT!] from home"], IMHO the status/found of the hold could be "W", but at my tests it's NULL. If A) and B) be bugs, and fixed, all these new "W" cases of a hold should be tested in this patch 8367 too. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Paola Rossi <paola.rossi@cineca.it> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Failed QA |Patch doesn't apply --- Comment #93 from Paola Rossi <paola.rossi@cineca.it> --- I've tried to apply the patch against master 3.19.00.002 Applying: Bug 8367 - How long is a hold waiting for pickup at a more granular level Using index info to reconstruct a base tree... Falling back to patching base and 3-way merge... Auto-merging t/db_dependent/Holds.t Auto-merging svc/holds Auto-merging koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt Auto-merging koha-tmpl/intranet-tmpl/prog/en/modules/circ/waitingreserves.tt CONFLICT (content): Merge conflict in koha-tmpl/intranet-tmpl/prog/en/modules/circ/waitingreserves.tt Auto-merging koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt Auto-merging koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref Auto-merging koha-tmpl/intranet-tmpl/prog/en/js/holds.js Auto-merging installer/data/mysql/updatedatabase.pl CONFLICT (content): Merge conflict in installer/data/mysql/updatedatabase.pl Auto-merging installer/data/mysql/sysprefs.sql Auto-merging installer/data/mysql/kohastructure.sql Auto-merging circ/waitingreserves.pl Auto-merging C4/Reserves.pm Auto-merging C4/Letters.pm Failed to merge in the changes. Patch failed at 0001 Bug 8367 - How long is a hold waiting for pickup at a more granular level So I pass the patch to "Patch doesn't apply" status. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks|9004 | -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |9004 See Also| |http://bugs.koha-community. | |org/bugzilla3/show_bug.cgi? | |id=9004 -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Kyle M Hall <kyle@bywatersolutions.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks|9004 | -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Joonas Kylmälä <j.kylmala@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |j.kylmala@gmail.com Assignee|olli-antti.kivilahti@jns.fi |j.kylmala@gmail.com --- Comment #94 from Joonas Kylmälä <j.kylmala@gmail.com> --- I'll start working on this and I decided to create a new patch and implement the same changes on it. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Joonas Kylmälä <j.kylmala@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Patch doesn't apply |Needs Signoff -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Joonas Kylmälä <j.kylmala@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #32930|0 |1 is obsolete| | --- Comment #95 from Joonas Kylmälä <j.kylmala@gmail.com> --- Created attachment 42706 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=42706&action=edit Bug 8367 - How long is a hold waiting for pickup at a more granular level This patch applies now. You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. The lastpickupdate-column is set based on the given instruction and lands only on an open library day. Also cancel_expired_reserves.pl now cancels only on open library days after the last pickup date has expired. And waitingreserves.pl respects the new DB column. If ReservesMaxPickUpDelay is not set prior to the databaseupdate, the holdspickupwait-directive is never defined, thus disabling this feature until the holdspickupwait is set. If the issuingrules holdspickupwait is 0 or less, this feature is disabled. So each issuingrule can disable this feature for the material it matches, while being fully functional with other rules. This patch adds: - a new column in the issuing rules, including help topics. - a new column reserves.lastpickupdate (+old_reserves) It contains the waitingdate + the corresponding "holds pickup wait". Each time the waitingdate is modified, this value will be modified too. - a new field issuingrules.holdspickupwait - a new function C4::Reserves::MoveWaitingdate() to help in testing this feature. - a new function C4::Reserves::GetLastPickupDate() to calculate the proper date from Calendar. This patch removes: - the ReservesMaxPickUpDelay syspref. - the ExpireReservesOnHolidays syspref, because it became obsolete due to the changes in handling the last pickup date with Koha Calendar. - Also removes a code section from C4::Letters::_parseLetter() which worked blatantly disrespectfully towards Koha Calendar. - TODO figure out how to rename existing letter placeholders <<expirationdate>> with <<lastpickupdate>> Unit tests included. $$$$$$$$$$$$$ $ TEST PLAN $ $$$$$$$$$$$$$ 0. BEFORE UPDATING THE DATABASE! MAKE SURE THAT THE SYSPREF 'ReservesMaxPickUpDelay' is bigger than 0. Otherwise existing reserves won't get UPDATEd with the new lastpickupdate-values. ****** ****** *** *** *** TEST: BASIC WORKFLOW * ****** ****** 1. Check there is no regression with a normal reserve workflow. 2. Add one or more issuingrules. 3. Update the new column 'Holds pickup wait' in your issuing rules. 4. In the 3 templates of staff client, you can see the 'Last pickup date' for an hold (circ/circulation.pl, circ/waitingreserves.pl, members/moremember.pl) 5. In opac-user.pl the last pickup date is displayed in the status-column if available. 5. According to a library and an item type, the lastpickupdate value will be equal to the waiting date + the "holds pickup wait" defined moved to the next open library day. ****** ****** *** *** *** TEST: LETTER PLACEHOLDER (no code modifications here, just regression)* ****** ****** 1. Modify the RESERVESLIP->email Letter. Add "Last pickup date<<reserves.lastpickupdate>>" somewhere. 2. Make a hold for a borrower. 3. Catch the hold and print the reserve slip. Verify that the lastpickupdate is actually the (current date + the 'Holds pickup wait' in your issuing rules) in days. ** ** ** ** ** ** *** *** *** TEST: RESPECTING CALENDAR HOLIDAYS * ** ** ** ** ** ** 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Cancel this hold 5) Edit the calendar for the given location, and make the pickup date a single, unrepeated, holiday. Then make the next day a weekly repeating holiday. Then make the next two days an annual holiday repeatable every year. 6) Repeat step 2 7) View waitingreserves.pl, the last pickup date for this new hold should now be increased by four days. ** ** ** ** ** ** *** *** *** TEST: LETTER lastpickupdate PLACEHOLDER AND REGRESSION * ** ** ** ** ** ** 1. Modify the HOLD-letter, add <<reserves.lastpickupdate>> and <<reserves.waitingdate>> somewhere. 2. Catch a hold for a borrower. 3. See the members/notices.pl for the message queued and verify that the lastpickupdate-placeholder is set in your desired datetime format and that it is not on a holiday. Verify that the waitingdate is today. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Joonas Kylmälä <j.kylmala@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #42706|0 |1 is obsolete| | --- Comment #96 from Joonas Kylmälä <j.kylmala@gmail.com> --- Created attachment 42754 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=42754&action=edit Bug 8367 - How long is a hold waiting for pickup at a more granular level You can now specify a pickup delay for an hold function of a patron category and/or a item type and/or a library. The lastpickupdate-column is set based on the given instruction and lands only on an open library day. Also cancel_expired_reserves.pl now cancels only on open library days after the last pickup date has expired. And waitingreserves.pl respects the new DB column. If ReservesMaxPickUpDelay is not set prior to the databaseupdate, the holdspickupwait-directive is never defined, thus disabling this feature until the holdspickupwait is set. If the issuingrules holdspickupwait is 0 or less, this feature is disabled. So each issuingrule can disable this feature for the material it matches, while being fully functional with other rules. This patch adds: - a new column in the issuing rules, including help topics. - a new column reserves.lastpickupdate (+old_reserves) It contains the waitingdate + the corresponding "holds pickup wait". Each time the waitingdate is modified, this value will be modified too. - a new field issuingrules.holdspickupwait - a new function C4::Reserves::MoveWaitingdate() to help in testing this feature. - a new function C4::Reserves::GetLastPickupDate() to calculate the proper date from Calendar. This patch removes: - the ReservesMaxPickUpDelay syspref. - the ExpireReservesOnHolidays syspref, because it became obsolete due to the changes in handling the last pickup date with Koha Calendar. - Also removes a code section from C4::Letters::_parseLetter() which worked blatantly disrespectfully towards Koha Calendar. - TODO figure out how to rename existing letter placeholders <<expirationdate>> with <<lastpickupdate>> Unit tests included. $$$$$$$$$$$$$ $ TEST PLAN $ $$$$$$$$$$$$$ 0. BEFORE UPDATING THE DATABASE! MAKE SURE THAT THE SYSPREF 'ReservesMaxPickUpDelay' is bigger than 0. Otherwise existing reserves won't get UPDATEd with the new lastpickupdate-values. ****** ****** *** *** *** TEST: BASIC WORKFLOW * ****** ****** 1. Check there is no regression with a normal reserve workflow. 2. Add one or more issuingrules. 3. Update the new column 'Holds pickup wait' in your issuing rules. 4. In the 3 templates of staff client, you can see the 'Last pickup date' for an hold (circ/circulation.pl, circ/waitingreserves.pl, members/moremember.pl) 5. In opac-user.pl the last pickup date is displayed in the status-column if available. 5. According to a library and an item type, the lastpickupdate value will be equal to the waiting date + the "holds pickup wait" defined moved to the next open library day. ****** ****** *** *** *** TEST: LETTER PLACEHOLDER (no code modifications here, just regression)* ****** ****** 1. Modify the RESERVESLIP->email Letter. Add "Last pickup date<<reserves.lastpickupdate>>" somewhere. 2. Make a hold for a borrower. 3. Catch the hold and print the reserve slip. Verify that the lastpickupdate is actually the (current date + the 'Holds pickup wait' in your issuing rules) in days. ** ** ** ** ** ** *** *** *** TEST: RESPECTING CALENDAR HOLIDAYS * ** ** ** ** ** ** 1) Note your ReservesMaxPickUpDelay setting. 2) Create and trap a hold 3) View waitingreserves.pl, note the last pickup date, and the pickup location 4) Cancel this hold 5) Edit the calendar for the given location, and make the pickup date a single, unrepeated, holiday. Then make the next day a weekly repeating holiday. Then make the next two days an annual holiday repeatable every year. 6) Repeat step 2 7) View waitingreserves.pl, the last pickup date for this new hold should now be increased by four days. ** ** ** ** ** ** *** *** *** TEST: LETTER lastpickupdate PLACEHOLDER AND REGRESSION * ** ** ** ** ** ** 1. Modify the HOLD-letter, add <<reserves.lastpickupdate>> and <<reserves.waitingdate>> somewhere. 2. Catch a hold for a borrower. 3. See the members/notices.pl for the message queued and verify that the lastpickupdate-placeholder is set in your desired datetime format and that it is not on a holiday. Verify that the waitingdate is today. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 --- Comment #97 from Joonas Kylmälä <j.kylmala@gmail.com> --- After this patch gets to master, the system preference ExpireReservesMaxPickUpDelay could to be changed to something like ExpireReservesAfterLastPickupDay. I guess it is then more descriptive. There was about 15-20 files depending on ExpireReservesMaxPickUpDelay preference, so it would be better to do maybe a new bug report for it? -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8367 Josef Moravec <josef.moravec@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |josef.moravec@gmail.com -- You are receiving this mail because: You are watching all bug changes.
participants (1)
-
bugzilla-daemon@bugs.koha-community.org