version 1.397, 2007/09/11 23:53:05
|
version 1.399, 2007/09/12 08:35:44
|
Line 1143 sub start_languageblock {
|
Line 1143 sub start_languageblock {
|
$target eq 'tex' || $target eq 'analyze' || $target eq 'webgrade') { |
$target eq 'tex' || $target eq 'analyze' || $target eq 'webgrade') { |
my $include = $token->[2]->{'include'}; |
my $include = $token->[2]->{'include'}; |
my $exclude = $token->[2]->{'exclude'}; |
my $exclude = $token->[2]->{'exclude'}; |
my $preferred_language=(&Apache::loncommon::preferred_languages)[0]; |
my @preferred_languages=&Apache::loncommon::preferred_languages(); |
# This should not even happen, since we should at least have the server language |
# This should not even happen, since we should at least have the server language |
if (!$preferred_language) { $preferred_language='en'; } |
if (!$preferred_languages[0]) { $preferred_languages[0]='en'; } |
|
# Now loop over all languages in order of preference |
|
foreach my $preferred_language (@preferred_languages) { |
# If the languageblock has no arguments, show the contents |
# If the languageblock has no arguments, show the contents |
$result='1'; |
$result=1; |
|
my $found=0; |
# Do we have an include argument? |
# Do we have an include argument? |
if ($include) { |
if ($include) { |
# If include is specified, by default, don't render the block |
# If include is specified, by default, don't render the block |
$result=''; |
$result=0; |
foreach my $included_language (split(/\,/,$include)) { |
foreach my $included_language (split(/\,/,$include)) { |
# ... but if my preferred language is included, render it |
# ... but if my preferred language is included, render it |
if ($included_language eq $preferred_language) { $result='1'; } |
if ($included_language eq $preferred_language) { |
} |
$result=1; |
} |
$found=1; |
|
} |
|
} |
|
} |
# Do we have an exclude argument? |
# Do we have an exclude argument? |
if ($exclude) { |
if ($exclude) { |
$result='1'; |
$result=1; |
foreach my $excluded_language (split(/\,/,$exclude)) { |
foreach my $excluded_language (split(/\,/,$exclude)) { |
if ($excluded_language eq $preferred_language) { $result='0'; } |
if ($excluded_language eq $preferred_language) { |
} |
$result=0; |
} |
$found=1; |
|
} |
|
} |
|
} |
|
if ($found) { last; } |
|
} |
if ( ! $result ) { |
if ( ! $result ) { |
my $skip=&Apache::lonxml::get_all_text("/languageblock",$parser, |
my $skip=&Apache::lonxml::get_all_text("/languageblock",$parser, |
$style); |
$style); |