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

albertel lon-capa-cvs@mail.lon-capa.org
Mon, 10 Mar 2003 20:03:55 -0000


albertel		Mon Mar 10 15:03:55 2003 EDT

  Modified files:              
    /loncom/homework	lonhomework.pm 
  Log:
  - Fixes BUG#1272
  - Adds progress window to analyze
  - Removes forced on debug messages
  
  
Index: loncom/homework/lonhomework.pm
diff -u loncom/homework/lonhomework.pm:1.113 loncom/homework/lonhomework.pm:1.114
--- loncom/homework/lonhomework.pm:1.113	Fri Mar  7 18:43:21 2003
+++ loncom/homework/lonhomework.pm	Mon Mar 10 15:03:55 2003
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # The LON-CAPA Homework handler
 #
-# $Id: lonhomework.pm,v 1.113 2003/03/07 23:43:21 albertel Exp $
+# $Id: lonhomework.pm,v 1.114 2003/03/10 20:03:55 albertel Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -370,17 +370,23 @@
     my %allparts;
     my $rndseed=$ENV{'form.rndseed'};
     &analyze_header($request);
+    my %prog_state=
+	&Apache::lonhtmlcommon::Create_PrgWin($request,'Analyze Progress',
+					      'Getting Problem Variants',
+					      $ENV{'form.numtoanalyze'});
     for(my $i=1;$i<$ENV{'form.numtoanalyze'}+1;$i++) {
+	&Apache::lonhtmlcommon::Increment_PrgWin($request,\%prog_state,
+						 'last problem');
 	my $subresult=&Apache::lonnet::ssi($request->uri,
 					   ('grade_target' => 'analyze'),
 					   ('rndseed' => $i));
 	&Apache::lonxml::debug(":$subresult:");
 	(my $garbage,$subresult)=split(/_HASH_REF__/,$subresult,2);
 	my %analyze=&Apache::lonnet::str2hash($subresult);
-	$Apache::lonxml::debug=1;
-	&Apache::lonhomework::showhash(%analyze);
-	$Apache::lonxml::debug=0;
-	my @parts = @{ $analyze{'parts'} };
+	my @parts;
+	if (defined(@{ $analyze{'parts'} })) {
+	    @parts=@{ $analyze{'parts'} };
+	}
 	foreach my $part (@parts) {
 	    if (!exists($allparts{$part})) {$allparts{$part}=1;};
 	    if ($analyze{$part.'.type'} eq 'numericalresponse'	||
@@ -391,6 +397,8 @@
 	    }
 	}
     }
+    &Apache::lonhtmlcommon::Update_PrgWin($request,\%prog_state,
+					  'Analyzing Results');
     foreach my $part (keys(%allparts)) {
 	if (defined(@{ $overall{$part.'.answer'} })) {
 	    $request->print('<table><tr><td>Part '.$part.'</td></tr>');
@@ -404,6 +412,7 @@
 			    ' is not analyzabale at this time</p>');
 	}
     }
+    &Apache::lonhtmlcommon::Close_PrgWin($request,\%prog_state);
     &analyze_footer($request);
     &Apache::lonhomework::showhash(%overall);
     return $result;