version 1.57, 2009/04/16 15:51:42
|
version 1.60, 2009/10/01 20:22:33
|
Line 262 sub preferred_languages {
|
Line 262 sub preferred_languages {
|
push(@languages,@browser); |
push(@languages,@browser); |
} |
} |
|
|
foreach my $domtype ($Apache::lonnet::env{'user.domain'},$Apache::lonnet::env{'request.role.domain'}, |
my $defdom = &Apache::lonnet::default_login_domain(); |
$Apache::lonnet::perlvar{'lonDefDomain'}) { |
foreach my $domtype ($Apache::lonnet::env{'user.domain'},$Apache::lonnet::env{'request.role.domain'},$defdom) { |
if ($domtype ne '') { |
if ($domtype ne '') { |
my %domdefs = &Apache::lonnet::get_domain_defaults($domtype); |
my %domdefs = &Apache::lonnet::get_domain_defaults($domtype); |
if ($domdefs{'lang_def'} ne '') { |
if ($domdefs{'lang_def'} ne '') { |
Line 395 sub gettimezone {
|
Line 395 sub gettimezone {
|
|
|
sub locallocaltime { |
sub locallocaltime { |
my ($thistime,$timezone) = @_; |
my ($thistime,$timezone) = @_; |
|
|
if (!defined($thistime) || $thistime eq '') { |
if (!defined($thistime) || $thistime eq '') { |
return &mt('Never'); |
return &mt('Never'); |
} |
} |
Line 408 sub locallocaltime {
|
Line 409 sub locallocaltime {
|
} |
} |
|
|
my $dt = DateTime->from_epoch(epoch => $thistime) |
my $dt = DateTime->from_epoch(epoch => $thistime) |
->set_time_zone(&gettimezone($timezone)); |
->set_time_zone(gettimezone($timezone)); |
|
|
|
# TimeZone tries to determine the 'local' timezone from $ENV{TZ} if this |
|
# fails it searches through various system files. Under certain |
|
# circumstances this is an extremly expensive operation. |
|
# So after the first run we store the timezone in $ENV{TZ} to significantly |
|
# speed up future lookups. |
|
$ENV{TZ} = $dt->time_zone()->name() |
|
if (! $ENV{TZ} && gettimezone($timezone) eq 'local'); |
|
|
if ((¤t_language=~/^en/) || (!$lh)) { |
if ((¤t_language=~/^en/) || (!$lh)) { |
|
|
return $dt->strftime("%a %b %e %I:%M:%S %P %Y (%Z)"); |
return $dt->strftime("%a %b %e %I:%M:%S %P %Y (%Z)"); |