version 1.596.2.12.2.30, 2014/08/25 22:17:54
|
version 1.596.2.12.2.31, 2015/01/23 23:34:17
|
Line 1372 sub sub_page_js {
|
Line 1372 sub sub_page_js {
|
} |
} |
} |
} |
} |
} |
|
|
} |
} |
} |
} |
|
|
} |
} |
if (val == "Grade Student") { |
if (val == "Grade Student") { |
formname.showgrading.value = "yes"; |
formname.showgrading.value = "yes"; |
Line 2401 sub submission {
|
Line 2399 sub submission {
|
$request->print(&displaySubByDates($symb,\%record,$parts,$responseType,$checkIcon,$uname,$udom)); |
$request->print(&displaySubByDates($symb,\%record,$parts,$responseType,$checkIcon,$uname,$udom)); |
} |
} |
if ($env{'form.lastSub'} =~ /^(last|all)$/) { |
if ($env{'form.lastSub'} =~ /^(last|all)$/) { |
|
my $identifier = (&canmodify($usec)? $counter : ''); |
$request->print(&Apache::loncommon::get_previous_attempt($symb,$uname,$udom, |
$request->print(&Apache::loncommon::get_previous_attempt($symb,$uname,$udom, |
$env{'request.course.id'}, |
$env{'request.course.id'}, |
$last,'.submission', |
$last,'.submission', |
'Apache::grades::keywords_highlight')); |
'Apache::grades::keywords_highlight', |
|
$usec,$identifier)); |
} |
} |
|
|
$request->print('<input type="hidden" name="unamedom'.$counter.'" value="'.$uname.':' |
$request->print('<input type="hidden" name="unamedom'.$counter.'" value="'.$uname.':' |
Line 2863 sub processHandGrade {
|
Line 2863 sub processHandGrade {
|
my $ctr = 0; |
my $ctr = 0; |
while ($ctr < $ngrade) { |
while ($ctr < $ngrade) { |
my ($uname,$udom) = split(/:/,$env{'form.unamedom'.$ctr}); |
my ($uname,$udom) = split(/:/,$env{'form.unamedom'.$ctr}); |
my ($errorflag,$pts,$wgt) = &saveHandGrade($request,$symb,$uname,$udom,$ctr); |
my ($errorflag,$pts,$wgt,$numhidden) = |
|
&saveHandGrade($request,$symb,$uname,$udom,$ctr); |
if ($errorflag eq 'no_score') { |
if ($errorflag eq 'no_score') { |
$ctr++; |
$ctr++; |
next; |
next; |
Line 2876 sub processHandGrade {
|
Line 2877 sub processHandGrade {
|
$ctr++; |
$ctr++; |
next; |
next; |
} |
} |
|
if ($numhidden) { |
|
$request->print( |
|
'<span class="LC_info">' |
|
.&mt('For [_1]: [quant,_2,transaction] hidden',"$uname:$udom",$numhidden) |
|
.'</span><br />'); |
|
} |
my $includemsg = $env{'form.includemsg'.$ctr}; |
my $includemsg = $env{'form.includemsg'.$ctr}; |
my ($subject,$message,$msgstatus) = ('','',''); |
my ($subject,$message,$msgstatus) = ('','',''); |
my $restitle = &Apache::lonnet::gettitle($symb); |
my $restitle = &Apache::lonnet::gettitle($symb); |
Line 3107 sub saveHandGrade {
|
Line 3114 sub saveHandGrade {
|
my %record = &Apache::lonnet::restore($symb,$env{'request.course.id'},$domain,$stuname); |
my %record = &Apache::lonnet::restore($symb,$env{'request.course.id'},$domain,$stuname); |
my @parts_graded; |
my @parts_graded; |
my %newrecord = (); |
my %newrecord = (); |
my ($pts,$wgt) = ('',''); |
my ($pts,$wgt,$totchg) = ('','',0); |
my %aggregate = (); |
my %aggregate = (); |
my $aggregateflag = 0; |
my $aggregateflag = 0; |
|
if ($env{'form.HIDE'.$newflg}) { |
|
my ($version,$parts) = split(/:/,$env{'form.HIDE'.$newflg},2); |
|
my $numchgs = &makehidden($version,$parts,\%record,$symb,$domain,$stuname,1); |
|
$totchg += $numchgs; |
|
} |
my @parts = split(/:/,$env{'form.partlist'.$newflg}); |
my @parts = split(/:/,$env{'form.partlist'.$newflg}); |
foreach my $new_part (@parts) { |
foreach my $new_part (@parts) { |
#collaborator ($submi may vary for different parts |
#collaborator ($submi may vary for different parts |
Line 3212 sub saveHandGrade {
|
Line 3224 sub saveHandGrade {
|
&Apache::lonnet::cinc('nohist_resourcetracker',\%aggregate, |
&Apache::lonnet::cinc('nohist_resourcetracker',\%aggregate, |
$cdom,$cnum); |
$cdom,$cnum); |
} |
} |
return ('',$pts,$wgt); |
return ('',$pts,$wgt,$totchg); |
|
} |
|
|
|
sub makehidden { |
|
my ($version,$parts,$record,$symb,$domain,$stuname,$tolog) = @_; |
|
return unless (ref($record) eq 'HASH'); |
|
my %modified; |
|
my $numchanged = 0; |
|
if (exists($record->{$version.':keys'})) { |
|
my $partsregexp = $parts; |
|
$partsregexp =~ s/,/|/g; |
|
foreach my $key (split(/\:/,$record->{$version.':keys'})) { |
|
if ($key =~ /^resource\.(?:$partsregexp)\.([^\.]+)$/) { |
|
my $item = $1; |
|
unless (($item eq 'solved') || ($item =~ /^award(|msg|ed)$/)) { |
|
$modified{$key} = $record->{$version.':'.$key}; |
|
} |
|
} elsif ($key =~ m{^(resource\.(?:$partsregexp)\.[^\.]+\.)(.+)$}) { |
|
$modified{$1.'hidden'.$2} = $record->{$version.':'.$key}; |
|
} elsif ($key =~ /^(ip|timestamp|host)$/) { |
|
$modified{$key} = $record->{$version.':'.$key}; |
|
} |
|
} |
|
if (keys(%modified)) { |
|
if (&Apache::lonnet::putstore($env{'request.course.id'},$symb,$version,\%modified, |
|
$domain,$stuname,$tolog) eq 'ok') { |
|
$numchanged ++; |
|
} |
|
} |
|
} |
|
return $numchanged; |
} |
} |
|
|
sub check_and_remove_from_queue { |
sub check_and_remove_from_queue { |
Line 4914 sub displayPage {
|
Line 4956 sub displayPage {
|
} |
} |
} elsif ($env{'form.lastSub'} eq 'all') { |
} elsif ($env{'form.lastSub'} eq 'all') { |
my $last = ($env{'form.lastSub'} eq 'last' ? 'last' : ''); |
my $last = ($env{'form.lastSub'} eq 'last' ? 'last' : ''); |
|
my $identifier = (&canmodify($usec)? $prob : ''); |
$studentTable.=&Apache::loncommon::get_previous_attempt($symbx,$uname,$udom, |
$studentTable.=&Apache::loncommon::get_previous_attempt($symbx,$uname,$udom, |
$env{'request.course.id'}, |
$env{'request.course.id'}, |
'','.submission'); |
'','.submission',undef, |
|
$usec,$identifier); |
|
|
} |
} |
if (&canmodify($usec)) { |
if (&canmodify($usec)) { |
Line 5132 sub updateGradeByPage {
|
Line 5176 sub updateGradeByPage {
|
|
|
$iterator->next(); # skip the first BEGIN_MAP |
$iterator->next(); # skip the first BEGIN_MAP |
my $curRes = $iterator->next(); # for "current resource" |
my $curRes = $iterator->next(); # for "current resource" |
my ($depth,$question,$prob,$changeflag)= (1,1,1,0); |
my ($depth,$question,$prob,$changeflag,$hideflag)= (1,1,1,0,0); |
while ($depth > 0) { |
while ($depth > 0) { |
if($curRes == $iterator->BEGIN_MAP) { $depth++; } |
if($curRes == $iterator->BEGIN_MAP) { $depth++; } |
if($curRes == $iterator->END_MAP) { $depth--; } |
if($curRes == $iterator->END_MAP) { $depth--; } |
Line 5153 sub updateGradeByPage {
|
Line 5197 sub updateGradeByPage {
|
my @displayPts=(); |
my @displayPts=(); |
my %aggregate = (); |
my %aggregate = (); |
my $aggregateflag = 0; |
my $aggregateflag = 0; |
|
if ($env{'form.HIDE'.$prob}) { |
|
my %record = &Apache::lonnet::restore($symbx,$env{'request.course.id'},$udom,$uname); |
|
my ($version,$parts) = split(/:/,$env{'form.HIDE'.$prob},2); |
|
my $numchgs = &makehidden($version,$parts,\%record,$symbx,$udom,$uname,1); |
|
$hideflag += $numchgs; |
|
} |
foreach my $partid (@{$parts}) { |
foreach my $partid (@{$parts}) { |
my $newpts = $env{'form.GD_BOX'.$question.'_'.$partid}; |
my $newpts = $env{'form.GD_BOX'.$question.'_'.$partid}; |
my $oldpts = $env{'form.oldpts'.$question.'_'.$partid}; |
my $oldpts = $env{'form.oldpts'.$question.'_'.$partid}; |
Line 5244 sub updateGradeByPage {
|
Line 5294 sub updateGradeByPage {
|
$studentTable.=&show_grading_menu_form($env{'form.symb'}); |
$studentTable.=&show_grading_menu_form($env{'form.symb'}); |
my $grademsg=($changeflag == 0 ? &mt('No score was changed or updated.') : |
my $grademsg=($changeflag == 0 ? &mt('No score was changed or updated.') : |
&mt('The scores were changed for [quant,_1,problem].', |
&mt('The scores were changed for [quant,_1,problem].', |
$changeflag)); |
$changeflag).'<br />'); |
$request->print($grademsg.$studentTable); |
my $hidemsg=($hideflag == 0 ? '' : |
|
&mt('Submissions were marked "hidden" for [quant,_1,transaction].', |
|
$hideflag).'<br />'); |
|
$request->print($hidemsg.$grademsg.$studentTable); |
|
|
return ''; |
return ''; |
} |
} |