version 1.282, 2011/03/07 19:42:21
|
version 1.289, 2011/06/06 22:20:46
|
Line 60 use LONCAPA;
|
Line 60 use LONCAPA;
|
|
|
|
|
BEGIN { |
BEGIN { |
&Apache::lonxml::register('Apache::inputtags',('hiddenline','textfield','textline')); |
&Apache::lonxml::register('Apache::inputtags',('hiddensubmission','hiddenline','textfield','textline')); |
} |
} |
|
|
=pod |
=pod |
Line 478 sub end_hiddenline {
|
Line 478 sub end_hiddenline {
|
return ""; |
return ""; |
} |
} |
|
|
|
|
|
sub start_hiddensubmission { |
|
my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_; |
|
my $result = ""; |
|
my $input_id = &start_input($parstack,$safeeval); |
|
if ($target eq 'web') { |
|
$Apache::lonxml::evaluate--; |
|
if ($Apache::inputtags::status[-1] eq 'CAN_ANSWER') { |
|
my $partid=$Apache::inputtags::part; |
|
my $id=$Apache::inputtags::response[-1]; |
|
if ($Apache::lonhomework::type ne 'exam') { |
|
my $value = &Apache::lonxml::get_param('value',$parstack,$safeeval); |
|
$value = &HTML::Entities::encode($value,'<>&"'); |
|
$result= '<input type="hidden" name="HWVAL_'.$id.'" value="'.$value.'" />'; |
|
} |
|
} |
|
} elsif ($target eq 'edit') { |
|
$result=&Apache::edit::tag_start($target,$token); |
|
$result.=&Apache::edit::text_arg('Value:','value',$token,'15'); |
|
$result.=&Apache::edit::end_row(); |
|
$result.=&Apache::edit::end_table(); |
|
} elsif ($target eq 'modified') { |
|
my $constructtag=&Apache::edit::get_new_args($token,$parstack, |
|
$safeeval,'value'); |
|
if ($constructtag) { $result = &Apache::edit::rebuild_tag($token); } |
|
} |
|
|
|
if ( ($target eq 'web' || $target eq 'tex') |
|
&& $Apache::lonhomework::type eq 'exam' |
|
&& &needs_exam_box($tagstack)) { |
|
$result.=&exam_box($target); |
|
} |
|
return $result; |
|
} |
|
|
|
sub end_hiddensubmission { |
|
my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_; |
|
if ($target eq 'web') { $Apache::lonxml::evaluate++; } |
|
elsif ($target eq 'edit') { return ('','no'); } |
|
&end_input(); |
|
return ""; |
|
} |
|
|
=pod |
=pod |
|
|
=item file_selector() |
=item file_selector() |
Line 868 sub decideoutput {
|
Line 911 sub decideoutput {
|
} |
} |
} |
} |
} |
} |
$button=0; |
if ($awarded==1) { $button=0; } else { $button=1; } |
$previousmsg=''; |
$previousmsg=''; |
} elsif ($solved =~ /^excused/) { |
} elsif ($solved =~ /^excused/) { |
if ($target eq 'tex') { |
if ($target eq 'tex') { |
Line 1094 sub decideoutput {
|
Line 1137 sub decideoutput {
|
} |
} |
$message.=&mt('Submissions to practice problems are not permanently recorded.'); |
$message.=&mt('Submissions to practice problems are not permanently recorded.'); |
} |
} |
|
|
return ($button,$css_class,$message,$previousmsg); |
return ($button,$css_class,$message,$previousmsg); |
} |
} |
|
|
Line 1147 sub setgradedata {
|
Line 1189 sub setgradedata {
|
$Apache::inputtags::status['-1'] ne 'CANNOT_ANSWER') { |
$Apache::inputtags::status['-1'] ne 'CANNOT_ANSWER') { |
$Apache::lonhomework::results{"resource.$id.afterduedate"}=$award; |
$Apache::lonhomework::results{"resource.$id.afterduedate"}=$award; |
return ''; |
return ''; |
} elsif ( $Apache::lonhomework::history{"resource.$id.solved"} !~ |
} elsif ( $Apache::lonhomework::history{"resource.$id.awarded"} < 1 |
/^correct/ |
|
|| $Apache::lonhomework::scantronmode |
|| $Apache::lonhomework::scantronmode |
|| &Apache::lonhomework::hide_problem_status() ) { |
|| &Apache::lonhomework::hide_problem_status() ) { |
# the student doesn't already have it correct, |
# the student doesn't already have it correct, |
Line 1269 sub setgradedata {
|
Line 1310 sub setgradedata {
|
$Apache::lonhomework::results{"resource.$id.previous"} = '0'; |
$Apache::lonhomework::results{"resource.$id.previous"} = '0'; |
} |
} |
} |
} |
} elsif ( $Apache::lonhomework::history{"resource.$id.solved"} =~ |
} elsif ( $Apache::lonhomework::history{"resource.$id.awarded"} == 1 ) { |
/^correct/ ) { |
|
#delete all data as they student already has it correct |
#delete all data as they student already has it correct |
&removealldata($id); |
&removealldata($id); |
#and since they didn't do anything we were never here |
#and since they didn't do anything we were never here |
Line 1280 sub setgradedata {
|
Line 1320 sub setgradedata {
|
if ($award eq 'SUBMITTED') { |
if ($award eq 'SUBMITTED') { |
&Apache::response::add_to_gradingqueue(); |
&Apache::response::add_to_gradingqueue(); |
} |
} |
if (($Apache::lonhomework::type eq 'anonsurvey') || |
$Apache::lonhomework::results{"resource.$id.type"} = $Apache::lonhomework::type; |
($Apache::lonhomework::type eq 'anonsurveycred') || |
$Apache::lonhomework::results{"resource.$id.duedate"} = &Apache::lonnet::EXT("resource.$id.duedate"); |
($Apache::lonhomework::type eq 'randomizetry')) { |
$Apache::lonhomework::results{"resource.$id.hinttries"} = &Apache::lonnet::EXT("resource.$id.hinttries"); |
$Apache::lonhomework::results{"resource.$id.type"} = $Apache::lonhomework::type; |
|
} |
|
if ($Apache::lonhomework::type eq 'randomizetry') { |
|
$Apache::lonhomework::results{"resource.$id.rndseed"} = $env{'form.'.$id.'.rndseed'}; |
|
} |
|
} |
} |
|
|
sub find_which_previous { |
sub find_which_previous { |