version 1.270, 2003/08/11 20:05:53
|
version 1.272, 2003/08/13 18:57:28
|
Line 69 use Safe::Hole();
|
Line 69 use Safe::Hole();
|
use Math::Cephes(); |
use Math::Cephes(); |
use Math::Random(); |
use Math::Random(); |
use Opcode(); |
use Opcode(); |
|
use POSIX qw(strftime); |
|
|
|
|
sub register { |
sub register { |
Line 477 sub htmlclean {
|
Line 478 sub htmlclean {
|
} |
} |
|
|
sub latex_special_symbols { |
sub latex_special_symbols { |
my ($current_token,$stack,$parstack,$where)=@_; |
my ($string,$where)=@_; |
if ($where eq 'header') { |
if ($where eq 'header') { |
$current_token =~ s/(\\|_|\^)/ /g; |
$string =~ s/(\\|_|\^)/ /g; |
$current_token =~ s/(\$|%|\#|&|\{|\})/\\$1/g; |
$string =~ s/(\$|%|\#|&|\{|\})/\\$1/g; |
} else { |
} else { |
$current_token=~s/\\ /\\char92 /g; |
$string=~s/\\ /\\char92 /g; |
$current_token=~s/\^/\\char94 /g; |
$string=~s/\^/\\char94 /g; |
$current_token=~s/\~/\\char126 /g; |
$string=~s/\~/\\char126 /g; |
$current_token=~s/(&[^A-Za-z\#])/\\$1/g; |
$string=~s/(&[^A-Za-z\#])/\\$1/g; |
$current_token=~s/([^&])\#/$1\\#/g; |
$string=~s/([^&])\#/$1\\#/g; |
$current_token=~s/(\$|_|{|})/\\$1/g; |
$string=~s/(\$|_|{|})/\\$1/g; |
$current_token=~s/\\char92 /\\texttt{\\char92}/g; |
$string=~s/\\char92 /\\texttt{\\char92}/g; |
$current_token=~s/(>|<)/\$$1\$/g; #more or less |
$string=~s/(>|<)/\$$1\$/g; #more or less |
if ($current_token=~m/\d%/) {$current_token =~ s/(\d)%/$1\\%/g;} #percent after digit |
if ($string=~m/\d%/) {$string =~ s/(\d)%/$1\\%/g;} #percent after digit |
if ($current_token=~m/\s%/) {$current_token =~ s/(\s)%/$1\\%/g;} #persent after space |
if ($string=~m/\s%/) {$string =~ s/(\s)%/$1\\%/g;} #percent after space |
if ($current_token eq '%.') {$current_token = '\%.';} #persent at the end of statement |
if ($string eq '%.') {$string = '\%.';} #percent at the end of statement |
} |
} |
return $current_token; |
return $string; |
} |
} |
|
|
sub inner_xmlparse { |
sub inner_xmlparse { |
Line 584 sub inner_xmlparse {
|
Line 585 sub inner_xmlparse {
|
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') ) { |
#Style file definitions should be correct |
#Style file definitions should be correct |
if ($target eq 'tex' && ($Apache::lonxml::usestyle)) { |
if ($target eq 'tex' && ($Apache::lonxml::usestyle)) { |
$result=&latex_special_symbols($result,$stack,$parstack); |
$result=&latex_special_symbols($result); |
} |
} |
} |
} |
|
|
Line 1137 sub storefile {
|
Line 1138 sub storefile {
|
if (my $fh=Apache::File->new('>'.$file)) { |
if (my $fh=Apache::File->new('>'.$file)) { |
print $fh $contents; |
print $fh $contents; |
$fh->close(); |
$fh->close(); |
|
return 1; |
} else { |
} else { |
&warning("Unable to save file $file"); |
&warning("Unable to save file $file"); |
|
return 0; |
} |
} |
} |
} |
|
|
Line 1242 sub handler {
|
Line 1245 sub handler {
|
# |
# |
unless ($ENV{'request.state'} eq 'published') { |
unless ($ENV{'request.state'} eq 'published') { |
if (($ENV{'form.savethisfile'}) || ($ENV{'form.attemptclean'})) { |
if (($ENV{'form.savethisfile'}) || ($ENV{'form.attemptclean'})) { |
&storefile($file,$ENV{'form.filecont'}); |
if (&storefile($file,$ENV{'form.filecont'})) { |
|
$request->print("<font COLOR=\"#0000FF\">Updated: ". strftime("%d %b %H:%M:%S",localtime())." </font>"); |
|
} |
} |
} |
} |
} |
my %mystyle; |
my %mystyle; |