version 1.243, 2005/02/12 02:37:00
|
version 1.244, 2005/02/12 03:14:44
|
Line 2781 sub csvupload_fields {
|
Line 2781 sub csvupload_fields {
|
my $name=$part; |
my $name=$part; |
if (!$display) { $display = $name; } |
if (!$display) { $display = $name; } |
@datum=($name,$display); |
@datum=($name,$display); |
|
if ($name=~/^stores_(.*)_awarded/) { |
|
push(@fields,['stores_'.$1.'_points',"Points [Part: $1]"]); |
|
} |
push(@fields,\@datum); |
push(@fields,\@datum); |
} |
} |
return (@fields); |
return (@fields); |
Line 2923 sub csvuploadassign {
|
Line 2926 sub csvuploadassign {
|
push(@notallowed,"$username:$domain"); |
push(@notallowed,"$username:$domain"); |
next; |
next; |
} |
} |
|
my %points; |
my %grades; |
my %grades; |
foreach my $dest (keys(%fields)) { |
foreach my $dest (keys(%fields)) { |
if ($dest eq 'username' || $dest eq 'domain') { next; } |
if ($dest eq 'ID' || $dest eq 'username' || |
if ($entries{$fields{$dest}} eq '') { next; } |
$dest eq 'domain') { next; } |
my $store_key=$dest; |
if ($entries{$fields{$dest}} =~ /^\s*$/) { next; } |
$store_key=~s/^stores/resource/; |
if ($dest=~/stores_(.*)_points/) { |
$store_key=~s/_/\./g; |
my $part=$1; |
$grades{$store_key}=$entries{$fields{$dest}}; |
my $wgt =&Apache::lonnet::EXT('resource.'.$part.'.weight', |
|
$symb,$domain,$username); |
|
my $pcr=$entries{$fields{$dest}} / $wgt; |
|
my $award='correct_by_override'; |
|
$grades{"resource.$part.awarded"}=$pcr; |
|
$grades{"resource.$part.solved"}=$award; |
|
$points{$part}=1; |
|
} else { |
|
if ($dest=~/stores_(.*)_awarded/) { if ($points{$1}) {next;} } |
|
if ($dest=~/stores_(.*)_solved/) { if ($points{$1}) {next;} } |
|
my $store_key=$dest; |
|
$store_key=~s/^stores/resource/; |
|
$store_key=~s/_/\./g; |
|
$grades{$store_key}=$entries{$fields{$dest}}; |
|
} |
} |
} |
|
if (! %grades) { push(@skipped,"$username:$domain no data to store"); } |
$grades{"resource.regrader"}="$ENV{'user.name'}:$ENV{'user.domain'}"; |
$grades{"resource.regrader"}="$ENV{'user.name'}:$ENV{'user.domain'}"; |
|
# &Apache::lonnet::logthis(" storing ".(join('-',%grades))); |
&Apache::lonnet::cstore(\%grades,$symb,$ENV{'request.course.id'}, |
&Apache::lonnet::cstore(\%grades,$symb,$ENV{'request.course.id'}, |
$domain,$username); |
$domain,$username); |
$request->print('.'); |
$request->print('.'); |