--- loncom/localize/lonlocal.pm 2003/09/16 22:40:25 1.3 +++ loncom/localize/lonlocal.pm 2003/09/20 17:04:02 1.8 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Localization routines # -# $Id: lonlocal.pm,v 1.3 2003/09/16 22:40:25 www Exp $ +# $Id: lonlocal.pm,v 1.8 2003/09/20 17:04:02 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -39,6 +39,8 @@ require Exporter; our @ISA = qw (Exporter); our @EXPORT = qw(mt); +my $reroute; + # ========================================================= The language handle use vars qw($lh); @@ -49,12 +51,64 @@ sub mt (@) { unless ($ENV{'environment.translator'}) { return $lh->maketext(@_); } else { - return ''.$lh->maketext(@_).''; + '">[['.$trans.']]'; + if ($ENV{'transreroute'}) { + $reroute.=$link; + return $trans; + } else { + return $link; + } + } +} + +# ============================================================== What language? + +sub current_language { + return $lh->language_tag(); +} + +# ============================================================== What encoding? + +sub current_encoding { + my $enc=$lh->maketext('char_encoding'); + return ($enc eq 'char_encoding'?'':$enc); +} + +# ============================================================== Translate hash + +sub texthash { + my %hash=@_; + foreach (keys %hash) { + $hash{$_}=&mt($hash{$_}); + } + return %hash; +} +# ======================================================== Re-route translation + +sub clearreroutetrans { + &reroutetrans(); + $reroute=''; +} + +# ======================================================== Re-route translation + +sub reroutetrans { + $ENV{'transreroute'}=1; +} + +# ==================================================== End re-route translation +sub endreroutetrans { + $ENV{'transreroute'}=0; + if ($ENV{'environment.translator'}) { + return $reroute; + } else { + return ''; } } @@ -62,6 +116,11 @@ sub mt (@) { sub get_language_handle { $lh=Apache::localize->get_handle(&Apache::loncommon::preferred_languages); + $r->content_languages(["¤t_language()"]); + my $enc=¤t_encoding(); + if ($enc) { + + } } 1;