version 1.694, 2008/11/22 19:08:21
|
version 1.697, 2008/11/28 18:18:39
|
Line 677 sub select_datelocale {
|
Line 677 sub select_datelocale {
|
if ($id ne '') { |
if ($id ne '') { |
my $en_terr = $locale->{'en_territory'}; |
my $en_terr = $locale->{'en_territory'}; |
my $native_terr = $locale->{'native_territory'}; |
my $native_terr = $locale->{'native_territory'}; |
my @languages = &preferred_languages(); |
my @languages = &Apache::lonlocal::preferred_languages(); |
if (grep(/^en$/,@languages) || !@languages) { |
if (grep(/^en$/,@languages) || !@languages) { |
if ($en_terr ne '') { |
if ($en_terr ne '') { |
$locale_names{$id} = '('.$en_terr.')'; |
$locale_names{$id} = '('.$en_terr.')'; |
Line 2998 sub fileextensions {
|
Line 2998 sub fileextensions {
|
|
|
sub display_languages { |
sub display_languages { |
my %languages=(); |
my %languages=(); |
foreach my $lang (&preferred_languages()) { |
foreach my $lang (&Apache::lonlocal::preferred_languages()) { |
$languages{$lang}=1; |
$languages{$lang}=1; |
} |
} |
&get_unprocessed_cgi($ENV{'QUERY_STRING'},['displaylanguage']); |
&get_unprocessed_cgi($ENV{'QUERY_STRING'},['displaylanguage']); |
Line 3010 sub display_languages {
|
Line 3010 sub display_languages {
|
return %languages; |
return %languages; |
} |
} |
|
|
sub preferred_languages { |
|
my @languages=(); |
|
if (($env{'request.role.adv'}) && ($env{'form.languages'})) { |
|
@languages=(@languages,split(/\s*(\,|\;|\:)\s*/,$env{'form.languages'})); |
|
} |
|
if ($env{'course.'.$env{'request.course.id'}.'.languages'}) { |
|
@languages=(@languages,split(/\s*(\,|\;|\:)\s*/, |
|
$env{'course.'.$env{'request.course.id'}.'.languages'})); |
|
} |
|
|
|
if ($env{'environment.languages'}) { |
|
@languages=(@languages, |
|
split(/\s*(\,|\;|\:)\s*/,$env{'environment.languages'})); |
|
} |
|
my $browser=$ENV{'HTTP_ACCEPT_LANGUAGE'}; |
|
if ($browser) { |
|
my @browser = |
|
map { (split(/\s*;\s*/,$_))[0] } (split(/\s*,\s*/,$browser)); |
|
push(@languages,@browser); |
|
} |
|
|
|
foreach my $domtype ($env{'user.domain'},$env{'request.role.domain'}, |
|
$Apache::lonnet::perlvar{'lonDefDomain'}) { |
|
if ($domtype ne '') { |
|
my %domdefs = &Apache::lonnet::get_domain_defaults($domtype); |
|
if ($domdefs{'lang_def'} ne '') { |
|
push(@languages,$domdefs{'lang_def'}); |
|
} |
|
} |
|
} |
|
return &get_genlanguages(@languages); |
|
} |
|
|
|
sub get_genlanguages { |
|
my (@languages) = @_; |
|
# turn "en-ca" into "en-ca,en" |
|
my @genlanguages; |
|
foreach my $lang (@languages) { |
|
unless ($lang=~/\w/) { next; } |
|
push(@genlanguages,$lang); |
|
if ($lang=~/(\-|\_)/) { |
|
push(@genlanguages,(split(/(\-|\_)/,$lang))[0]); |
|
} |
|
} |
|
#uniqueify the languages list |
|
my %count; |
|
@genlanguages = map { $count{$_}++ == 0 ? $_ : () } @genlanguages; |
|
return @genlanguages; |
|
} |
|
|
|
sub languages { |
sub languages { |
my ($possible_langs) = @_; |
my ($possible_langs) = @_; |
my @preferred_langs = &preferred_languages(); |
my @preferred_langs = &Apache::lonlocal::preferred_languages(); |
if (!ref($possible_langs)) { |
if (!ref($possible_langs)) { |
if( wantarray ) { |
if( wantarray ) { |
return @preferred_langs; |
return @preferred_langs; |
Line 4869 table.LC_mail_list tr.LC_mail_even {
|
Line 4819 table.LC_mail_list tr.LC_mail_even {
|
table.LC_mail_list tr.LC_mail_odd { |
table.LC_mail_list tr.LC_mail_odd { |
} |
} |
|
|
|
|
table#LC_portfolio_actions { |
|
width: auto; |
|
background: $pgbg; |
|
border: 0px; |
|
border-spacing: 2px 2px; |
|
padding: 0px; |
|
margin: 0px; |
|
border-collapse: separate; |
|
} |
|
table#LC_portfolio_actions td.LC_label { |
|
background: $tabbg; |
|
text-align: right; |
|
} |
|
table#LC_portfolio_actions td.LC_value { |
|
background: $tabbg; |
|
} |
|
|
|
table#LC_cstr_controls { |
table#LC_cstr_controls { |
width: 100%; |
width: 100%; |
border-collapse: collapse; |
border-collapse: collapse; |
Line 4905 table#LC_cstr_controls tr th {
|
Line 4837 table#LC_cstr_controls tr th {
|
font-size: smaller; |
font-size: smaller; |
} |
} |
|
|
table#LC_browser { |
table.LC_data_table tr > td.LC_browser_file, |
|
table.LC_data_table tr > td.LC_browser_file_published { |
} |
|
table#LC_browser tr th { |
|
background: $table_header; |
|
} |
|
table#LC_browser tr td { |
|
padding: 2px; |
|
} |
|
table#LC_browser tr.LC_browser_file, |
|
table#LC_browser tr.LC_browser_file_published { |
|
background: #CCFF88; |
background: #CCFF88; |
} |
} |
table#LC_browser tr.LC_browser_file_locked, |
table.LC_data_table tr > td.LC_browser_file_locked, |
table#LC_browser tr.LC_browser_file_unpublished { |
table.LC_data_table tr > td.LC_browser_file_unpublished { |
background: #FFAA99; |
background: #FFAA99; |
} |
} |
table#LC_browser tr.LC_browser_file_obsolete { |
table.LC_data_table tr > td.LC_browser_file_obsolete { |
background: #AAAAAA; |
background: #AAAAAA; |
} |
} |
table#LC_browser tr.LC_browser_file_modified, |
table.LC_data_table tr > td.LC_browser_file_modified, |
table#LC_browser tr.LC_browser_file_metamodified { |
table.LC_data_table tr > td.LC_browser_file_metamodified { |
background: #FFFF77; |
background: #FFFF77; |
} |
} |
table#LC_browser tr.LC_browser_folder { |
table.LC_data_table tr.LC_browser_folder > td { |
background: #CCCCFF; |
background: #CCCCFF; |
} |
} |
|
|
span.LC_current_location { |
span.LC_current_location { |
font-size: x-large; |
font-size: x-large; |
background: $pgbg; |
background: $pgbg; |