version 1.215, 2009/05/04 16:45:44
|
version 1.219, 2010/10/14 19:54:56
|
Line 30
|
Line 30
|
|
|
=head1 NAME |
=head1 NAME |
|
|
Apache::resonse.pm |
Apache::response.pm |
|
|
=head1 SYNOPSIS |
=head1 SYNOPSIS |
|
|
Line 280 sub meta_response_order {
|
Line 280 sub meta_response_order {
|
} |
} |
|
|
sub check_for_previous { |
sub check_for_previous { |
my ($curresponse,$partid,$id,$last) = @_; |
my ($curresponse,$partid,$id,$last,$type) = @_; |
my %previous; |
my %previous; |
$previous{'used'} = 0; |
$previous{'used'} = 0; |
foreach my $key (sort(keys(%Apache::lonhomework::history))) { |
foreach my $key (sort(keys(%Apache::lonhomework::history))) { |
Line 305 sub check_for_previous {
|
Line 305 sub check_for_previous {
|
if (! $previous{'award'} ) { $previous{'award'} = 'UNKNOWN'; } |
if (! $previous{'award'} ) { $previous{'award'} = 'UNKNOWN'; } |
if ($previous{'award'} eq 'INTERNAL_ERROR') { $previous{'used'}=0; } |
if ($previous{'award'} eq 'INTERNAL_ERROR') { $previous{'used'}=0; } |
&Apache::lonxml::debug("got a match :$previous{'award'}:$previous{'used'}:"); |
&Apache::lonxml::debug("got a match :$previous{'award'}:$previous{'used'}:"); |
} |
} elsif ($type eq 'ci') { |
|
if (lc($pastresponse) eq lc($curresponse)) { |
|
if ($key =~ /^(\d+):/) { |
|
push (@{$previous{'versionci'}},$1); |
|
$previous{'awardci'} = $Apache::lonhomework::history{"resource.$partid.$id.awarddetail"}; |
|
$previous{'usedci'} = 1; |
|
} |
|
} |
|
} |
} |
} |
} |
} |
&Apache::lonhomework::showhash(%previous); |
&Apache::lonhomework::showhash(%previous); |
Line 318 sub handle_previous {
|
Line 326 sub handle_previous {
|
if ($$previous{'last'}) { |
if ($$previous{'last'}) { |
push(@Apache::inputtags::previous,'PREVIOUSLY_LAST'); |
push(@Apache::inputtags::previous,'PREVIOUSLY_LAST'); |
push(@Apache::inputtags::previous_version,$$previous{'version'}); |
push(@Apache::inputtags::previous_version,$$previous{'version'}); |
} elsif ($Apache::lonhomework::type ne 'survey') { |
} elsif (($Apache::lonhomework::type ne 'survey') && |
|
($Apache::lonhomework::type ne 'surveycred') && |
|
($Apache::lonhomework::type ne 'anonsurvey') && |
|
($Apache::lonhomework::type ne 'anonsurveycred')) { |
push(@Apache::inputtags::previous,'PREVIOUSLY_USED'); |
push(@Apache::inputtags::previous,'PREVIOUSLY_USED'); |
push(@Apache::inputtags::previous_version,$$previous{'version'}); |
push(@Apache::inputtags::previous_version,$$previous{'version'}); |
} |
} |
Line 439 sub end_customresponse {
|
Line 450 sub end_customresponse {
|
${$safeeval->varglob('LONCAPA::customresponse_submission')}= |
${$safeeval->varglob('LONCAPA::customresponse_submission')}= |
$response; |
$response; |
|
|
my $award = &Apache::run::run('{ my $submission=$LONCAPA::customresponse_submission;'.$Apache::response::custom_answer[-1].'}',$safeeval); |
my ($award,$score) = &Apache::run::run('{ my $submission=$LONCAPA::customresponse_submission;'.$Apache::response::custom_answer[-1].'}',$safeeval); |
if (!&Apache::inputtags::valid_award($award)) { |
if (!&Apache::inputtags::valid_award($award)) { |
$error = $award; |
$error = $award; |
$award = 'ERROR'; |
$award = 'ERROR'; |
Line 447 sub end_customresponse {
|
Line 458 sub end_customresponse {
|
&Apache::response::handle_previous(\%previous,$award); |
&Apache::response::handle_previous(\%previous,$award); |
$Apache::lonhomework::results{"resource.$part.$id.awarddetail"}= |
$Apache::lonhomework::results{"resource.$part.$id.awarddetail"}= |
$award; |
$award; |
|
if ($award eq 'ASSIGNED_SCORE') { |
|
$Apache::lonhomework::results{"resource.$part.$id.awarded"}=1.0*$score; |
|
} |
if ($error) { |
if ($error) { |
$Apache::lonhomework::results{"resource.$part.$id.awardmsg"}= |
$Apache::lonhomework::results{"resource.$part.$id.awardmsg"}= |
$error; |
$error; |
Line 904 sub showallfoils {
|
Line 918 sub showallfoils {
|
} |
} |
} |
} |
if ($Apache::lonhomework::type eq 'survey') { return 1; } |
if ($Apache::lonhomework::type eq 'survey') { return 1; } |
|
if ($Apache::lonhomework::type eq 'surveycred') { return 1; } |
|
if ($Apache::lonhomework::type eq 'anonsurvey') { return 1; } |
|
if ($Apache::lonhomework::type eq 'anonsurveycred') { return 1; } |
|
|
return 0; |
return 0; |
} |
} |
|
|