version 1.55, 2009/02/05 10:39:09
|
version 1.57, 2009/04/16 15:51:42
|
Line 173 require Exporter;
|
Line 173 require Exporter;
|
our @ISA = qw (Exporter); |
our @ISA = qw (Exporter); |
our @EXPORT = qw(mt mtn ns mt_user); |
our @EXPORT = qw(mt mtn ns mt_user); |
|
|
|
my %mtcache=(); |
|
|
# ========================================================= The language handle |
# ========================================================= The language handle |
|
|
use vars qw($lh); |
use vars qw($lh $current_language); |
|
|
# ===================================================== The "MakeText" function |
# ===================================================== The "MakeText" function |
|
|
# ######### Localize Cache |
|
# my @localize_cache; |
|
# ######### |
|
|
|
sub mt (@) { |
sub mt (@) { |
# open(LOG,'>>/home/www/loncapa/loncom/localize/localize/newphrases.txt'); |
# open(LOG,'>>/home/www/loncapa/loncom/localize/localize/newphrases.txt'); |
# print LOG (@_[0]."\n"); |
# print LOG (@_[0]."\n"); |
Line 195 sub mt (@) {
|
Line 193 sub mt (@) {
|
return $_[0]; |
return $_[0]; |
} |
} |
} else { |
} else { |
return $lh->maketext(@_); |
if ($#_>0) { return $lh->maketext(@_); } |
# ######### Localize Cache |
if ($mtcache{$current_language.':'.$_[0]}) { |
# foreach my $e (@localize_cache) |
return $mtcache{$current_language.':'.$_[0]}; |
# { |
} |
# if($_[0] eq $$e[0]) { return $$e[1]; } |
my $translation=$lh->maketext(@_); |
# } |
$mtcache{$current_language.':'.$_[0]}=$translation; |
# |
return $translation; |
# if($#localize_cache == 100) { pop(@localize_cache); } |
|
# my $localize_entry = $lh->maketext(@_); |
|
# unshift(@localize_cache, [ @_, $localize_entry ] ); |
|
# ######### |
|
# |
|
# return $localize_entry; |
|
} |
} |
} else { |
} else { |
if (wantarray) { |
if (wantarray) { |
Line 303 sub get_genlanguages {
|
Line 295 sub get_genlanguages {
|
|
|
sub current_encoding { |
sub current_encoding { |
my $default='UTF-8'; |
my $default='UTF-8'; |
if ($Apache::lonnet::env{'browser.os'} eq 'win' && |
# UTF-8 character encoding needed for the whole LON-CAPA system |
$Apache::lonnet::env{'browser.type'} eq 'explorer') { |
# (interface language and homework problem content) |
$default='ISO-8859-1'; |
# See Bugzilla 5702 vs. 2189 and 4067 |
} |
# if ($Apache::lonnet::env{'browser.os'} eq 'win' && |
|
# $Apache::lonnet::env{'browser.type'} eq 'explorer') { |
|
# $default='ISO-8859-1'; |
|
# } |
if ($lh) { |
if ($lh) { |
my $enc=$lh->maketext('char_encoding'); |
my $enc=$lh->maketext('char_encoding'); |
return ($enc eq 'char_encoding'?$default:$enc); |
return ($enc eq 'char_encoding'?$default:$enc); |
Line 348 sub get_language_handle {
|
Line 343 sub get_language_handle {
|
my @languages=&preferred_languages(); |
my @languages=&preferred_languages(); |
$ENV{'HTTP_ACCEPT_LANGUAGE'}=''; |
$ENV{'HTTP_ACCEPT_LANGUAGE'}=''; |
$lh=Apache::localize->get_handle(@languages); |
$lh=Apache::localize->get_handle(@languages); |
|
$current_language=¤t_language(); |
if ($r) { |
if ($r) { |
$r->content_languages([¤t_language()]); |
$r->content_languages([¤t_language()]); |
} |
} |