version 1.298, 2011/12/10 18:10:56
|
version 1.300, 2011/12/20 22:47:27
|
Line 843 sub finalizeawards {
|
Line 843 sub finalizeawards {
|
} |
} |
} |
} |
|
|
sub grading_is_nonlenient { |
|
my ($part) = @_; |
|
# Web mode: we are non-lenient unless told otherwise |
|
my $defaultparm = 'off'; |
|
my $nonlenient = 0; |
|
# Grading a bubblesheet exam: we are grading lenient unless told otherwise |
|
if ($Apache::lonhomework::scantronmode) { |
|
$defaultparm = 'on'; |
|
$nonlenient = 1; |
|
} |
|
my $lenientparm = |
|
&Apache::response::get_response_param($part,'lenient',$defaultparm); |
|
if ($lenientparm=~/^0|off|no$/i) { |
|
$nonlenient = 1; |
|
} elsif ($lenientparm=~/^1|on|yes$/i) { |
|
$nonlenient = 0; |
|
} |
|
return $nonlenient; |
|
} |
|
|
|
sub decideoutput { |
sub decideoutput { |
my ($award,$awarded,$awardmsg,$solved,$previous,$target,$nocorrect)=@_; |
my ($award,$awarded,$awardmsg,$solved,$previous,$target,$nocorrect)=@_; |
|
|
Line 931 sub decideoutput {
|
Line 911 sub decideoutput {
|
} |
} |
} |
} |
} |
} |
if (&grading_is_nonlenient($part)) { |
if ($awarded >= 1) { |
$button=0; |
$button=0; |
} elsif ($awarded==1) { |
} elsif (&Apache::lonnet::EXT("resource.$part.retrypartial") !~/^1|on|yes$/i) { |
$button=0; |
$button=0; |
} else { |
} else { |
$button=1; |
$button=1; |
} |
} |
$previousmsg=''; |
$previousmsg=''; |
Line 1514 sub gradestatus {
|
Line 1494 sub gradestatus {
|
&& $status ne 'UNAVAILABLE' |
&& $status ne 'UNAVAILABLE' |
&& $status ne 'INVALID_ACCESS' |
&& $status ne 'INVALID_ACCESS' |
&& $status ne 'NEEDS_CHECKIN' |
&& $status ne 'NEEDS_CHECKIN' |
&& $status ne 'NOT_IN_A_SLOT') { |
&& $status ne 'NOT_IN_A_SLOT' |
|
&& $status ne 'RESERVABLE' |
|
&& $status ne 'RESERVABLE_LATER' |
|
&& $status ne 'NOTRESERVABLE') { |
|
|
($previousmsg,$latemessage,$message,$trystr) = |
($previousmsg,$latemessage,$message,$trystr) = |
&get_grade_messages($id,"resource.$id",$target,$status, |
&get_grade_messages($id,"resource.$id",$target,$status, |