Diff for /loncom/xml/lontexconvert.pm between versions 1.106 and 1.109

version 1.106, 2011/03/14 16:10:21 version 1.109, 2011/12/06 16:10:53
Line 174  sub displaystyle { Line 174  sub displaystyle {
     return 0;      return 0;
 }  }
   
   sub MathJax_converted {
       my $texstring=shift;
       my $tag='math/tex;';
       if (&displaystyle($texstring)) { $tag='math/tex; mode=display'; }
       &clean_out_math_mode($texstring);
       return &MathJax_header().
         '<script type="'.$tag.'">'.$$texstring.'</script>';
   }
   
   {
       #Relies heavily on the previous jsMath installation
       my @MathJax_sent_header;
       sub MathJax_reset {
           undef(@MathJax_sent_header);
       }
       sub MathJax_push {
           push(@MathJax_sent_header,0);
       }
       sub MathJax_header {
           if (!@MathJax_sent_header) {
               &Apache::lonnet::logthis("mismatched calls of MathJax_header and MathJax_process");
               return '';
           }
           return '' if $MathJax_sent_header[-1];
           $MathJax_sent_header[-1]=1;
           return
             '<script type="text/javascript" src="/adm/MathJax/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>'."\n";
       }
       #sub MathJax_process {
       #    my $state = pop(@MathJax_sent_header);
       #    return '' if !$state;
       #    return "\n".
       #        '<script type="text/javascript">MathJax.Process()</script>'."\n";
       #}
       #sub MathJax_state {
       #    my ($level) = @_;
       #    return $MathJax_sent_header[$level];
       #}
   }
   
   
 sub jsMath_converted {  sub jsMath_converted {
     my $texstring=shift;      my $texstring=shift;
     my $tag='span';      my $tag='span';
Line 241  sub init_math_support { Line 282  sub init_math_support {
  ($inherit_jsmath && &jsMath_state(-2))) {   ($inherit_jsmath && &jsMath_state(-2))) {
  return &Apache::lontexconvert::jsMath_header();   return &Apache::lontexconvert::jsMath_header();
     }      }
       &Apache::lontexconvert::MathJax_push();
       if (lc(&tex_engine()) eq 'mathjax') { # ||
           #($inherit_jsmath && &jsMath_state(-2))) {
           return &Apache::lontexconvert::MathJax_header();
       }
     return;      return;
 }  }
   
 sub mimetex_valign {  sub mimetex_valign {
     my ($esc_texstring)=@_;      my ($esc_texstring)=@_;
     my $valign = 0;      my $valign = 0;
     my $lonhost = $Apache::lonnet::perlvar{'lonHostID'};  
     my $hostname = &Apache::lonnet::hostname($lonhost);  
     my $path = '/cgi-bin/mimetex.cgi?'.$esc_texstring;      my $path = '/cgi-bin/mimetex.cgi?'.$esc_texstring;
     my $socket;      my $socket;
     &Apache::lonxml::start_alarm();      &Apache::lonxml::start_alarm();
     my $socket = IO::Socket::INET->new(PeerAddr => $hostname,      $socket = IO::Socket::INET->new(PeerAddr => 'localhost',
                                         PeerPort => 'http(80)',                                      PeerPort => 'http(80)',
                                         Proto    => 'tcp');                                      Proto    => 'tcp');
     if ($socket) {      if ($socket) {
         my $headreq = "HEAD $path HTTP/1.0\r\n\r\n";          my $headreq = "HEAD $path HTTP/1.0\r\n\r\n";
         print $socket $headreq;          print $socket $headreq;
Line 303  sub converted { Line 347  sub converted {
  return &tth_converted($string);   return &tth_converted($string);
     } elsif ($mode =~ /jsmath/i) {      } elsif ($mode =~ /jsmath/i) {
  return &jsMath_converted($string);   return &jsMath_converted($string);
       } elsif ($mode =~ /mathjax/i) {
    return &MathJax_converted($string);
     } elsif ($mode =~ /mimetex/i) {      } elsif ($mode =~ /mimetex/i) {
  return &mimetex_converted($string);   return &mimetex_converted($string);
     } elsif ($mode =~ /raw/i) {      } elsif ($mode =~ /raw/i) {
Line 511  Header Line 557  Header
   
 =item jsMath_converted()  =item jsMath_converted()
   
   =item MathJax_converted()
    - Mimics the jsMath functionality
   
 =item tex_engine()  =item tex_engine()
   

Removed from v.1.106  
changed lines
  Added in v.1.109


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>