[LON-CAPA-cvs] cvs: loncom /homework inputtags.pm

albertel lon-capa-cvs@mail.lon-capa.org
Thu, 19 Jun 2003 21:41:02 -0000


albertel		Thu Jun 19 17:41:02 2003 EDT

  Modified files:              
    /loncom/homework	inputtags.pm 
  Log:
  - better colors in the messages to the students (BUG#273)
  
  
Index: loncom/homework/inputtags.pm
diff -u loncom/homework/inputtags.pm:1.104 loncom/homework/inputtags.pm:1.105
--- loncom/homework/inputtags.pm:1.104	Fri Jun  6 23:57:28 2003
+++ loncom/homework/inputtags.pm	Thu Jun 19 17:41:02 2003
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # input  definitons
 #
-# $Id: inputtags.pm,v 1.104 2003/06/07 03:57:28 albertel Exp $
+# $Id: inputtags.pm,v 1.105 2003/06/19 21:41:02 albertel Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -324,7 +324,13 @@
   my $message='';
   my $button=0;
   my $previousmsg;
-
+  my $bgcolor='orange';
+  my %possiblecolors =
+      ( 'correct' => '#aaffaa',
+	'charged_try' => '#ffaaaa',
+	'not_charged_try' => '#ffffaa',
+	'no_message' => '#fffff',
+      );
   if ($previous) { $previousmsg='You have entered that answer before'; }
 
   if      ($solved =~ /^correct/) {
@@ -338,72 +344,92 @@
 	  }
 	  $message.=' Your receipt is '.&Apache::lonnet::receipt;
       }
+      $bgcolor=$possiblecolors{'correct'};
       $button=0;
       $previousmsg='';
   } elsif ($solved =~ /^excused/) {
       $message = "<b>You are excused from the problem.</b>";
+      $bgcolor=$possiblecolors{'charged_try'};
       $button=0;
       $previousmsg='';
   } elsif ($award eq 'EXACT_ANS' || $award eq 'APPROX_ANS' ) {
       if ($solved =~ /^incorrect/ || $solved eq '') {
 	  $message = "Incorrect";
+	  $bgcolor=$possiblecolors{'charged_try'};
 	  $button=1;
       } else {
 	  $message = "<b>You are correct.</b> Your receipt is ".
 	   &Apache::lonnet::receipt;
+	  $bgcolor=$possiblecolors{'correct'};
 	  $button=0;
 	  $previousmsg='';
       }
   } elsif ($award eq 'NO_RESPONSE') {
       $message = '';
+      $bgcolor=$possiblecolors{'no_feedback'};
       $button=1;
   } elsif ($award eq 'MISSING_ANSWER') {
       $message = 'Some parts were not submitted';
+      $bgcolor=$possiblecolors{'not_charged_try'};
       $button = 1;
   } elsif ($award eq 'ERROR') {
       $message = 'An error occured while trying to grade answer.';
+      $bgcolor=$possiblecolors{'not_charged_try'};
       $button = 1;
   } elsif ($award eq 'TOO_LONG') {
       $message = "The submitted answer was too long.";
+      $bgcolor=$possiblecolors{'not_charged_try'};
       $button=1;
   } elsif ($award eq 'WANTED_NUMERIC') {
       $message = "This question expects a numeric answer";
+      $bgcolor=$possiblecolors{'not_charged_try'};
       $button=1;
   } elsif ($award eq 'MISORDERED_RANK') {
       $message = 'You have provided an invalid ranking, please refer to '.
-       &Apache::loncommon::help_open_topic('Ranking_Problems','help on ranking problems').'.';
+	  &Apache::loncommon::help_open_topic('Ranking_Problems','help on ranking problems').'.';
+      $bgcolor=$possiblecolors{'not_charged_try'};
       $button=1;
   } elsif ($award eq 'INVALID_FILETYPE') {
       $message = 'The filetype extension of the file you uploaded is not allowed.';
+      $bgcolor=$possiblecolors{'not_charged_try'};
       $button=1;
   } elsif ($award eq 'SIG_FAIL') {
       $message = "Please adjust significant figures.";# you provided %s significant figures";
+      $bgcolor=$possiblecolors{'not_charged_try'};
       $button=1;
   } elsif ($award eq 'UNIT_FAIL') {
       $message = "Units incorrect. ".
        &Apache::loncommon::help_open_topic('Physical_Units'); #Computer reads units as %s";
+      $bgcolor=$possiblecolors{'not_charged_try'};
       $button=1;
   } elsif ($award eq 'UNIT_NOTNEEDED') {
       $message = "Only a number required.";# Computer reads units of %s";
+      $bgcolor=$possiblecolors{'not_charged_try'};
       $button=1;
   } elsif ($award eq 'NO_UNIT') {
       $message = "Units required".
-       &Apache::loncommon::help_open_topic('Physical_Units');
+	  &Apache::loncommon::help_open_topic('Physical_Units');
+      $bgcolor=$possiblecolors{'not_charged_try'};
       $button=1;
   } elsif ($award eq 'BAD_FORMULA') {
       $message = "Unable to understand formula";
+      $bgcolor=$possiblecolors{'not_charged_try'};
       $button=1;
   } elsif ($award eq 'INCORRECT') {
       $message = "Incorrect";
+      $bgcolor=$possiblecolors{'charged_try'};
       $button=1;
   } elsif ($award eq 'SUBMITTED') {
       $message = "Your submission has been recorded.";
+      $bgcolor=$possiblecolors{'correct'};
       $button=1;
   } elsif ($award eq 'DRAFT') {
       $message = "A draft copy has been saved.";
+      $bgcolor=$possiblecolors{'not_charged_try'};
       $button=1;
   } elsif ($award eq 'ASSIGNED_SCORE') {
       $message = "A score has been assigned.";
+      $bgcolor=$possiblecolors{'correct'};
       $button=0;
   } else {
       $message = "Unknown message: $award";
@@ -411,9 +437,10 @@
   }
   if (lc($Apache::lonhomework::problemstatus) eq 'no') {
       $message = "Answer Submitted";
+      $bgcolor=$possiblecolors{'correct'};
       $button=1;
   }
-  return ($button,$message,$previousmsg);
+  return ($button,$bgcolor,$message,$previousmsg);
 }
 
 sub removealldata {
@@ -560,6 +587,7 @@
 sub gradestatus {
   my ($id,$target) = @_;
   my $showbutton = 1;
+  my $bgcolor = '';
   my $message = '';
   my $latemessage = '';
   my $trystr='';
@@ -575,14 +603,14 @@
     &Apache::lonxml::debug("Found Award |$award|$solved|");
     if ( $award ne '' ) {
       &Apache::lonxml::debug('Getting message');
-      ($showbutton,$message,$previousmsg) =
+      ($showbutton,$bgcolor,$message,$previousmsg) =
 	&decideoutput($award,$solved,$previous,$target);
       if ($target eq 'tex') {
 	$message=' '.$message.' ';
       } else {
-	$message="<td bgcolor=\"#aaffaa\">$message</td>";
+	$message="<td bgcolor=\"$bgcolor\">$message</td>";
 	if ($previousmsg) {
-	  $previousmsg="<td bgcolor=\"#ffaaaa\">$previousmsg</td>";
+	  $previousmsg="<td bgcolor=\"#aaaaff\">$previousmsg</td>";
 	}
       }
     }