use C4::SQLHelper qw(InsertInTable UpdateInTable SearchInTable);
use C4::Members::Attributes qw(SearchIdMatchingAttribute);
use C4::NewsChannels; #get slip news
+use DateTime;
+use DateTime::Format::DateParse;
our ($VERSION,@ISA,@EXPORT,@EXPORT_OK,$debug);
my $sth = C4::Context->dbh->prepare($query);
$sth->execute(@borrowernumbers);
my $data = $sth->fetchall_arrayref({});
- my $today = C4::Dates->new->output('iso');
+ my $tz = C4::Context->tz();
+ my $today = DateTime->now( time_zone => $tz);
foreach (@{$data}) {
- if ($_->{date_due} and $_->{date_due} lt $today) {
+ $_->{date_due} or next;
+ $_->{date_due} = DateTime::Format::DateParse->parse_datetime($_->{date_due}, $tz->name());
+ if ( DateTime->compare($_->{date_due}, $today) == -1 ) {
$_->{overdue} = 1;
}
}
}
return $dt;
} elsif ( $days_mode eq 'Calendar' ) {
+ if ($unit eq 'hours' ) {
+ $base_date->add_duration($add_duration);
+ while ($self->is_holiday($base_date)) {
+ $base_date->add_duration( $day_dur );
+
+ }
+
+ }
+ else {
my $days = $add_duration->in_units('days');
while ($days) {
$base_date->add_duration( $day_dur );
--$days;
}
}
+ }
if ( $unit eq 'hours' ) {
my $dt = $base_date->clone()->subtract( days => 1 );
if ( $self->is_holiday($dt) ) {
my $pref = C4::Context->preference('dateformat');
given ($pref) {
when (/^iso/) {
- return $dt->strftime('%Y-%m-%d $H:%M');
+ return $dt->strftime('%Y-%m-%d %H:%M');
}
when (/^metric/) {
- return $dt->strftime('%d/%m/%Y $H:%M');
+ return $dt->strftime('%d/%m/%Y %H:%M');
}
when (/^us/) {
- return $dt->strftime('%m/%d/%Y $H:%M');
+ return $dt->strftime('%m/%d/%Y %H:%M');
}
default {
- return $dt->strftime('%Y-%m-%d $H:%M');
+ return $dt->strftime('%Y-%m-%d %H:%M');
}
}
use C4::Context;
use CGI::Session;
use C4::Members::Attributes qw(GetBorrowerAttributes);
+use Koha::DateUtils;
use Date::Calc qw(
Today
$totalprice += $it->{'replacementprice'};
$it->{'itemtype'} = $itemtypeinfo->{'description'};
$it->{'itemtype_image'} = $itemtypeinfo->{'imageurl'};
- $it->{'dd'} = format_date($it->{'date_due'});
+ $it->{'dd'} = output_pref($it->{'date_due'});
$it->{'displaydate'} = format_date($it->{'issuedate'});
- $it->{'od'} = ( $it->{'date_due'} lt $todaysdate ) ? 1 : 0 ;
+ #$it->{'od'} = ( $it->{'date_due'} lt $todaysdate ) ? 1 : 0 ;
+ $it->{'od'} = $it->{'overdue'};
($it->{'author'} eq '') and $it->{'author'} = ' ';
$it->{'renew_failed'} = $renew_failed{$it->{'itemnumber'}};