--- loncom/homework/imageresponse.pm	2004/11/13 16:28:21	1.57
+++ loncom/homework/imageresponse.pm	2005/01/10 19:21:57	1.59
@@ -1,7 +1,8 @@
+
 # The LearningOnline Network with CAPA
 # image click response style
 #
-# $Id: imageresponse.pm,v 1.57 2004/11/13 16:28:21 albertel Exp $
+# $Id: imageresponse.pm,v 1.59 2005/01/10 19:21:57 albertel Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -119,7 +120,7 @@ sub prep_image {
     my ($x,$y)=split(/:/,$Apache::lonhomework::history{"resource.$part.$respid.submission"});
     #draws 2 xs on the image at the clicked location
     #one in white and then one in red on top of the one in white
-    if (defined($x) && $x=~/\S/ && defined($y) && $y =~/\S/) {
+    if (defined($x) && $x=~/\S/ && defined($y) && $y =~/\S/ && !&Apache::response::show_answer()) {
 	my $length = 6;
 	my $width = 1;
 	my $extrawidth = 2;
@@ -130,19 +131,19 @@ sub prep_image {
 
 	$x{"cgi.$id.OBJTYPE"}.='LINE:';
 	$i=$x{"cgi.$id.OBJCOUNT"}++;
-	$x{"cgi.$id.OBJ$i"}=join(':',(($x),($ymin),($x),($ymax),
+	$x{"cgi.$id.OBJ$i"}=join(':',(($xmin),($ymin),($xmax),($ymax),
 				      "FFFFFF",($width+$extrawidth)));
 	$x{"cgi.$id.OBJTYPE"}.='LINE:';
 	$i=$x{"cgi.$id.OBJCOUNT"}++;
-	$x{"cgi.$id.OBJ$i"}=join(':',(($xmin),($y),($xmax),($y),
+	$x{"cgi.$id.OBJ$i"}=join(':',(($xmin),($ymax),($xmax),($ymin),
 				      "FFFFFF",($width+$extrawidth)));
 	$x{"cgi.$id.OBJTYPE"}.='LINE:';
 	$i=$x{"cgi.$id.OBJCOUNT"}++;
-	$x{"cgi.$id.OBJ$i"}=join(':',(($x),($ymin),($x),($ymax),
+	$x{"cgi.$id.OBJ$i"}=join(':',(($xmin),($ymin),($xmax),($ymax),
 				      "FF0000",($width)));
 	$x{"cgi.$id.OBJTYPE"}.='LINE:';
 	$i=$x{"cgi.$id.OBJCOUNT"}++;
-	$x{"cgi.$id.OBJ$i"}=join(':',(($xmin),($y),($xmax),($y),
+	$x{"cgi.$id.OBJ$i"}=join(':',(($xmin),($ymax),($xmax),($ymin),
 				      "FF0000",($width)));
     }
     if ($mode eq 'answer') {
@@ -339,7 +340,10 @@ sub start_foil {
     if ($target eq 'web' || $target eq 'grade' || $target eq 'tex' ||
 	$target eq 'analyze') {
 	my $name = &Apache::lonxml::get_param('name',$parstack,$safeeval);
-	if ($name eq '') { $name=$Apache::lonxml::curdepth; }
+	if (!$name) {
+	    &Apache::lonxml::error("Foils without names exist. This can cause problems to malfunction.");
+	    $name=$Apache::lonxml::curdepth;
+	}
 	if (defined($Apache::response::foilnames{$name})) {
 	    &Apache::lonxml::error(&mt("Foil name <b><tt>[_1]</tt></b> appears more than once. Foil names need to be unique.",$name));
 	}