version 1.70, 2008/08/08 16:37:13
|
version 1.76, 2009/04/16 15:04:58
|
Line 33 use Math::Random();
|
Line 33 use Math::Random();
|
use Apache::optionresponse(); |
use Apache::optionresponse(); |
use Apache::lonlocal; |
use Apache::lonlocal; |
use Apache::lonnet; |
use Apache::lonnet; |
|
use Apache::lonxml; |
|
|
BEGIN { |
BEGIN { |
&Apache::lonxml::register('Apache::matchresponse',('matchresponse')); |
&Apache::lonxml::register('Apache::matchresponse',('matchresponse')); |
Line 53 sub start_matchresponse {
|
Line 54 sub start_matchresponse {
|
$result=&Apache::response::meta_package_write('matchresponse'); |
$result=&Apache::response::meta_package_write('matchresponse'); |
} elsif ($target eq 'edit' ) { |
} elsif ($target eq 'edit' ) { |
$result.=&Apache::edit::start_table($token). |
$result.=&Apache::edit::start_table($token). |
'<tr><td>'.&Apache::lonxml::description($token)."</td><td>Delete:". |
'<tr><td>'.&Apache::lonxml::description($token).'</td>' |
&Apache::edit::deletelist($target,$token) |
.'<td><span class="LC_nobreak">'.&mt('Delete?').' ' |
."</td><td> ".&Apache::edit::end_row() |
.&Apache::edit::deletelist($target,$token) |
.&Apache::edit::start_spanning_row(); |
.'</span></td>' |
|
.'<td> '.&Apache::edit::end_row() |
|
.&Apache::edit::start_spanning_row(); |
|
|
$result.= |
$result.= |
&Apache::edit::text_arg('Max Number Of Shown Foils:','max',$token,'4'). |
&Apache::edit::text_arg('Max Number Of Shown Foils:','max',$token,'4'). |
&Apache::edit::select_arg('Randomize Foil Order','randomize', |
&Apache::edit::select_arg('Randomize Foil Order:','randomize', |
['yes','no'],$token). |
['yes','no'],$token). |
&Apache::edit::end_row().&Apache::edit::start_spanning_row()."\n"; |
&Apache::edit::end_row().&Apache::edit::start_spanning_row()."\n"; |
} elsif ($target eq 'modified') { |
} elsif ($target eq 'modified') { |
Line 100 sub start_itemgroup {
|
Line 103 sub start_itemgroup {
|
if ($target eq 'edit') { |
if ($target eq 'edit') { |
$result=&Apache::edit::tag_start($target,$token); |
$result=&Apache::edit::tag_start($target,$token); |
$result.=&Apache::edit::select_arg('Randomize Order:','randomize', |
$result.=&Apache::edit::select_arg('Randomize Order:','randomize', |
['yes','no'],$token); |
['yes','no'],$token).' 'x 3; |
$result.=&Apache::edit::select_arg('Items Display Location:', |
$result.=&Apache::edit::select_arg('Items Display Location:', |
'location', |
'location', |
['top','bottom','left','right'], |
['top','bottom','left','right'], |
$token); |
$token).' 'x 3; |
$result.=&Apache::edit::select_arg('Items Display Directection:', |
$result.=&Apache::edit::select_arg('Items Display Direction:', |
'direction', |
'direction', |
['vertical','horizontal'], |
['vertical','horizontal'], |
$token); |
$token); |
Line 195 sub start_item {
|
Line 198 sub start_item {
|
$result=&Apache::edit::tag_start($target,$token,"Item"); |
$result=&Apache::edit::tag_start($target,$token,"Item"); |
$result.=&Apache::edit::text_arg('Name:','name',$token); |
$result.=&Apache::edit::text_arg('Name:','name',$token); |
if ($randomize ne 'no') { |
if ($randomize ne 'no') { |
$result.=&Apache::edit::select_arg('Location:','location', |
$result.=' 'x 3 . |
|
&Apache::edit::select_arg('Location:','location', |
['random','top','bottom'], |
['random','top','bottom'], |
$token); |
$token); |
} |
} |
Line 251 sub start_foilgroup {
|
Line 255 sub start_foilgroup {
|
&Apache::response::pushrandomnumber(); |
&Apache::response::pushrandomnumber(); |
if ($target eq 'edit') { |
if ($target eq 'edit') { |
$result.=&Apache::edit::start_table($token) |
$result.=&Apache::edit::start_table($token) |
."<tr><td>Collection Of Foils</td><td>Delete:" |
.'<tr><td>'.&mt('Collection Of Foils').'</td>' |
|
.'<td><span class="LC_nobreak">'.&mt('Delete?') |
.&Apache::edit::deletelist($target,$token) |
.&Apache::edit::deletelist($target,$token) |
."</td><td> ".&Apache::edit::end_row() |
.'</span></td>' |
|
.'<td> '.&Apache::edit::end_row() |
.&Apache::edit::start_spanning_row()."\n"; |
.&Apache::edit::start_spanning_row()."\n"; |
} |
} |
return $result; |
return $result; |
Line 507 sub displayfoils {
|
Line 513 sub displayfoils {
|
$optionlist="<option></option>\n"; |
$optionlist="<option></option>\n"; |
} else { |
} else { |
if ($Apache::lonhomework::type ne 'exam') { |
if ($Apache::lonhomework::type ne 'exam') { |
$optionlist='\framebox[5 mm][s]{\tiny\strut}'; |
if($env{'form.pdfFormFields'} eq 'yes' |
} |
&& $Apache::inputtags::status['-1'] eq 'CAN_ANSWER') { |
|
my $fieldname = $env{'request.symb'} . '&part_'. $Apache::inputtags::part .'&matchresponse'. '&HWVAL_' . $Apache::inputtags::response['-1'] . ':' . $temp . '&submit_' . $Apache::inputtags::part . '&'; |
|
$optionlist = &Apache::lonxml::print_pdf_start_combobox($fieldname); |
|
} else { |
|
$optionlist='\framebox[10 mm][s]{\tiny\strut}'; |
|
} |
|
} |
} |
} |
my $option; |
my $option; |
foreach $option (@used_letters) { |
foreach $option (@used_letters) { |
if ($option eq $last_letter) { |
if ($option eq $last_letter) { |
if ($target ne 'tex') {$optionlist.="<option selected=\"on\">$option</option>\n";} |
if ($target ne 'tex') { |
|
$optionlist.="<option selected=\"on\">$option</option>\n"; |
|
} elsif ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes' |
|
&& $Apache::inputtags::status['-1'] eq 'CAN_ANSWER') { |
|
$optionlist .= &Apache::lonxml::print_pdf_add_combobox_option($option); |
|
} |
} else { |
} else { |
if ($target ne 'tex') {$optionlist.="<option>$option</option>\n";} |
if ($target ne 'tex') { |
|
$optionlist.="<option>$option</option>\n"; |
|
} elsif ($target eq 'tex' && $env{'form.pdfFormFields'} eq 'yes' |
|
&& $Apache::inputtags::status['-1'] eq 'CAN_ANSWER') { |
|
$optionlist .= &Apache::lonxml::print_pdf_add_combobox_option($option); |
|
} |
} |
} |
} |
} |
if ($target ne 'tex' && $Apache::lonhomework::type ne 'exam') { |
if ($target ne 'tex' && $Apache::lonhomework::type ne 'exam') { |
Line 558 sub displayfoils {
|
Line 580 sub displayfoils {
|
# Note that if left or right positioned, we must |
# Note that if left or right positioned, we must |
# confine the bubbles to righttabsize: |
# confine the bubbles to righttabsize: |
# |
# |
if ($Apache::lonhomework::type eq 'exam') { |
if ($Apache::lonhomework::type eq 'exam' && $env{'form.pdfFormFields'} ne 'yes') { |
$question.=' '.$optionlist.$text."\n"; |
$question.=' '.$optionlist.$text."\n"; |
my @emptyItems = (); |
my @emptyItems = (); |
for (my $i=0;$i<=$#used_letters;$i++) {push @emptyItems, ' ';} |
for (my $i=0;$i<=$#used_letters;$i++) {push @emptyItems, ' ';} |
Line 573 sub displayfoils {
|
Line 595 sub displayfoils {
|
$question .= '\end{list} \vskip -8 mm \strut '; |
$question .= '\end{list} \vskip -8 mm \strut '; |
$internal_counter++; |
$internal_counter++; |
} else { |
} else { |
$question.=' '.$optionlist.$text.'\strut\\\\\strut '."\n"; |
if($env{'form.pdfFormFields'} eq 'yes' |
|
&& $Apache::inputtags::status['-1'] eq 'CAN_ANSWER') { |
|
$question .= " $optionlist ". &Apache::lonxml::print_pdf_end_combobox($text).'\strut'; |
|
} else { |
|
$question.=' '.$optionlist.$text.'\strut\\\\\strut '."\n"; |
|
} |
} |
} |
} |
} |
$temp++; |
$temp++; |