| 
      
            Lines 767-777
          sub CanBookBeIssued {
      
      
        Link Here
      
     | 
  
        
          | 767 | 
              if ( !defined $borrower->{dateexpiry} || $borrower->{'dateexpiry'} eq '0000-00-00') { | 
          767 | 
              if ( !defined $borrower->{dateexpiry} || $borrower->{'dateexpiry'} eq '0000-00-00') { | 
        
        
          | 768 | 
                  $issuingimpossible{EXPIRED} = 1; | 
          768 | 
                  $issuingimpossible{EXPIRED} = 1; | 
        
        
          | 769 | 
              } else { | 
          769 | 
              } else { | 
        
          
            
              | 770 | 
                      my $expiry_dt = dt_from_string( $borrower->{dateexpiry}, 'sql' ); | 
              770 | 
                      my $expiry_dt = dt_from_string( $borrower->{dateexpiry}, 'sql', 'floating' ); | 
            
        
          | 771 | 
                  $expiry_dt->truncate( to => 'day');  | 
          771 | 
                  $expiry_dt->truncate( to => 'day');  | 
        
        
          | 772 | 
                  my $today = $now->clone()->truncate(to => 'day');  | 
          772 | 
                  my $today = $now->clone()->truncate(to => 'day');  | 
        
          
            
              | 773 | 
               | 
              773 | 
                      $today->set_time_zone( 'floating' );  | 
            
            
              | 774 | 
                      if ($expiry_dt->year < 9999 && DateTime->compare($today, $expiry_dt) == 1) { | 
              774 | 
                      if ( DateTime->compare($today, $expiry_dt) == 1 ) { | 
            
        
          | 775 | 
                      $issuingimpossible{EXPIRED} = 1; | 
          775 | 
                      $issuingimpossible{EXPIRED} = 1; | 
        
        
          | 776 | 
                  }  | 
          776 | 
                  }  | 
        
        
          | 777 | 
              }  | 
          777 | 
              }  | 
        
  
    | 
      
            Lines 3448-3457
          sub CalcDateDue {
      
      
        Link Here
      
     | 
  
        
          | 3448 | 
           | 
          3448 | 
           | 
        
        
          | 3449 | 
              # if ReturnBeforeExpiry ON the datedue can't be after borrower expirydate  | 
          3449 | 
              # if ReturnBeforeExpiry ON the datedue can't be after borrower expirydate  | 
        
        
          | 3450 | 
              if ( C4::Context->preference('ReturnBeforeExpiry') ) { | 
          3450 | 
              if ( C4::Context->preference('ReturnBeforeExpiry') ) { | 
        
          
            
              | 3451 | 
                      my $expiry_dt = dt_from_string( $borrower->{dateexpiry}, 'iso' ); | 
              3451 | 
                      my $expiry_dt = dt_from_string( $borrower->{dateexpiry}, 'iso', 'floating'); | 
            
            
              | 3452 | 
                      $expiry_dt->set( hour => 23, minute => 59);  | 
              3452 | 
                      if( $expiry_dt ) { #skip empty expiry date.. | 
            
            
              | 3453 | 
                      if ( DateTime->compare( $datedue, $expiry_dt ) == 1 ) { | 
              3453 | 
                          $expiry_dt->set( hour => 23, minute => 59);  | 
            
            
              | 3454 | 
                          $datedue = $expiry_dt->clone;  | 
              3454 | 
                          my $d1= $datedue->clone->set_time_zone('floating'); | 
            
            
               | 
               | 
              3455 | 
                          if ( DateTime->compare( $d1, $expiry_dt ) == 1 ) { | 
            
            
              | 3456 | 
                              $datedue = $expiry_dt->clone->set_time_zone( C4::Context->tz );  | 
            
            
              | 3457 | 
                          }  | 
            
        
          | 3455 | 
                  }  | 
          3458 | 
                  }  | 
        
        
          | 3456 | 
              }  | 
          3459 | 
              }  | 
        
        
          | 3457 | 
           | 
          3460 | 
           | 
        
            
              | 3458 | 
              -   | 
               | 
               |