From 9222e01717179d7aa5b9f861254cbfe85f63e670 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!) Signed-off-by: Eivin Giske Skaaren --- circ/circulation.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/circ/circulation.pl b/circ/circulation.pl index 3057370..bf10bc6 100755 --- a/circ/circulation.pl +++ b/circ/circulation.pl @@ -164,7 +164,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 && $restoreduedatespec eq "highholds_empty" ) { undef $restoreduedatespec; } -- 2.8.1