--- loncom/homework/grades.pm	2004/10/07 22:12:47	1.220
+++ loncom/homework/grades.pm	2004/11/02 20:48:02	1.223
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # The LON-CAPA Grading handler
 #
-# $Id: grades.pm,v 1.220 2004/10/07 22:12:47 albertel Exp $
+# $Id: grades.pm,v 1.223 2004/11/02 20:48:02 albertel Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -91,25 +91,6 @@ sub get_symb_and_url {
     return ($symb,$url);
 }
 
-# --- Retrieve the fullname for a user. Return lastname, first middle ---
-# --- Generation is attached next to the lastname if it exists. ---
-sub get_fullname {
-    my ($uname,$udom) = @_;
-    my %name=&Apache::lonnet::get('environment', ['lastname','generation',
-						  'firstname','middlename'],
-                                  $udom,$uname);
-    my $fullname;
-    my ($tmp) = keys(%name);
-    if ($tmp !~ /^(con_lost|error|no_such_host)/i) {
-        $fullname = &Apache::loncoursedata::ProcessFullName
-            (@name{qw/lastname generation firstname middlename/});
-    } else {
-        &Apache::lonnet::logthis('grades.pm: no name data for '.$uname.
-                                 '@'.$udom.':'.$tmp);
-    }
-    return $fullname;
-}
-
 #--- Format fullname, username:domain if different for display
 #--- Use anywhere where the student names are listed
 sub nameUserString {
@@ -1404,14 +1385,15 @@ sub submission {
     my ($uname,$udom)     = ($ENV{'form.student'},$ENV{'form.userdom'});
     $udom = ($udom eq '' ? $ENV{'user.domain'} : $udom); #has form.userdom changed for a student?
     my $usec = &Apache::lonnet::getsection($udom,$uname,$ENV{'request.course.id'});
-    $ENV{'form.fullname'} = &get_fullname ($uname,$udom) if $ENV{'form.fullname'} eq '';
+    $ENV{'form.fullname'} = &Apache::loncommon::plainname($uname,$udom,'lastname') if $ENV{'form.fullname'} eq '';
 
     my $symb=($ENV{'form.symb'} ne '' ? $ENV{'form.symb'} : (&Apache::lonnet::symbread($url)));
     if ($symb eq '') { $request->print("Unable to handle ambiguous references:$url:."); return ''; }
 
     if (!&canview($usec)) {
 	$request->print('<font color="red">Unable to view requested student.('.
-			$uname.$udom.$usec.$ENV{'request.course.id'}.')</font>');
+			$uname.'@'.$udom.' in section '.$usec.' in course id '.
+			$ENV{'request.course.id'}.')</font>');
 	$request->print(&show_grading_menu_form($symb,$url));
 	return;
     }
@@ -4460,7 +4442,8 @@ sub scantron_validate_CODE {
 						 $scan_data);
 	my $CODE=$$scan_record{'scantron.CODE'};
 	my $error=0;
-	if (!exists($allcodes{$CODE}) && !$$scan_record{'scantron.useCODE'}) {
+	if (%allcodes && !exists($allcodes{$CODE}) 
+	    && !$$scan_record{'scantron.useCODE'}) {
 	    &scantron_get_correction($r,$i,$scan_record,
 				     \%scantron_config,
 				     $line,'incorrectCODE',\%allcodes);