version 1.66, 2015/06/09 21:23:15
|
version 1.69, 2022/09/08 01:41:14
|
Line 38 Apache::lonlocal - provides localization
|
Line 38 Apache::lonlocal - provides localization
|
|
|
lonlocal provides localization services for LON-CAPA programmers based |
lonlocal provides localization services for LON-CAPA programmers based |
on Locale::Maketext. See |
on Locale::Maketext. See |
C<http://search.cpan.org/dist/Locale-Maketext/lib/Locale/Maketext.pod> |
C<https://metacpan.org/pod/Locale::Maketext> |
for more information on Maketext. |
for more information on Maketext. |
|
|
=head1 OVERVIEWX<internationalization> |
=head1 OVERVIEWX<internationalization> |
Line 153 ignore the rest of the line.
|
Line 153 ignore the rest of the line.
|
This is a relatively easy task, and any help is appreciated. |
This is a relatively easy task, and any help is appreciated. |
|
|
Maketext can do a whole lot more, see |
Maketext can do a whole lot more, see |
C<http://search.cpan.org/dist/Locale-Maketext/lib/Locale/Maketext.pod> |
C<https://metacpan.org/pod/Locale::Maketext> |
but for most purposes, we do not have to mess with that. |
but for most purposes, we do not have to mess with that. |
|
|
=cut |
=cut |
Line 363 sub gettimezone {
|
Line 363 sub gettimezone {
|
} |
} |
return $timezone; |
return $timezone; |
} |
} |
my $cid = $Apache::lonnet::env{'request.course.id'}; |
my $cid = $Apache::lonnet::env{'request.course.id'}; |
|
if (&Apache::lonnet::usertools_access($Apache::lonnet::env{'user.name'}, |
|
$Apache::lonnet::env{'user.domain'}, |
|
'timezone')) { |
|
if ($Apache::lonnet::env{'environment.timezone'} ne '') { |
|
$timezone = $Apache::lonnet::env{'environment.timezone'}; |
|
if ($cid ne '') { |
|
if (($Apache::lonnet::env{'course.'.$cid.'.tzover'}) && |
|
($Apache::lonnet::env{'course.'.$cid.'.timezone'} ne '')) { |
|
$timezone = $Apache::lonnet::env{'course.'.$cid.'.timezone'}; |
|
} |
|
} |
|
if ($timezone ne '') { |
|
if (DateTime::TimeZone->is_valid_name($timezone)) { |
|
return $timezone; |
|
} |
|
} |
|
} |
|
} |
if ($cid ne '') { |
if ($cid ne '') { |
if ($Apache::lonnet::env{'course.'.$cid.'.timezone'}) { |
if ($Apache::lonnet::env{'course.'.$cid.'.timezone'}) { |
$timezone = $Apache::lonnet::env{'course.'.$cid.'.timezone'}; |
$timezone = $Apache::lonnet::env{'course.'.$cid.'.timezone'}; |
Line 496 sub getdatelocale {
|
Line 514 sub getdatelocale {
|
return $locale_obj; |
return $locale_obj; |
} |
} |
|
|
=pod |
=pod |
|
|
|
=over |
|
|
=item * normalize_string |
=item * normalize_string() |
|
|
Normalize string (reduce fragility in the lexicon files) |
Normalize string (reduce fragility in the lexicon files) |
|
|
Line 521 sub normalize_string {
|
Line 541 sub normalize_string {
|
|
|
=pod |
=pod |
|
|
=item * ns |
=item * ns() |
|
|
alias for normalize_string; recommend using it only in the lexicon |
alias for normalize_string; recommend using it only in the lexicon |
|
|
Line 533 sub ns {
|
Line 553 sub ns {
|
|
|
=pod |
=pod |
|
|
=item * mtn |
=item * mtn() |
|
|
mtn: call the mt function and the normalization function easily. |
mtn: call the mt function and the normalization function easily. |
Returns original non-normalized string if there was no translation |
Returns original non-normalized string if there was no translation |
Line 562 sub transstatic {
|
Line 582 sub transstatic {
|
|
|
=pod |
=pod |
|
|
=item * mt_escape |
=item * mt_escape() |
|
|
mt_escape takes a string reference and escape the [] in there so mt |
mt_escape takes a string reference and escape the [] in there so mt |
will leave them as is and not try to expand them |
will leave them as is and not try to expand them |
Line 577 sub mt_escape {
|
Line 597 sub mt_escape {
|
|
|
=pod |
=pod |
|
|
=item * js_escape |
=item * js_escape() |
|
|
js_escape takes a string, string reference or hash reference, |
js_escape takes a string, string reference or hash reference, |
and escapes the values so that they can be used within a <script> element. |
and escapes the values so that they can be used within a <script> element. |
Line 612 sub js_escape {
|
Line 632 sub js_escape {
|
|
|
=pod |
=pod |
|
|
=item * html_escape |
=item * html_escape() |
|
|
js_escape takes a string, string reference or hash reference, |
html_escape takes a string, string reference or hash reference, |
and escapes the values so that they can be used as HTML. |
and escapes the values so that they can be used as HTML. |
It encodes <, >, &, ' and ". |
It encodes <, >, &, ' and ". |
|
|
Line 650 sub html_escape {
|
Line 670 sub html_escape {
|
|
|
=pod |
=pod |
|
|
=item * choose_language |
=item * choose_language() |
|
|
choose_language prompts a user to enter a two letter language code via |
choose_language prompts a user to enter a two letter language code via |
keyboard when running a script from the command line. Default is en. |
keyboard when running a script from the command line. Default is en. |
|
|
|
=back |
|
|
=cut |
=cut |
|
|
sub choose_language { |
sub choose_language { |