--- loncom/homework/structuretags.pm 2008/06/11 13:52:35 1.423
+++ loncom/homework/structuretags.pm 2010/02/10 21:06:07 1.444.4.6
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# definition of tags that give a structure to a document
#
-# $Id: structuretags.pm,v 1.423 2008/06/11 13:52:35 www Exp $
+# $Id: structuretags.pm,v 1.444.4.6 2010/02/10 21:06:07 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -27,6 +27,29 @@
#
###
+=pod
+
+=head1 NAME
+
+Apache::structuretags
+
+=head1 SYNOPSIS
+
+
+This is part of the LearningOnline Network with CAPA project
+described at http://www.lon-capa.org.
+
+
+=head1 NOTABLE SUBROUTINES
+
+=over
+
+=item
+
+=back
+
+=cut
+
package Apache::structuretags;
@@ -36,6 +59,7 @@ use Apache::File();
use Apache::lonmenu;
use Apache::lonlocal;
use Apache::lonxml;
+use Apache::londefdef;
use Apache::lonenc();
use Time::HiRes qw( gettimeofday tv_interval );
use lib '/home/httpd/lib/perl/';
@@ -74,7 +98,14 @@ sub start_tex {
if ($target ne 'edit' && $target ne 'modified') {
my $bodytext=&Apache::lonxml::get_all_text("/tex",$parser,$style);
if ($target eq 'tex') {
- return $bodytext.' ';
+
+ # If inside a table, occurrences of \\ must be removed;
+ # else the table blows up.
+
+ if (&Apache::londefdef::is_inside_of($tagstack, "table")) {
+ $bodytext =~ s/\\\\//g;
+ }
+ return $bodytext.'{}';
}
} elsif ($target eq "edit" ) {
my $bodytext =
@@ -148,6 +179,12 @@ sub page_start {
$extra_head .= &homework_js();
+ if ($env{'environment.wysiwygeditor'} eq 'on') {
+ $extra_head .= &Apache::lonhtmlcommon::dragmath_js("FCKEditMathPopup");
+ } else {
+ $extra_head .= &Apache::lonhtmlcommon::dragmath_js("EditMathPopup");
+ }
+
my %body_args;
if (defined($found{'html'})) {
$body_args{'skip_phases'}{'head'}=1;
@@ -206,10 +243,10 @@ sub page_start {
my ($symb,undef,undef,undef,$publicuser)= &Apache::lonnet::whichuser();
if ($symb eq '' && !$publicuser) {
- my $help = &Apache::loncommon::help_open_topic("Ambiguous_Reference");
- $help=&mt("Browsing resource, all submissions are temporary.")."
";
- $page_start .= $help;
- }
+ $page_start .= '
' + .&mt('Browsing resource, all submissions are temporary.') + .'
'; + } } if (!defined($found{'body'}) && $env{'request.state'} ne 'construct') { @@ -219,7 +256,9 @@ sub page_start { my $form_tag_start; if (!defined($found{'form'})) { $form_tag_start='