--- loncom/xml/lonxml.pm 2006/04/18 20:50:45 1.408 +++ loncom/xml/lonxml.pm 2006/07/03 10:34:30 1.414 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # XML Parser Module # -# $Id: lonxml.pm,v 1.408 2006/04/18 20:50:45 albertel Exp $ +# $Id: lonxml.pm,v 1.414 2006/07/03 10:34:30 foxr Exp $ # # Copyright Michigan State University Board of Trustees # @@ -40,7 +40,7 @@ package Apache::lonxml; use vars -qw(@pwd @outputstack $redirection $import @extlinks $metamode $evaluate %insertlist @namespace $errorcount $warningcount @htmlareafields); +qw(@pwd @outputstack $redirection $import @extlinks $metamode $evaluate %insertlist @namespace $errorcount $warningcount); use strict; use HTML::LCParser(); use HTML::TreeBuilder(); @@ -123,9 +123,6 @@ $evaluate = 1; # stores the list of active tag namespaces @namespace=(); -# has the dynamic menu been updated to know about this resource -$Apache::lonxml::registered=0; - # a pointer the the Apache request object $Apache::lonxml::request=''; @@ -162,28 +159,6 @@ sub disable_LaTeX_substitutions { $Apache::lonxml::substitute_LaTeX_symbols = 0; } -sub xmlbegin { - my ($style)=@_; - my $output=''; - @htmlareafields=(); - if ($env{'browser.mathml'}) { - $output='<?xml version="1.0"?>' - #.'<?xml-stylesheet type="text/css" href="/adm/MathML/mathml.css"?>'."\n" -# .'<!DOCTYPE html SYSTEM "/adm/MathML/mathml.dtd" ' - -# .'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" [<!ENTITY mathns "http://www.w3.org/1998/Math/MathML">] >' - .'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN" "http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg.dtd">' - .'<html xmlns:math="http://www.w3.org/1998/Math/MathML" ' - .'xmlns="http://www.w3.org/1999/xhtml">'; - } else { - $output='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html>'; - } - if ($style eq 'encode') { - $output=&HTML::Entities::encode($output,'<>&"'); - } - return $output; -} - sub xmlend { my ($target,$parser)=@_; my $mode='xml'; @@ -391,9 +366,10 @@ sub latex_special_symbols { return $string; } if ($where eq 'header') { - $string =~ s/(\\|_|\^)/ /g; + $string =~ s/\\/\$\\backslash\$/g; # \ -> $\backslash$ per LaTex line by line pg 10. + $string =~ s/_/\\_/g; # _ -> \_ + $string =~ s/\^/\\\^{}/g; # ^ -> \^{} $string =~ s/(\$|%|\{|\})/\\$1/g; - $string =~ s/_/ /g; $string=&Apache::lonprintout::character_chart($string); # any & or # leftover should be safe to just escape $string=~s/([^\\])\&/$1\\\&/g; @@ -625,8 +601,6 @@ sub callsub { sub setup_globals { my ($request,$target)=@_; $Apache::lonxml::request=$request; - $Apache::lonxml::registered = 0; - @Apache::lonxml::htmlareafields=(); $errorcount=0; $warningcount=0; $Apache::lonxml::default_homework_loaded=0; @@ -1315,8 +1289,7 @@ sub inserteditinfo { my $initialize=''; if ($filetype eq 'html') { my $addbuttons=&Apache::lonhtmlcommon::htmlareaaddbuttons(); - $initialize=&Apache::lonhtmlcommon::htmlareaheaders(). - &Apache::lonhtmlcommon::spellheader(); + $initialize=&Apache::lonhtmlcommon::spellheader(); if (!&Apache::lonhtmlcommon::htmlareablocked() && &Apache::lonhtmlcommon::htmlareabrowser()) { $initialize.=(<<FULLPAGE); @@ -1447,7 +1420,7 @@ sub handler { my $filecontents=&Apache::lonnet::getfile($file); if ($filecontents eq -1) { my $start_page=&Apache::loncommon::start_page('File Error'); - my $end_page=&Apache::loncommon::end_page('File Error'); + my $end_page=&Apache::loncommon::end_page(); my $fnf=&mt('File not found'); $result=(<<ENDNOTFOUND); $start_page @@ -1567,7 +1540,8 @@ sub error { #public or browsers $errormsg=&mt("An error occured while processing this resource. The author has been notified."); } - my $msg = join('<br />',@_); + my $host=$Apache::lonnet::perlvar{'lonHostID'}; + my $msg = join('<br />',(@_,"The occured on host <tt>$host</tt>")); #notify author &Apache::lonmsg::author_res_msg($env{'request.filename'},$msg); #notify course