version 1.116, 2003/09/11 22:37:54
|
version 1.118, 2003/09/17 14:30:13
|
Line 68 use POSIX qw(strftime mktime);
|
Line 68 use POSIX qw(strftime mktime);
|
use Apache::Constants qw(:common :http :methods); |
use Apache::Constants qw(:common :http :methods); |
use Apache::lonmsg(); |
use Apache::lonmsg(); |
use Apache::lonmenu(); |
use Apache::lonmenu(); |
|
use Apache::lonlocal; |
|
|
my $readit; |
my $readit; |
|
|
=pod |
=pod |
Line 1611 sub fileextensions {
|
Line 1613 sub fileextensions {
|
|
|
sub display_languages { |
sub display_languages { |
my %languages=(); |
my %languages=(); |
if ($ENV{'environment.languages'}) { |
foreach (&preferred_languages()) { |
foreach (split(/\s*(\,|\;|\:)\s*/,$ENV{'environment.languages'})) { |
$languages{$_}=1; |
$languages{$_}=1; |
|
} |
|
} |
|
if ($ENV{'course.'.$ENV{'request.course.id'}.'.languages'}) { |
|
foreach (split(/\s*(\,|\;|\:)\s*/, |
|
$ENV{'course.'.$ENV{'request.course.id'}.'.languages'})) { |
|
$languages{$_}=1; |
|
} |
|
} |
} |
&get_unprocessed_cgi($ENV{'QUERY_STRING'},['displaylanguage']); |
&get_unprocessed_cgi($ENV{'QUERY_STRING'},['displaylanguage']); |
if ($ENV{'form.displaylanguage'}) { |
if ($ENV{'form.displaylanguage'}) { |
Line 1631 sub display_languages {
|
Line 1625 sub display_languages {
|
return %languages; |
return %languages; |
} |
} |
|
|
|
sub preferred_languages { |
|
my @languages=(); |
|
if ($ENV{'environment.languages'}) { |
|
@languages=split(/\s*(\,|\;|\:)\s*/,$ENV{'environment.languages'}); |
|
} |
|
if ($ENV{'course.'.$ENV{'request.course.id'}.'.languages'}) { |
|
@languages=(@languages,split(/\s*(\,|\;|\:)\s*/, |
|
$ENV{'course.'.$ENV{'request.course.id'}.'.languages'})); |
|
} |
|
my $browser=(split(/\;/,$ENV{'HTTP_ACCEPT_LANGUAGE'}))[0]; |
|
if ($browser) { |
|
@languages=(@languages,split(/\s*(\,|\;|\:)\s*/,$browser)); |
|
} |
|
if ($Apache::lonnet::domain_lang_def{$ENV{'user.domain'}}) { |
|
@languages=(@languages, |
|
$Apache::lonnet::domain_lang_def{$ENV{'user.domain'}}); |
|
} |
|
if ($Apache::lonnet::domain_lang_def{$ENV{'request.role.domain'}}) { |
|
@languages=(@languages, |
|
$Apache::lonnet::domain_lang_def{$ENV{'request.role.domain'}}); |
|
} |
|
if ($Apache::lonnet::domain_lang_def{ |
|
$Apache::lonnet::perlvar{'lonDefDomain'}}) { |
|
@languages=(@languages, |
|
$Apache::lonnet::domain_lang_def{ |
|
$Apache::lonnet::perlvar{'lonDefDomain'}}); |
|
} |
|
# turn "en-ca" into "en-ca,en" |
|
my @genlanguages; |
|
foreach (@languages) { |
|
unless ($_=~/\w/) { next; } |
|
push (@genlanguages,$_); |
|
if ($_=~/(\-|\_)/) { |
|
push (@genlanguages,(split(/(\-|\_)/,$_))[0]); |
|
} |
|
} |
|
&Apache::lonnet::logthis('Lang: '.join(',',@genlanguages)); |
|
return @genlanguages; |
|
} |
|
|
############################################################### |
############################################################### |
## Student Answer Attempts ## |
## Student Answer Attempts ## |
############################################################### |
############################################################### |
Line 2059 other decorations will be returned.
|
Line 2093 other decorations will be returned.
|
|
|
sub bodytag { |
sub bodytag { |
my ($title,$function,$addentries,$bodyonly,$domain,$forcereg)=@_; |
my ($title,$function,$addentries,$bodyonly,$domain,$forcereg)=@_; |
|
$title=&mt($title); |
unless ($function) { |
unless ($function) { |
$function='student'; |
$function='student'; |
if ($ENV{'request.role'}=~/^(cc|in|ta|ep)/) { |
if ($ENV{'request.role'}=~/^(cc|in|ta|ep)/) { |