From aa84b40f85b4f69480172c2345bdedc80dca3c3a Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Sat, 21 May 2016 09:10:46 +0100 Subject: [PATCH] Bug 16527: Restore sticky due date behavior Bug 10067 has introduced a regression on the sticky due date behavior: If "remember for session" is checked and the due date is changed from 1 checkout to another, the old due date will be used. The code added by bug 10067 is really confusing and it's hard to say this patch won't introduce another regression. The manipulation of $restoreduedatespec, $duedatespec and $stickyduedate is not easy to follow. Test plan: Confirm that the regression is fixed and that this patch will not introduced a regression on bug 10067 (good luck!) --- circ/circulation.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/circ/circulation.pl b/circ/circulation.pl index 66b3dcf..d7fcfbb 100755 --- a/circ/circulation.pl +++ b/circ/circulation.pl @@ -166,7 +166,7 @@ my $stickyduedate = $query->param('stickyduedate') || $session->param('stickydu my $duedatespec = $query->param('duedatespec') || $session->param('stickyduedate'); $duedatespec = eval { output_pref( { dt => dt_from_string( $duedatespec ), dateformat => 'iso' }); } if ( $duedatespec ); -my $restoreduedatespec = $query->param('restoreduedatespec') || $session->param('stickyduedate') || $duedatespec; +my $restoreduedatespec = $query->param('restoreduedatespec') || $duedatespec || $session->param('stickyduedate'); if ($restoreduedatespec eq "highholds_empty") { undef $restoreduedatespec; } -- 2.8.1