--- loncom/homework/grades.pm	2005/04/07 22:44:03	1.259
+++ loncom/homework/grades.pm	2005/04/08 20:12:58	1.262
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # The LON-CAPA Grading handler
 #
-# $Id: grades.pm,v 1.259 2005/04/07 22:44:03 banghart Exp $
+# $Id: grades.pm,v 1.262 2005/04/08 20:12:58 banghart Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -2109,7 +2109,7 @@ sub processHandGrade {
 #---- Save the score and award for each student, if changed
 sub saveHandGrade {
     my ($request,$url,$symb,$stuname,$domain,$newflg,$submitter,$part) = @_;
-    my $v_flag=0;
+    my @v_flag;
     my $usec = &Apache::lonnet::getsection($domain,$stuname,
 					   $env{'request.course.id'});
     if (!&canmodify($usec)) { return('not_allowed'); }
@@ -2174,18 +2174,15 @@ sub saveHandGrade {
 	}
 	# unless problem has been graded, set flag to version the submitted files
 	unless ($record{'resource.'.$new_part.'.solved'} =~ /^correct_/  || $record{'resource.'.$new_part.'.solved'} eq 'incorrect_by_override') {
-	    $v_flag = 1;
-	    &Apache::lonnet::logthis("v_flag is $v_flag");
-	    &Apache::lonnet::logthis('the record info is '.$record{'resource.'.$new_part.'.solved'});
-	} else {
-	    &Apache::lonnet::logthis('the record info is '.$record{'resource.'.$new_part.'.solved'});
+	    push (@v_flag,$new_part);
 	}
     }
     if (scalar(keys(%newrecord)) > 0) {
-        if ($v_flag) {
-            &Apache::lonnet::logthis("v_flag (setting stuff) is $v_flag");
-            &Apache::lonnet::unmark_as_readonly($domain,$stuname,$symb.$env{'request.course.id'});
-            &version_portfiles(\%record, \@parts_graded, $env{'request.course.id'}, $symb, $domain, $stuname);
+        if (scalar @v_flag) {
+            foreach my $part_flagged (@v_flag) {
+                &Apache::lonnet::unmark_as_readonly($domain,$stuname,$symb.$env{'request.course.id'});
+                &version_portfiles(\%record, \@parts_graded, $env{'request.course.id'}, $symb, $domain, $stuname);
+            }
         }
 	&Apache::lonnet::cstore(\%newrecord,$symb,
 				$env{'request.course.id'},$domain,$stuname);
@@ -2204,7 +2201,6 @@ sub version_portfiles {
         #&Apache::lonnet::logthis("key is $key, value is $$record{$key}");
         my $new_portfiles;
         if ($key =~ /^resource\.($parts)\./ && $key =~ /\.portfiles$/) {
-            
             my @v_portfiles;
             my @portfiles = split(/,/,$$record{$key});
             foreach my $file (@portfiles) {
@@ -2236,12 +2232,9 @@ sub version_portfiles {
                    my $copy_result = &Apache::lonnet::finishuserfileupload($stuname,$domain,$home_server,'copy',
                                     '/portfolio'.$directory.$answer_file_parts[0].'.'.$version.'.'.$answer_file_parts[-1]);
                     push(@v_portfiles, $answer_file_parts[0].'.'.$version.'.'.$answer_file_parts[-1]);
-                    &Apache::lonnet::logthis('copy result is '.$copy_result);
-                    &Apache::lonnet::logthis('answer file is '.$answer_file.
-                        ' becomes '.$answer_file_parts[0].'.'.$version.'.'.$answer_file_parts[-1]);
                 }
             }
-            $$record{$key} = join(/,/,@v_portfiles);
+            $$record{$key} = join(',',@v_portfiles);
         }
     } 
     return 'ok';