--- loncom/xml/lonxml.pm 2003/02/13 21:14:35 1.232 +++ loncom/xml/lonxml.pm 2003/02/17 20:10:08 1.235 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # XML Parser Module # -# $Id: lonxml.pm,v 1.232 2003/02/13 21:14:35 albertel Exp $ +# $Id: lonxml.pm,v 1.235 2003/02/17 20:10:08 sakharuk Exp $ # # Copyright Michigan State University Board of Trustees # @@ -376,221 +376,6 @@ sub fontsettings() { return $headerstring; } - -## -## switchmenu - modeled on lonmenu::switchmenu, but better. -## Helper function for registerurl -## -sub switchmenu { - my ($row,$col,$imgsrc,$texttop,$textbot,$action,$description)=@_; - return(<\n". - "if (typeof menu != 'undefined') {menu.currentURL=null;}\n". - &Apache::loncommon::browser_and_searcher_javascript(). - "\n\n"; - } - if ((($ENV{'request.publicaccess'}) || - (!&Apache::lonnet::is_on_map($ENV{'REQUEST_URI'}))) && - (!$forcereg)) { - return $result. - ''; - } - if ($Apache::lonxml::registered && !$forcereg) { return ''; } - $Apache::lonxml::registered=1; - my $reopen=&Apache::lonmenu::reopenmenu(); - my $newmail=''; - if (&Apache::lonmsg::newmail()) { - $newmail='menu.setstatus("you have","messages");'; - } - my $timesync='menu.syncclock(1000*'.time.');'; - if (($ENV{'REQUEST_URI'}!~/^\/(res\/)*adm\//) || ($forcereg)) { - my $hwkadd=''; - if ($ENV{'request.filename'}=~/\.(problem|exam|quiz|assess|survey|form)$/) { - if (&Apache::lonnet::allowed('vgr',$ENV{'request.course.id'})) { - $hwkadd.=(< -// BEGIN LON-CAPA Internal - - function LONCAPAreg() { - menu=$reopen; - menu.clearTimeout(menu.menucltim); - $timesync - $newmail - menu.currentURL=window.location.pathname; - menu.reloadURL=window.location.pathname; - menu.currentSymb="$ENV{'request.symb'}"; - menu.reloadSymb="$ENV{'request.symb'}"; - menu.currentStale=0; - menu.clearbut(3,1); - menu.switchbutton - (6,3,'catalog.gif','catalog','info','catalog_info()','Show catalog information'); - menu.switchbutton - (8,1,'eval.gif','evaluate','this','gopost("/adm/evaluate",currentURL)','Provide my evaluation of this resource'); - menu.switchbutton - (8,2,'fdbk.gif','feedback','discuss','gopost("/adm/feedback",currentURL)','Provide feedback messages or contribute to the course discussion about this resource'); - menu.switchbutton - (8,3,'prt.gif','prepare','printout','gopost("/adm/printout",currentURL)','Prepare a printable document'); - menu.switchbutton - (2,1,'back.gif','backward','','gopost("/adm/flip","back:"+currentURL)','Go to the previous resource in the course sequence'); - menu.switchbutton - (2,3,'forw.gif','forward','','gopost("/adm/flip","forward:"+currentURL)','Go to the next resource in the course sequence'); - menu.switchbutton - (9,1,'sbkm.gif','set','bookmark','set_bookmark()','Set a bookmark for this resource'); - menu.switchbutton - (9,2,'vbkm.gif','view','bookmark','edit_bookmarks()','Use or edit my bookmark collection'); - menu.switchbutton - (9,3,'anot.gif','anno-','tations','annotate()','Make notes and annotations about this resource'); - $hwkadd - $editbutton - } - - function LONCAPAstale() { - menu=$reopen - menu.currentStale=1; - if (menu.reloadURL!='' && menu.reloadURL!= null) { - menu.switchbutton - (3,1,'reload.gif','return','location','go(reloadURL)','Return to the last known location in the course sequence'); - } - menu.clearbut(7,1); - menu.clearbut(7,2); - menu.clearbut(7,3); - menu.menucltim=menu.setTimeout( - 'clearbut(2,1);clearbut(2,3);clearbut(8,1);clearbut(8,2);clearbut(8,3);'+ - 'clearbut(9,1);clearbut(9,2);clearbut(9,3);clearbut(6,3);clearbut(6,1)', - 2000); - - } - -// END LON-CAPA Internal - -ENDREGTHIS - - } else { - $result = (< -// BEGIN LON-CAPA Internal - - function LONCAPAreg() { - menu=$reopen - $timesync - menu.currentStale=1; - menu.clearbut(2,1); - menu.clearbut(2,3); - menu.clearbut(8,1); - menu.clearbut(8,2); - menu.clearbut(8,3); - if (menu.currentURL) { - menu.switchbutton - (3,1,'reload.gif','return','location','go(currentURL)'); - } else { - menu.clearbut(3,1); - } - } - - function LONCAPAstale() { - } - -// END LON-CAPA Internal - -ENDDONOTREGTHIS - } - return $result; -} - -sub loadevents() { - return 'LONCAPAreg();'; -} - -sub unloadevents() { - return 'LONCAPAstale();'; -} - sub printalltags { my $temp; foreach $temp (sort keys %Apache::lonxml::alltags) { @@ -672,10 +457,16 @@ sub htmlclean { sub latex_special_symbols { my ($current_token,$stack,$parstack,$where)=@_; - if ($where=='header') { + if ($where eq 'header') { + $current_token =~ s/\\/ /g; + $current_token =~ s/\{/\\\{/g; + $current_token =~ s/\}/\\\}/g; $current_token =~ s/_/ /g; $current_token =~ s/\^/ /g; $current_token =~ s/&/\\&/g; + $current_token =~ s/\#/\\\#/g; + $current_token =~ s/%/\\%/g; + $current_token =~ s/\$/\\\$/g; } else { $current_token=~s/\\ /\\char92 /g; $current_token=~s/\^/\\char94 /g;