--- loncom/homework/structuretags.pm 2016/04/02 04:30:39 1.546 +++ loncom/homework/structuretags.pm 2016/04/04 15:57:07 1.547 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # definition of tags that give a structure to a document # -# $Id: structuretags.pm,v 1.546 2016/04/02 04:30:39 raeburn Exp $ +# $Id: structuretags.pm,v 1.547 2016/04/04 15:57:07 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1926,8 +1926,36 @@ sub end_problem { # so document will be valid xhtml. # my $showdisc = 1; - if ($env{'course.'.$env{'request.course.id'}.'.type'} eq 'Placement') { + if (($env{'course.'.$env{'request.course.id'}.'.type'} eq 'Placement') && + (!$env{'request.role.adv'})) { +# For Placement Tests footer with "Post Discussion" and "Send Feedback" links is suppressed. $showdisc = 0; + my ($symb)= &Apache::lonnet::whichuser(); + if ($symb) { + my $navmap = Apache::lonnavmaps::navmap->new(); + if (ref($navmap)) { + my $hastries = &Apache::lonplacementtest::has_tries($symb,$navmap); +# For Placement Tests test status is displayed if this is the last resource in the course +# and there are no tries left; + unless ($hastries) { + if (&Apache::lonplacementtest::is_lastres($symb,$navmap)) { + my ($score,$incomplete) = + &Apache::lonplacementtest::check_completion(undef,undef,1); + if (!$incomplete) { + $result .= &Apache::lonplacementtest::showresult(1,1); + } elsif ($incomplete < 100) { + $result.= &Apache::lonplacementtest::showincomplete($incomplete,1); + } + } else { +# For Placement Tests score is displayed if test has just been completed + my ($score,$incomplete) = &Apache::lonplacementtest::check_completion(undef,undef,1); + if (!$incomplete) { + $result.= &Apache::lonplacementtest::showresult(1,1); + } + } + } + } + } } $result.= &Apache::loncommon::end_page({'discussion' => $showdisc, 'notbody' => 1});