--- loncom/xml/lontexconvert.pm 2003/10/18 15:53:00 1.27 +++ 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.27 2003/10/18 15:53:00 www Exp $ +# $Id: lontexconvert.pm,v 1.30 2004/01/28 20:48:35 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -51,24 +51,29 @@ 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". @@ -97,6 +102,7 @@ sub converted { } else { $xmlstring=&tth::tth($$texstring); $errorstring.=&tth::ttherror(); + $xmlstring=~s---g; } $xmlstring=~s/^\s*//; $xmlstring=~s/\s*$//; @@ -130,7 +136,7 @@ sub footer { sub to_convert { my ($string) = @_; $string=~s/\/ /gs; - $string=~s/\s/ /gs; +# $string=~s/\s/ /gs; $string=&HTML::Entities::decode($string); return &converted(\$string); } @@ -161,28 +167,18 @@ sub smiley { sub msgtexconverted { my $message=shift; - + my $email=shift; $errorstring=''; - 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(); my $outmessage=''; my $tex=0; foreach (split(/(?:\<\;|\<)\/*m\s*(?:\>\;|\>)/i,$message)) { if ($tex) { - $outmessage.=&to_convert($_); $tex=0; + if ($email) { + $outmessage.=''.&to_convert($_).'
'; $tex=0;
+	    } else {
+		$outmessage.=&to_convert($_); $tex=0;
+	    }
 	} else {
             $outmessage.=&smiley($_); $tex=1;
 	}