--- loncom/homework/structuretags.pm 2012/04/11 11:40:00 1.504 +++ loncom/homework/structuretags.pm 2013/01/03 21:04:44 1.510 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # definition of tags that give a structure to a document # -# $Id: structuretags.pm,v 1.504 2012/04/11 11:40:00 goltermann Exp $ +# $Id: structuretags.pm,v 1.510 2013/01/03 21:04:44 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -453,7 +453,6 @@ sub page_start { } $form_tag_start.='>'."\n"; - my $symb=&Apache::lonnet::symbread(); if ($symb =~ /\S/) { $symb= &HTML::Entities::encode(&Apache::lonenc::check_encrypt($symb)); @@ -711,7 +710,7 @@ sub problem_web_to_edit_header { ".&mt("Problem Type:")." '; # create a page header and exit @@ -1490,7 +1511,13 @@ sub end_problem { $result.=""; } if ($target eq 'web') { - $result.= &Apache::loncommon::end_page({'discussion' => 1}); + # + # Closing not added by end_page(). + # Added separately at end of this routine, after added + # so document will be valid xhtml. + # + $result.= &Apache::loncommon::end_page({'discussion' => 1, + 'notbody' => 1}); } elsif ($target eq 'tex') { my $endminipage = ''; if (not $env{'form.problem_split'}=~/yes/) { @@ -1548,6 +1575,11 @@ sub end_problem { # if ($target eq 'web') { $result .= &Apache::lonhtmlcommon::set_compute_end_time(); + # + # Closing tags delayed so any tags + # not in head can appear inside body, for valid xhtml. + # + $result .= "\n"; } return $result; }