version 1.65, 2006/12/19 00:40:38
|
version 1.70, 2008/09/12 09:56:09
|
Line 74 sub start_hintgroup {
|
Line 74 sub start_hintgroup {
|
my $constructtag=&Apache::edit::get_new_args($token,$parstack,$safeeval,'showoncorrect'); |
my $constructtag=&Apache::edit::get_new_args($token,$parstack,$safeeval,'showoncorrect'); |
if ($constructtag) { |
if ($constructtag) { |
$result =&Apache::edit::rebuild_tag($token); |
$result =&Apache::edit::rebuild_tag($token); |
$result.=&Apache::edit::handle_insert(); |
|
} |
} |
} |
} |
@Apache::hint::which=(); |
@Apache::hint::which=(); |
Line 110 sub start_numericalhint {
|
Line 109 sub start_numericalhint {
|
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; |
#do everything in end, so intervening <responseparams> work |
#do everything in end, so intervening <responseparams> work |
&Apache::response::start_hintresponse($parstack,$safeeval); |
&Apache::response::start_hintresponse($parstack,$safeeval); |
|
&Apache::caparesponse::push_answer(); |
my $result; |
my $result; |
if ($target eq 'edit') { |
if ($target eq 'edit') { |
$result.=&Apache::edit::tag_start($target,$token); |
$result.=&Apache::edit::tag_start($target,$token); |
Line 140 sub start_numericalhint {
|
Line 140 sub start_numericalhint {
|
} |
} |
if ($constructtag) { |
if ($constructtag) { |
$result = &Apache::edit::rebuild_tag($token); |
$result = &Apache::edit::rebuild_tag($token); |
$result .= &Apache::edit::handle_insert(); |
|
} |
} |
} elsif ($target eq 'web') { |
} elsif ($target eq 'web') { |
&Apache::response::reset_params(); |
&Apache::response::reset_params(); |
Line 161 sub end_numericalhint {
|
Line 160 sub end_numericalhint {
|
|
|
my $partid=$Apache::inputtags::part; |
my $partid=$Apache::inputtags::part; |
my $id=$Apache::inputtags::hint[-1]; |
my $id=$Apache::inputtags::hint[-1]; |
#id submissions occured under |
#id submissions occurred under |
my $submitid=$Apache::inputtags::response[-1]; |
my $submitid=$Apache::inputtags::response[-1]; |
|
|
my $response = $Apache::lonhomework::history{ |
my $response = $Apache::lonhomework::history{ |
Line 177 sub end_numericalhint {
|
Line 176 sub end_numericalhint {
|
if (lc($hideunit) eq "yes") { delete($$args_ref{'unit'}); } |
if (lc($hideunit) eq "yes") { delete($$args_ref{'unit'}); } |
|
|
if ($$tagstack[-1] eq 'formulahint') { |
if ($$tagstack[-1] eq 'formulahint') { |
$$args_ref{'type'}='fml'; |
if ($$args_ref{'samples'}) { |
|
$$args_ref{'type'}='fml'; |
|
} else { |
|
$$args_ref{'type'}='math'; |
|
} |
} elsif ($$tagstack[-1] eq 'numericalhint') { |
} elsif ($$tagstack[-1] eq 'numericalhint') { |
$$args_ref{'type'}='float'; |
$$args_ref{'type'}='float'; |
} |
} |
Line 191 sub end_numericalhint {
|
Line 194 sub end_numericalhint {
|
dclone($answer{$ans_name}); |
dclone($answer{$ans_name}); |
&Apache::caparesponse::setup_capa_response($args_ref,$response); |
&Apache::caparesponse::setup_capa_response($args_ref,$response); |
my ($result,@msgs) = |
my ($result,@msgs) = |
&Apache::run::run("&caparesponse_check_list()",$safeeval); |
&Apache::run::run("&caparesponse_check_list($$tagstack[-1])",$safeeval); |
&Apache::lonxml::debug("checking $ans_name $result with $response"); |
&Apache::lonxml::debug("checking $ans_name $result with $response"); |
&Apache::lonxml::debug('msgs are '.join(':',@msgs)); |
&Apache::lonxml::debug('msgs are '.join(':',@msgs)); |
my ($awards)=split(/:/,$result); |
my ($awards)=split(/:/,$result); |
Line 215 sub end_numericalhint {
|
Line 218 sub end_numericalhint {
|
} elsif ($target eq 'edit') { |
} elsif ($target eq 'edit') { |
$result.=&Apache::edit::end_row().&Apache::edit::end_table(); |
$result.=&Apache::edit::end_row().&Apache::edit::end_table(); |
} |
} |
|
&Apache::caparesponse::pop_answer(); |
&Apache::response::end_hintresponse(); |
&Apache::response::end_hintresponse(); |
return $result; |
return $result; |
} |
} |
Line 250 sub start_mathhint {
|
Line 254 sub start_mathhint {
|
$safeeval,'name','cas', |
$safeeval,'name','cas', |
'args'); |
'args'); |
$result = &Apache::edit::rebuild_tag($token); |
$result = &Apache::edit::rebuild_tag($token); |
$result .= &Apache::edit::handle_insert(); |
|
} elsif ($target eq 'web') { |
} elsif ($target eq 'web') { |
&Apache::response::reset_params(); |
&Apache::response::reset_params(); |
} |
} |
Line 308 sub start_customhint {
|
Line 311 sub start_customhint {
|
$constructtag=&Apache::edit::get_new_args($token,$parstack, |
$constructtag=&Apache::edit::get_new_args($token,$parstack, |
$safeeval,'name'); |
$safeeval,'name'); |
$result = &Apache::edit::rebuild_tag($token); |
$result = &Apache::edit::rebuild_tag($token); |
$result .= &Apache::edit::handle_insert(); |
|
} elsif ($target eq 'web') { |
} elsif ($target eq 'web') { |
&Apache::response::reset_params(); |
&Apache::response::reset_params(); |
} |
} |
Line 375 sub start_stringhint {
|
Line 377 sub start_stringhint {
|
$safeeval,'name','answer', |
$safeeval,'name','answer', |
'type'); |
'type'); |
$result = &Apache::edit::rebuild_tag($token); |
$result = &Apache::edit::rebuild_tag($token); |
$result .= &Apache::edit::handle_insert(); |
|
} elsif ($target eq 'web') { |
} elsif ($target eq 'web') { |
&Apache::response::reset_params(); |
&Apache::response::reset_params(); |
} |
} |
Line 394 sub end_stringhint {
|
Line 395 sub end_stringhint {
|
&Apache::response::setup_params('stringhint',$safeeval); |
&Apache::response::setup_params('stringhint',$safeeval); |
my $partid=$Apache::inputtags::part; |
my $partid=$Apache::inputtags::part; |
my $id=$Apache::inputtags::hint[-1]; |
my $id=$Apache::inputtags::hint[-1]; |
#id submissions occured under |
#id submissions occurred under |
my $submitid=$Apache::inputtags::response[-1]; |
my $submitid=$Apache::inputtags::response[-1]; |
my $response = $Apache::lonhomework::history{ |
my $response = $Apache::lonhomework::history{ |
"resource.$partid.$submitid.submission"}; |
"resource.$partid.$submitid.submission"}; |
Line 427 sub end_stringhint {
|
Line 428 sub end_stringhint {
|
foreach my $ans_name (keys(%answer)) { |
foreach my $ans_name (keys(%answer)) { |
&Apache::lonxml::debug(" doing $ans_name with ".join(':',@{ $answer{$ans_name}{'answers'} })); |
&Apache::lonxml::debug(" doing $ans_name with ".join(':',@{ $answer{$ans_name}{'answers'} })); |
${$safeeval->varglob('LONCAPA::CAPAresponse_answer')}=dclone($answer{$ans_name}); |
${$safeeval->varglob('LONCAPA::CAPAresponse_answer')}=dclone($answer{$ans_name}); |
my ($result, @msgs)=&Apache::run::run("&caparesponse_check_list()",$safeeval); |
my ($result, @msgs)=&Apache::run::run("&caparesponse_check_list($$tagstack[-1])",$safeeval); |
&Apache::lonxml::debug('msgs are'.join(':',@msgs)); |
&Apache::lonxml::debug('msgs are'.join(':',@msgs)); |
my ($awards) = split(/:/,$result); |
my ($awards) = split(/:/,$result); |
my (@awards) = split(/,/,$awards); |
my (@awards) = split(/,/,$awards); |
Line 486 sub start_hintpart {
|
Line 487 sub start_hintpart {
|
$safeeval,'on'); |
$safeeval,'on'); |
if ($constructtag) { |
if ($constructtag) { |
$result = &Apache::edit::rebuild_tag($token); |
$result = &Apache::edit::rebuild_tag($token); |
$result.=&Apache::edit::handle_insert(); |
|
} |
} |
} |
} |
return $result; |
return $result; |
Line 516 sub start_optionhint {
|
Line 516 sub start_optionhint {
|
'answer','concept'); |
'answer','concept'); |
if ($constructtag) { |
if ($constructtag) { |
$result = &Apache::edit::rebuild_tag($token); |
$result = &Apache::edit::rebuild_tag($token); |
$result .= &Apache::edit::handle_insert(); |
|
} |
} |
} elsif ($target eq 'meta') { |
} elsif ($target eq 'meta') { |
$result=&Apache::response::meta_package_write('numericalhint'); |
$result=&Apache::response::meta_package_write('numericalhint'); |
Line 531 sub end_optionhint {
|
Line 530 sub end_optionhint {
|
my ($foilmatch,$conceptmatch)=(-1,-1); |
my ($foilmatch,$conceptmatch)=(-1,-1); |
my $name= &Apache::lonxml::get_param('name',$parstack,$safeeval); |
my $name= &Apache::lonxml::get_param('name',$parstack,$safeeval); |
my $partid=$Apache::inputtags::part; |
my $partid=$Apache::inputtags::part; |
#id submissions occured under |
#id submissions occurred under |
my $submitid=$Apache::inputtags::response[-1]; |
my $submitid=$Apache::inputtags::response[-1]; |
my $part_id="$partid.$submitid"; |
my $part_id="$partid.$submitid"; |
my %answer; |
my %answer; |
Line 595 sub start_radiobuttonhint {
|
Line 594 sub start_radiobuttonhint {
|
'answer'); |
'answer'); |
if ($constructtag) { |
if ($constructtag) { |
$result = &Apache::edit::rebuild_tag($token); |
$result = &Apache::edit::rebuild_tag($token); |
$result .= &Apache::edit::handle_insert(); |
|
} |
} |
} elsif ($target eq 'meta') { |
} elsif ($target eq 'meta') { |
$result=&Apache::response::meta_package_write('numericalhint'); |
$result=&Apache::response::meta_package_write('numericalhint'); |
Line 612 sub end_radiobuttonhint {
|
Line 610 sub end_radiobuttonhint {
|
my $answer=&Apache::lonxml::get_param('answer',$parstack,$safeeval); |
my $answer=&Apache::lonxml::get_param('answer',$parstack,$safeeval); |
eval('@answer ='.$answer); |
eval('@answer ='.$answer); |
my $partid=$Apache::inputtags::part; |
my $partid=$Apache::inputtags::part; |
#id submissions occured under |
#id submissions occurred under |
my $submitid=$Apache::inputtags::response[-1]; |
my $submitid=$Apache::inputtags::response[-1]; |
my $part_id="$partid.$submitid"; |
my $part_id="$partid.$submitid"; |
my $response = $Apache::lonhomework::history{ |
my $response = $Apache::lonhomework::history{ |