Diff for /loncom/xml/lontex.pm between versions 1.4 and 1.16

version 1.4, 2003/02/14 19:35:55 version 1.16, 2025/02/20 03:46:11
Line 45  use strict; Line 45  use strict;
 use Apache::File;  use Apache::File;
 use Apache::lontexconvert;  use Apache::lontexconvert;
 use Apache::Constants qw(:common);  use Apache::Constants qw(:common);
   use Apache::lonnet;
   use Apache::loncommon;
   use Apache::lonmsg;
   use Apache::lonlocal;
 use tth;  use tth;
   
 # ================================================================ Main Handler  # ================================================================ Main Handler
   
   sub footer {
       my $xmlstring='';
       if ($env{'request.state'} eq 'construct') {
    $xmlstring.='<address>'.
       $Apache::lontexconvert::errorstring.'</address>';
       } else {
    &Apache::lonmsg::author_res_msg($env{'request.filename'},
    $Apache::lonxml::errorstring);
       }
   # -------------------------------------------------------------------- End Body
       $xmlstring.=&Apache::loncommon::end_page({'discussion' => 1});
       return $xmlstring;
   }
   
 sub handler {  sub handler {
   my $r=shift;    my ($r)= @_;
   my @texcontents;    my @texcontents;
   my $texstring;    my $texstring;
   
 # ----------------------------------------------------------- Set document type  # ----------------------------------------------------------- Set document type
   
   if ($ENV{'browser.mathml'}) {    if ($env{'browser.mathml'}) {
     $r->content_type('text/xml');        &Apache::loncommon::content_type($r,'text/xml');
   } else {    } else {
     $r->content_type('text/html');        &Apache::loncommon::content_type($r,'text/html');
   }    }
   $r->send_http_header;    $r->send_http_header;
   
Line 68  sub handler { Line 86  sub handler {
 # ------------------------------------------------------------------- Read file  # ------------------------------------------------------------------- Read file
   
   {    {
     my $fh=Apache::File->new($r->filename);        if (-e $r->filename) {
     @texcontents=<$fh>;            my $fh=Apache::File->new($r->filename);
             @texcontents=<$fh>;
             close($fh);
         } else {
               my $filename=(split('/',$r->filename))[-1];
               my $error = &mt('Unable to find [_1]',
                               '<span class="LC_filename">'.$filename.'</span>');
               &Apache::loncommon::simple_error_page($r,'Not available',
                                                     $error,{'no_auto_mt_msg' => 1});
               return OK;
         }
   }    }
   
   $texstring=join("\n",@texcontents);    $texstring=join("\n",@texcontents);
   
 # --------------------------------------------------------------- Render Output  # --------------------------------------------------------------- Render Output
       
   $r->print(&Apache::lontexconvert::header());    &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},
   $r->print(    ['texengine','inhibitmenu']);
     '<body bgcolor="#FFFFFF" onLoad="'.  
       &Apache::lonmenu::loadevents().  
     '" onUnload="'.    $r->print(&Apache::loncommon::start_page(undef,undef,
       &Apache::lonmenu::unloadevents().     {'bgcolor'        => '#FFFFFF',
     '">'.      'force_register' => 1,
       &Apache::lonmenu::menubuttons(undef,'web')      'only_body'      =>
   );   ($env{'form.inhibitmenu'} 
   $r->print(&Apache::lontexconvert::converted(\$texstring));   eq 'yes'), }));
   $r->print('</body>');  
   $r->print(&Apache::lontexconvert::footer());    my $displaymode;
     if (&Apache::lonnet::EXT('resource.0.texdisplay') =~ /^(tth|mathjax)$/i) {
         $displaymode = $1;
     }
     if ($env{'form.texengine'} =~ /^(tth|mathjax)$/i) {
         $displaymode = $1;
     }
     $r->print(&Apache::lontexconvert::converted(\$texstring,
         $displaymode));
     $r->print(&footer());
   
   return OK;    return OK;
 }  }
Line 95  sub handler { Line 132  sub handler {
 1;  1;
 __END__  __END__
   
   =pod
   
   =head1 NAME
   
   Apache::lontex.pm
   
   =head1 SYNOPSIS
   
   Handler for tex files (somewhere in modules)
   
   This is part of the LearningOnline Network with CAPA project
   described at http://www.lon-capa.org.
   
   
   =head1 SUBROUTINES
   
   =over
   
   =item footer()
   
   Main Handler
   
   =back
   
   =cut
   
   
   
   

Removed from v.1.4  
changed lines
  Added in v.1.16


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