From d892aa49d14b794b9336c4d6076fe9d048c6b437 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Thu, 24 Jan 2013 11:50:08 +0100 Subject: [PATCH] Bug 9479: The member notices page doesn't display dates in the syspref format In order to let the KohaDates plugin display a datetime, this patch modify this plugin. Now it uses Koha::DateUtils instead of C4::Dates. Test plan: - check that the date format on the member notices page (members/notices.pl) is displayed according your syspref dateformat. - check that existing dates are always in the good format (without the hours) e.g. acqui/histsearch.pl, acqui/basket.pl, etc. - Modify your syspref and recheck the previous pages Signed-off-by: Owen Leonard This is a nice addition, and works according to the test plan. A nice follow-up would be to create a system pref for formatting times (12/24hr). Signed-off-by: Katrin Fischer Fixed a tab in notices.tt to make QA script happy. Signed-off-by: Chris Cormack --- Koha/Template/Plugin/KohaDates.pm | 23 +++++++++++-------- .../prog/en/modules/members/notices.tt | 3 ++- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/Koha/Template/Plugin/KohaDates.pm b/Koha/Template/Plugin/KohaDates.pm index 00656fa590..884c3e5de1 100644 --- a/Koha/Template/Plugin/KohaDates.pm +++ b/Koha/Template/Plugin/KohaDates.pm @@ -17,21 +17,26 @@ package Koha::Template::Plugin::KohaDates; # with Koha; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -use strict; -use warnings; +use Modern::Perl; use Template::Plugin::Filter; use base qw( Template::Plugin::Filter ); -use warnings; -use strict; -use C4::Dates; +use Koha::DateUtils; +our $DYNAMIC = 1; + +sub init { + my $self = shift; + $self->{ _DYNAMIC } = 1; + return $self; +} sub filter { - my ($self,$text) = @_; - return "" if not $text; - my $date = C4::Dates->new( $text, 'iso' ); - return $date->output("syspref"); + my ( $self, $text, $args, $config ) = @_; + return "" unless $text; + $config->{with_hours} //= 0; + my $dt = dt_from_string( $text, 'iso' ); + return output_pref( $dt, undef, !$config->{with_hours} ); } 1; diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/notices.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/notices.tt index bd345b83a2..b70129d9ba 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/notices.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/notices.tt @@ -1,3 +1,4 @@ +[% USE KohaDates %] [% INCLUDE 'doc-head-open.inc' %] Sent notices for [% INCLUDE 'patron-title.inc' %] [% INCLUDE 'doc-head-close.inc' %] @@ -72,7 +73,7 @@ [% ELSIF ( QUEUED_MESSAGE.status == 'deleted' ) %]deleted [% ELSE %][% QUEUED_MESSAGE.status %][% END %] - [% QUEUED_MESSAGE.time_queued %] + [% QUEUED_MESSAGE.time_queued | $KohaDates with_hours => 1 %] [% END %] -- 2.39.5