[LON-CAPA-cvs] cvs: loncom /interface lonhelp.pm /xml lontexconvert.pm

albertel lon-capa-cvs@mail.lon-capa.org
Tue, 25 Feb 2003 22:50:11 -0000


albertel		Tue Feb 25 17:50:11 2003 EDT

  Modified files:              
    /loncom/interface	lonhelp.pm 
    /loncom/xml	lontexconvert.pm 
  Log:
  - lonhelp now supports proper unicode output
  - errors in tex messages don't keep getting repeated
  
  
  
Index: loncom/interface/lonhelp.pm
diff -u loncom/interface/lonhelp.pm:1.4 loncom/interface/lonhelp.pm:1.5
--- loncom/interface/lonhelp.pm:1.4	Fri Aug  9 10:48:31 2002
+++ loncom/interface/lonhelp.pm	Tue Feb 25 17:50:11 2003
@@ -31,10 +31,12 @@
 
 use strict;
 use Apache::Constants qw(:common :http);
-use Apache::File;
-use Apache::loncommon;
-use tth;
-use GDBM_File;
+use Apache::File();
+use Apache::loncommon();
+use Apache::lonacc();
+use Apache::lontexconvert();
+use tth();
+use GDBM_File();
 
 # This sub takes the name of a label in, and converts it to something
 # that is a valid anchor name.
@@ -104,8 +106,9 @@
                 ' bordercolor="#000000"/>\\end{html}'
              |gxe;
 
-    $tex = tth::tth($tex);
 
+    $tex=&Apache::lontexconvert::converted(\$tex);
+    
     # Finish backslashes
     $tex =~ s/###BACKSLASH###/'\\'/ge;
  
@@ -116,7 +119,7 @@
     # just duck the issue...
 
     $tex =~ s/Figure 0://g;
-
+	     $tex.=$Apache::lontexconvert::errorstring;
     untie %fragmentLabels;
 
     return $tex;
@@ -136,13 +139,34 @@
      # of nothing but alphanums, ' ,, or ., or the file
      # will be "not found", no matter what.
      
-     return 404 if ($filename !~ /\A[-0-9a-zA-z_'',.]+\Z/);
+     return HTTP_NOT_FOUND if ($filename !~ /\A[-0-9a-zA-z_'',.]+\Z/);
 
      (my $file = Apache::File->new($docroot . "/adm/help/tex/".$filename.'.tex'))
-	 or return 404;
+	 or return HTTP_NOT_FOUND;
+
+     # get me my environment if it exists
+     &Apache::lonacc::handler($r);
+
+     if ($ENV{'browser.mathml'}) {
+	 $r->content_type('text/xml');
+	 &tth::ttminit();
+	 if ($ENV{'browser.unicode'}) {
+	     &tth::ttmoptions('-L -u1');
+	 } else {
+	     &tth::ttmoptions('-L -u0');
+	 }
+     } else {
+	 $r->content_type("text/html");
+	 &tth::tthinit();
+	 if ($ENV{'browser.unicode'}) {
+	     &tth::tthoptions('-L -u1');
+	 } else {
+	     &tth::tthoptions('-L -u0');
+	 }
+     }
+
      my $tex = join('', <$file>);
      $tex = render($tex, $docroot, $serverroot);
-     $r->content_type("text/html");
      serveTex($tex, $r);
 
      return OK;
Index: loncom/xml/lontexconvert.pm
diff -u loncom/xml/lontexconvert.pm:1.16 loncom/xml/lontexconvert.pm:1.17
--- loncom/xml/lontexconvert.pm:1.16	Fri Feb 14 14:35:55 2003
+++ loncom/xml/lontexconvert.pm	Tue Feb 25 17:50:11 2003
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # TeX Conversion Module
 #
-# $Id: lontexconvert.pm,v 1.16 2003/02/14 19:35:55 www Exp $
+# $Id: lontexconvert.pm,v 1.17 2003/02/25 22:50:11 albertel Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -123,6 +123,7 @@
 sub msgtexconverted {
     my $message=shift;
 
+    $errorstring='';
     if ($ENV{'browser.mathml'}) {
 	&tth::ttminit();
 	if ($ENV{'browser.unicode'}) {