[Koha-patches] [PATCH] Bug 8045: fixes "date due" when checking in

Adrien Saurat adrien.saurat at biblibre.com
Mon May 7 16:13:51 CEST 2012


Added cloning of object parameters in "days_between" method.
---
 Koha/Calendar.pm |   15 +++++++++------
 1 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/Koha/Calendar.pm b/Koha/Calendar.pm
index 75c5c9e..f63e7eb 100644
--- a/Koha/Calendar.pm
+++ b/Koha/Calendar.pm
@@ -169,13 +169,16 @@ sub days_between {
     my $start_dt = shift;
     my $end_dt   = shift;
 
+    my $datestart_temp = $start_dt->clone();
+    my $dateend_temp = $end_dt->clone();
+
     # start and end should not be closed days
-    my $duration = $end_dt->delta_days($start_dt);
-    $start_dt->truncate( to => 'days' );
-    $end_dt->truncate( to => 'days' );
-    while ( DateTime->compare( $start_dt, $end_dt ) == -1 ) {
-        $start_dt->add( days => 1 );
-        if ( $self->is_holiday($start_dt) ) {
+    my $duration = $dateend_temp->delta_days($datestart_temp);
+    $datestart_temp->truncate( to => 'days' );
+    $dateend_temp->truncate( to => 'days' );
+    while ( DateTime->compare( $datestart_temp, $dateend_temp ) == -1 ) {
+        $datestart_temp->add( days => 1 );
+        if ( $self->is_holiday($datestart_temp) ) {
             $duration->subtract( days => 1 );
         }
     }
-- 
1.7.4.1



More information about the Koha-patches mailing list