Main Koha release repository https://koha-community.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

51 lines
1.4 KiB

  1. package Koha::Template::Plugin::KohaDates;
  2. # Copyright Catalyst IT 2011
  3. # This file is part of Koha.
  4. #
  5. # Koha is free software; you can redistribute it and/or modify it
  6. # under the terms of the GNU General Public License as published by
  7. # the Free Software Foundation; either version 3 of the License, or
  8. # (at your option) any later version.
  9. #
  10. # Koha is distributed in the hope that it will be useful, but
  11. # WITHOUT ANY WARRANTY; without even the implied warranty of
  12. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. # GNU General Public License for more details.
  14. #
  15. # You should have received a copy of the GNU General Public License
  16. # along with Koha; if not, see <http://www.gnu.org/licenses>.
  17. use Modern::Perl;
  18. use Template::Plugin::Filter;
  19. use base qw( Template::Plugin::Filter );
  20. use Koha::DateUtils;
  21. use C4::Context;
  22. our $DYNAMIC = 1;
  23. sub filter {
  24. my ( $self, $text, $args, $config ) = @_;
  25. return "" unless $text;
  26. $config->{with_hours} //= 0;
  27. my $dt = dt_from_string( $text, 'iso' );
  28. return $config->{as_due_date} ?
  29. output_pref({ dt => $dt, as_due_date => 1, dateformat => $config->{dateformat} }) :
  30. output_pref({ dt => $dt, dateonly => !$config->{with_hours}, dateformat => $config->{dateformat} });
  31. }
  32. sub output_preference {
  33. my ( $self, @params ) = @_;
  34. return output_pref( @params );
  35. }
  36. sub tz {
  37. return C4::Context->tz->name;
  38. }
  39. 1;