--- loncom/xml/lontexconvert.pm 2003/02/03 18:03:53 1.14
+++ loncom/xml/lontexconvert.pm 2004/01/28 20:48:35 1.30
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# TeX Conversion Module
#
-# $Id: lontexconvert.pm,v 1.14 2003/02/03 18:03:53 harris41 Exp $
+# $Id: lontexconvert.pm,v 1.30 2004/01/28 20:48:35 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -44,44 +44,55 @@ package Apache::lontexconvert;
use strict;
use tth;
use vars qw($errorstring);
+use Apache();
use Apache::lonmsg;
use Apache::lonxml;
+use Apache::lonmenu;
# ====================================================================== Header
+sub init_tth {
+ my $options=$ENV{'course.'.$ENV{'request.course.id'}.'.tthoptions'};
+ if ($ENV{'browser.mathml'}) {
+ &tth::ttminit();
+ if ($ENV{'browser.unicode'}) {
+ &tth::ttmoptions('-L -u1 '.$options);
+ } else {
+ &tth::ttmoptions('-L -u0 '.$options);
+ }
+ } else {
+ &tth::tthinit();
+ if ($ENV{'browser.unicode'}) {
+ &tth::tthoptions('-L -u1 '.$options);
+ } else {
+ &tth::tthoptions('-L -u0 '.$options);
+ }
+ }
+}
+
sub header {
$errorstring='';
my $time=time;
- if ($ENV{'browser.mathml'}) {
- &tth::ttminit();
- if ($ENV{'browser.unicode'}) {
- &tth::ttmoptions('-L -u1');
- } else {
- &tth::ttmoptions('-L -u0');
- }
- } else {
- &tth::tthinit();
- if ($ENV{'browser.unicode'}) {
- &tth::tthoptions('-L -u1');
- } else {
- &tth::tthoptions('-L -u0');
- }
- }
+ &init_tth();
return &Apache::lonxml::xmlbegin().
&Apache::lonxml::fontsettings().
"\n
\n".
- &Apache::lonxml::registerurl(undef,'tex').
+ &Apache::lonmenu::registerurl(undef,'tex').
"\n\n";
}
# ================================================================== Conversion
+$Apache::lontexconvert::messedup=0;
sub converted {
my $texstring=shift;
my $xmlstring='[UNDISPLAYABLE]';
+ if ($Apache::lontexconvert::messedup) {
+ return '[TeX Unconverted Due To Previous Errors]';
+ }
eval(<<'ENDCONV');
- {
- local $SIG{SEGV}=sub { die; };
+ {
+ local $SIG{SEGV}=sub { $Apache::lontexconvert::messedup=1; die; };
if ($ENV{'browser.mathml'}) {
$xmlstring=&tth::ttm($$texstring);
$xmlstring=~s/\