Lines 25-34
use Mojo::JSON;
Link Here
|
25 |
use Scalar::Util qw( blessed looks_like_number ); |
25 |
use Scalar::Util qw( blessed looks_like_number ); |
26 |
use Try::Tiny qw( catch try ); |
26 |
use Try::Tiny qw( catch try ); |
27 |
use List::MoreUtils qw( any ); |
27 |
use List::MoreUtils qw( any ); |
|
|
28 |
use DateTime::Format::MySQL; |
28 |
|
29 |
|
29 |
use Koha::Database; |
30 |
use Koha::Database; |
|
|
31 |
use Koha::DateTime::Format::RFC3339; |
32 |
use Koha::DateTime::Format::SQL; |
30 |
use Koha::Exceptions::Object; |
33 |
use Koha::Exceptions::Object; |
31 |
use Koha::DateUtils qw( dt_from_string output_pref ); |
|
|
32 |
use Koha::Object::Message; |
34 |
use Koha::Object::Message; |
33 |
|
35 |
|
34 |
=head1 NAME |
36 |
=head1 NAME |
Lines 423-432
sub TO_JSON {
Link Here
|
423 |
elsif ( _datetime_column_type( $columns_info->{$col}->{data_type} ) ) { |
425 |
elsif ( _datetime_column_type( $columns_info->{$col}->{data_type} ) ) { |
424 |
eval { |
426 |
eval { |
425 |
return unless $unblessed->{$col}; |
427 |
return unless $unblessed->{$col}; |
426 |
$unblessed->{$col} = output_pref({ |
428 |
my $dt = Koha::DateTime::Format::SQL->parse_datetime( $unblessed->{$col} ); |
427 |
dateformat => 'rfc3339', |
429 |
$unblessed->{$col} = Koha::DateTime::Format::RFC3339->format_datetime($dt); |
428 |
dt => dt_from_string($unblessed->{$col}, 'sql'), |
|
|
429 |
}); |
430 |
}; |
430 |
}; |
431 |
} |
431 |
} |
432 |
} |
432 |
} |
Lines 832-850
sub attributes_from_api {
Link Here
|
832 |
$value = ( $value ) ? 1 : 0; |
832 |
$value = ( $value ) ? 1 : 0; |
833 |
} |
833 |
} |
834 |
elsif ( _date_or_datetime_column_type( $columns_info->{$koha_field_name}->{data_type} ) ) { |
834 |
elsif ( _date_or_datetime_column_type( $columns_info->{$koha_field_name}->{data_type} ) ) { |
835 |
try { |
835 |
if (defined $value) { |
836 |
if ( $columns_info->{$koha_field_name}->{data_type} eq 'date' ) { |
836 |
try { |
837 |
$value = $dtf->format_date(dt_from_string($value, 'iso')) |
837 |
if ( $columns_info->{$koha_field_name}->{data_type} eq 'date' ) { |
838 |
if defined $value; |
838 |
my $dt = DateTime::Format::MySQL->parse_date($value); |
839 |
} |
839 |
$value = $dtf->format_date($dt); |
840 |
else { |
840 |
} |
841 |
$value = $dtf->format_datetime(dt_from_string($value, 'rfc3339')) |
841 |
else { |
842 |
if defined $value; |
842 |
my $dt = Koha::DateTime::Format::RFC3339->parse_datetime($value); |
|
|
843 |
$value = $dtf->format_datetime($dt); |
844 |
} |
843 |
} |
845 |
} |
|
|
846 |
catch { |
847 |
Koha::Exceptions::BadParameter->throw( parameter => $key ); |
848 |
}; |
844 |
} |
849 |
} |
845 |
catch { |
|
|
846 |
Koha::Exceptions::BadParameter->throw( parameter => $key ); |
847 |
}; |
848 |
} |
850 |
} |
849 |
|
851 |
|
850 |
$params->{$koha_field_name} = $value; |
852 |
$params->{$koha_field_name} = $value; |