--- loncom/homework/rankresponse.pm 2005/06/20 21:31:07 1.46 +++ loncom/homework/rankresponse.pm 2005/12/06 10:13:46 1.49 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # rank style response # -# $Id: rankresponse.pm,v 1.46 2005/06/20 21:31:07 albertel Exp $ +# $Id: rankresponse.pm,v 1.49 2005/12/06 10:13:46 albertel Exp $ # Copyright Michigan State University Board of Trustees # # This file is part of the LearningOnline Network with CAPA (LON-CAPA). @@ -166,12 +166,25 @@ sub displayanswers { if (!defined(@{ $Apache::response::foilgroup{'names'} })) { return; } my @names = @{ $Apache::response::foilgroup{'names'} }; my @whichfoils = &whichfoils($max,$randomize); - my $result=&Apache::response::answer_header('rankresponse'); my @correctorder=&get_correct_order($tol,@whichfoils); - foreach my $order (@correctorder) { - $result.=&Apache::response::answer_part('rankresponse',$order); + my $result; + if ($Apache::lonhomework::type eq 'exam') { + my @alphabet = ('A'..'Z'); + my $i=0; + foreach my $order (@correctorder) { + $result.=&Apache::response::answer_header('rankresponse',$i++); + $result.=&Apache::response::answer_part('rankresponse', + $alphabet[$order-1]); + $result.=&Apache::response::answer_part('rankresponse',$order); + $result.=&Apache::response::answer_footer('rankresponse'); + } + } else { + $result=&Apache::response::answer_header('rankresponse'); + foreach my $order (@correctorder) { + $result.=&Apache::response::answer_part('rankresponse',$order); + } + $result.=&Apache::response::answer_footer('rankresponse'); } - $result.=&Apache::response::answer_footer('rankresponse'); return $result; } @@ -428,8 +441,8 @@ sub end_foil { if ($value ne 'unused') { my $name = &Apache::lonxml::get_param('name',$parstack,$safeeval); &Apache::lonxml::debug("Got a name of :$name:"); - if (!$name) { - &Apache::lonxml::error("Foils without names exist. This can cause problems to malfunction."); + if ($name eq "") { + &Apache::lonxml::warning("Foils without names exist. This can cause problems to malfunction."); $name=$Apache::lonxml::curdepth; } &Apache::lonxml::debug("Using a name of :$name:");