--- loncom/homework/structuretags.pm 2002/09/05 03:30:27 1.112 +++ loncom/homework/structuretags.pm 2002/09/16 20:40:38 1.114 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # definition of tags that give a structure to a document # -# $Id: structuretags.pm,v 1.112 2002/09/05 03:30:27 albertel Exp $ +# $Id: structuretags.pm,v 1.114 2002/09/16 20:40:38 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -481,7 +481,8 @@ sub end_library { my $result=''; if ($target eq 'edit') { $result=&problem_edit_footer(); - } elsif ($target eq 'web' && $ENV{'request.state'} eq "construct") { + } elsif ($target eq 'web' && $$tagstack[0] ne 'problem' && + $ENV{'request.state'} eq "construct") { $result.=''.&Apache::lonxml::xmlend(); } return $result; @@ -490,7 +491,7 @@ sub end_library { sub start_block { my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_; - if ($target eq 'web' || $target eq 'grade' || $target eq 'answer') { + if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' || $target eq 'tex') { my $code = @$parstack[$#$parstack]; $code =~ s/\"//g; $code .=';return $condition;'; @@ -668,7 +669,7 @@ sub end_part { sub start_preduedate { my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_; - if ($target eq 'web' || $target eq 'grade' || $target eq 'answer') { + if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' || $target eq 'tex') { if ($Apache::inputtags::status['-1'] ne 'CAN_ANSWER' && $Apache::inputtags::status['-1'] ne 'CANNOT_ANSWER' ) { &Apache::lonxml::get_all_text("/preduedate",$$parser[$#$parser]); @@ -683,7 +684,7 @@ sub end_preduedate { sub start_postanswerdate { my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_; - if ($target eq 'web' || $target eq 'grade') { + if ($target eq 'web' || $target eq 'grade' || $target eq 'tex') { if ($Apache::inputtags::status['-1'] ne 'SHOW_ANSWER') { &Apache::lonxml::get_all_text("/postanswerdate",$$parser[$#$parser]); } @@ -699,7 +700,7 @@ sub end_postanswerdate { sub start_notsolved { my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_; - if ($target eq 'web' || $target eq 'grade' || $target eq 'answer') { + if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' || $target eq 'tex') { my $gradestatus=$Apache::lonhomework::history{"resource.$Apache::inputtags::part.solved"}; &Apache::lonxml::debug("not solved has :$gradestatus:"); if ($gradestatus =~ /^correct/) { @@ -716,7 +717,7 @@ sub end_notsolved { sub start_solved { my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_; - if ($target eq 'web' || $target eq 'grade' || $target eq 'answer') { + if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' || $target eq 'tex') { my $gradestatus=$Apache::lonhomework::history{"resource.$Apache::inputtags::part.solved"}; if ($gradestatus !~ /^correct/) { &Apache::lonxml::get_all_text("/solved",$$parser[$#$parser]);