version 1.185, 2002/07/24 21:18:36
|
version 1.192, 2002/09/04 06:55:27
|
Line 176 sub xmlend {
|
Line 176 sub xmlend {
|
unless (($hidden) && (!$seeid)) { |
unless (($hidden) && (!$seeid)) { |
my $message=$contrib{$idx.':message'}; |
my $message=$contrib{$idx.':message'}; |
$message=~s/\n/\<br \/\>/g; |
$message=~s/\n/\<br \/\>/g; |
if (($message=~/\$.+\$/) || ($message=~/\\\[.+\\\]/)) { |
$message=&Apache::lontexconvert::msgtexconverted($message); |
$message=&Apache::lontexconvert::converted(\$message); |
|
} |
|
if ($message) { |
if ($message) { |
if ($hidden) { |
if ($hidden) { |
$message='<font color="#888888">'.$message.'</font>'; |
$message='<font color="#888888">'.$message.'</font>'; |
Line 335 sub registerurl {
|
Line 333 sub registerurl {
|
my $target = shift; |
my $target = shift; |
my $result = ''; |
my $result = ''; |
if ($target eq 'edit') { |
if ($target eq 'edit') { |
$result .="<script>\n menu.currentURL=null;\n". |
$result .="<script>\n". |
|
"if (typeof menu != 'undefined') {menu.currentURL=null;}\n". |
&Apache::loncommon::browser_and_searcher_javascript(). |
&Apache::loncommon::browser_and_searcher_javascript(). |
"\n</script>\n"; |
"\n</script>\n"; |
} |
} |
Line 540 sub htmlclean {
|
Line 539 sub htmlclean {
|
return $output; |
return $output; |
} |
} |
|
|
|
sub latex_special_symbols { |
|
my ($current_token,$stack,$parstack)=@_; |
|
$current_token=~s/\\/\\char92 /g; |
|
$current_token=~s/\^/\\char94 /g; |
|
$current_token=~s/\~/\\char126 /g; |
|
$current_token=~s/(&[^a-z#])/\\$1/g; |
|
$current_token=~s/([^&]\#)/\\$1/g; |
|
$current_token=~s/(\$|_|{|})/\\$1/g; |
|
$current_token=~s/\\char92 /\\texttt{\\char92}/g; |
|
$current_token=~s/>/\$>\$/g; #more |
|
$current_token=~s/</\$<\$/g; #less |
|
if ($current_token=~m/\d%/) {$current_token =~ s/(\d)%/$1\\%/g;} #percent after digit |
|
if ($current_token=~m/\s%/) {$current_token =~ s/(\s)%/$1\\%/g;} #persent after space |
|
return $current_token; |
|
} |
|
|
sub inner_xmlparse { |
sub inner_xmlparse { |
my ($target,$stack,$parstack,$pars,$safeeval,$style_for_target)=@_; |
my ($target,$stack,$parstack,$pars,$safeeval,$style_for_target)=@_; |
my $finaloutput = ''; |
my $finaloutput = ''; |
Line 549 sub inner_xmlparse {
|
Line 564 sub inner_xmlparse {
|
while ($token = $$pars['-1']->get_token) { |
while ($token = $$pars['-1']->get_token) { |
if (($token->[0] eq 'T') || ($token->[0] eq 'C') || ($token->[0] eq 'D') ) { |
if (($token->[0] eq 'T') || ($token->[0] eq 'C') || ($token->[0] eq 'D') ) { |
if ($metamode<1) { |
if ($metamode<1) { |
if ($target eq 'tex') { |
my $text=$token->[1]; |
my @temp_array = @$stack; |
if ($token->[0] eq 'C') { |
if ($temp_array[-1] ne 'm') { |
$text = '%'.$text; |
if ($temp_array[-1] ne 'tt') { |
$text =~ s/[\n\r]//g; |
if ($token->[1]=~m/\^/) {$token->[1]=~s/\^/\\verb|\^|/g;} |
|
} else { |
|
if ($token->[1]=~m/\^/) {$token->[1]=~s/\^/}\\verb|\^|{/g;} |
|
} |
|
if ($token->[1]=~m/>/) {$token->[1]=~s/>/\$>\$/g;} |
|
if ($token->[1]=~m/</) {$token->[1]=~s/</\$<\$/g;} |
|
} |
|
} |
} |
$result.=$token->[1]; |
$result.=$text; |
} |
} |
} elsif ($token->[0] eq 'PI') { |
} elsif ($token->[0] eq 'PI') { |
if ($metamode<1) { |
if ($metamode<1) { |
Line 624 sub inner_xmlparse {
|
Line 632 sub inner_xmlparse {
|
$result= &Apache::run::evaluate($result,$safeeval,''); |
$result= &Apache::run::evaluate($result,$safeeval,''); |
} |
} |
} |
} |
|
if (($token->[0] eq 'T') || ($token->[0] eq 'C') || ($token->[0] eq 'D') ) { |
|
if ($target eq 'tex') { |
|
$result=&latex_special_symbols($result,$stack,$parstack); |
|
} |
|
} |
|
|
# Encode any high ASCII characters |
# Encode any high ASCII characters |
if (!$Apache::lonxml::prevent_entity_encode) { |
if (!$Apache::lonxml::prevent_entity_encode) { |
$result=&HTML::Entities::encode($result,"\200-\377"); |
$result=&HTML::Entities::encode($result,"\200-\377"); |
Line 750 sub callsub {
|
Line 764 sub callsub {
|
} |
} |
if (!$deleted) { |
if (!$deleted) { |
if ($space) { |
if ($space) { |
#&Apache::lonxml::debug("Calling sub $sub in $space $metamode"); |
&Apache::lonxml::debug("Calling sub $sub in $space $metamode"); |
$sub1="$space\:\:$sub"; |
$sub1="$space\:\:$sub"; |
($currentstring,$nodefault) = &$sub1($target,$token,$tagstack, |
($currentstring,$nodefault) = &$sub1($target,$token,$tagstack, |
$parstack,$parser,$safeeval, |
$parstack,$parser,$safeeval, |
$style); |
$style); |
} else { |
} else { |
#&Apache::lonxml::debug("NOT Calling sub $sub in $space $metamode"); |
&Apache::lonxml::debug("NOT Calling sub $sub in $space $metamode"); |
if ($metamode <1) { |
if ($metamode <1) { |
if (defined($token->[4]) && ($metamode < 1)) { |
if (defined($token->[4]) && ($metamode < 1)) { |
$currentstring = $token->[4]; |
$currentstring = $token->[4]; |
Line 949 sub decreasedepth {
|
Line 963 sub decreasedepth {
|
} |
} |
|
|
sub get_all_text_unbalanced { |
sub get_all_text_unbalanced { |
|
#there is a copy of this in lonpublisher.pm |
my($tag,$pars)= @_; |
my($tag,$pars)= @_; |
my $token; |
my $token; |
my $result=''; |
my $result=''; |