--- loncom/homework/rankresponse.pm	2003/03/17 20:08:21	1.3
+++ loncom/homework/rankresponse.pm	2003/03/20 17:59:19	1.7
@@ -1,8 +1,7 @@
 # The LearningOnline Network with CAPA
 # rank style response
 #
-# $Id: rankresponse.pm,v 1.3 2003/03/17 20:08:21 sakharuk Exp $
-#
+# $Id: rankresponse.pm,v 1.7 2003/03/20 17:59:19 sakharuk Exp $
 # Copyright Michigan State University Board of Trustees
 #
 # This file is part of the LearningOnline Network with CAPA (LON-CAPA).
@@ -30,6 +29,7 @@
 package Apache::rankresponse;
 use strict;
 use HTML::Entities();
+use Apache::optionresponse;
 
 BEGIN {
     &Apache::lonxml::register('Apache::rankresponse',('rankresponse'));
@@ -231,6 +231,7 @@ sub grade_response {
 sub displayfoils {
     my ($target,$max,$randomize,$tol)=@_;
     my $result;
+    my @alphabet=('A'..'Z');
     my (@whichfoils)=&whichfoils($max,$randomize);
     my $part=$Apache::inputtags::part;
     my $solved=$Apache::lonhomework::history{"resource.$part.solved"};
@@ -249,8 +250,8 @@ sub displayfoils {
 	my $id=$Apache::inputtags::response[-1];
 	my $part=$Apache::inputtags::part;
 	my $lastresponse=$Apache::lonhomework::history{"resource.$part.$id.submission"};
-	my %lastresponse=&Apache::lonnet::str2hash($lastresponse);
-	my $localcount = 1;
+	my %lastresponse=&Apache::lonnet::str2hash($lastresponse); 
+	my @alp = splice @alphabet, 0, $#whichopt + 1;
 	foreach my $name (@whichfoils) {
 	    my $lastopt=$lastresponse{$name};
 	    my $optionlist='';
@@ -273,11 +274,21 @@ sub displayfoils {
 	    my $text=$Apache::response::foilgroup{$name.'.text'};
 	    if ($target ne 'tex') {
 		$result.='<br />'.$optionlist.$text."\n";
-	    } else {$result.=' \\\\ '.$localcount.'. '.$text."\n"; $localcount++;}
+		if ($Apache::lonhomework::type eq 'exam') {
+		    $result.=&Apache::optionresponse::webbubbles(\@alp,\@whichopt);
+		}
+	    } else {
+		if ($Apache::lonhomework::type eq 'exam') {
+		    $result.='\begin{enumerate}\item[\textbf{'.$Apache::lonxml::counter.'}.]\vskip 0 mm '.$text."\n";
+		    $result.=&Apache::optionresponse::bubbles(\@alp,\@whichopt).'\end{enumerate} \vskip -7 mm \strut ';
+		} else {
+		    $result.=' \\\\ \framebox[5 mm][s]{\tiny\strut} '.$text."\n";
+		}
+	    }
 	    $temp++;
 	}
     }
-    if ($target ne 'tex') {$result.="<br />";} else {$result.=' \\\\ ';}
+    if ($target ne 'tex') {$result.="<br />";} else {$result.=' \vskip 0 mm ';}
     return $result;
 }