--- loncom/localize/lonlocal.pm 2011/08/03 18:25:16 1.63 +++ loncom/localize/lonlocal.pm 2019/02/24 01:38:14 1.67 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Localization routines # -# $Id: lonlocal.pm,v 1.63 2011/08/03 18:25:16 raeburn Exp $ +# $Id: lonlocal.pm,v 1.67 2019/02/24 01:38:14 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -38,7 +38,7 @@ Apache::lonlocal - provides localization lonlocal provides localization services for LON-CAPA programmers based on Locale::Maketext. See -C +C for more information on Maketext. =head1 OVERVIEWX @@ -81,7 +81,7 @@ Inside might be something like this if ($status eq 'WON') { $message='You have won.'; } elsif ($status eq 'LOST') { - $message='You are a total looser.'; + $message='You are a total loser.'; } return $message; } @@ -103,7 +103,7 @@ The first two examples are easy: if ($status eq 'WON') { $message='You have won.'; } elsif ($status eq 'LOST') { - $message='You are a total looser.'; + $message='You are a total loser.'; } return &mt($message); } @@ -135,7 +135,7 @@ like this: 'You have won.' => 'Sie haben gewonnen.', - 'You are a total looser.' + 'You are a total loser.' => 'Sie sind der totale Verlierer.', 'Rules' @@ -153,7 +153,7 @@ ignore the rest of the line. This is a relatively easy task, and any help is appreciated. Maketext can do a whole lot more, see -C +C but for most purposes, we do not have to mess with that. =cut @@ -171,7 +171,7 @@ use DateTime::Locale; require Exporter; our @ISA = qw (Exporter); -our @EXPORT = qw(mt mtn ns mt_user); +our @EXPORT = qw(mt mtn ns mt_user js_escape html_escape); my %mtcache=(); @@ -325,7 +325,7 @@ sub current_locale { sub texthash { my %hash=@_; - foreach (keys %hash) { + foreach (keys(%hash)) { $hash{$_}=&mt($hash{$_}); } return %hash; @@ -496,9 +496,11 @@ sub getdatelocale { return $locale_obj; } -=pod +=pod -=item * normalize_string +=over + +=item * normalize_string() Normalize string (reduce fragility in the lexicon files) @@ -521,7 +523,7 @@ sub normalize_string { =pod -=item * ns +=item * ns() alias for normalize_string; recommend using it only in the lexicon @@ -533,7 +535,7 @@ sub ns { =pod -=item * mtn +=item * mtn() mtn: call the mt function and the normalization function easily. Returns original non-normalized string if there was no translation @@ -562,7 +564,7 @@ sub transstatic { =pod -=item * mt_escape +=item * mt_escape() mt_escape takes a string reference and escape the [] in there so mt will leave them as is and not try to expand them @@ -575,13 +577,88 @@ sub mt_escape { $$str_ref =~s/([\[\]])/~$1/g; } +=pod + +=item * js_escape() + +js_escape takes a string, string reference or hash reference, +and escapes the values so that they can be used within a