return %versions;
}
=head2 timezone
my $C4::Context->timzone
Returns a timezone code for the instance of Koha
=cut
sub timezone {
my $self = shift;
my $timezone = C4::Context->config('timezone') || $ENV{TZ} || 'local';
return $timezone;
=head2 tz
sub tz {
if (!defined $context->{tz}) {
$context->{tz} = DateTime::TimeZone->new(name => 'local');
my $timezone = $self->timezone;
$context->{tz} = DateTime::TimeZone->new(name => $timezone);
return $context->{tz};
my ( %encoding_attr, $encoding_query, $tz_query, $sql_mode_query );
my $tz = $ENV{TZ};
my $tz = C4::Context->timezone;
if ( $db_driver eq 'mysql' ) {
%encoding_attr = ( mysql_enable_utf8 => 1 );
$encoding_query = "set NAMES 'utf8mb4'";
-
use Modern::Perl;
use C4::Context;
use Test::More tests => 3;
use t::lib::Mocks;
$ENV{TZ} = q{};
t::lib::Mocks::mock_config( 'timezone', q{} );
is( C4::Context->timezone, 'local',
'Got local timezone with no env or config timezone set' );
$ENV{TZ} = 'Antarctica/Macquarie';
is(
C4::Context->timezone,
'Antarctica/Macquarie',
'Got correct timezone using ENV, overrides local time'
);
t::lib::Mocks::mock_config( 'timezone', 'Antarctica/South_Pole' );
'Antarctica/South_Pole',
'Got correct timezone using config, overrides env'