version 1.12, 2001/06/05 16:32:01
|
version 1.13, 2001/06/11 16:13:53
|
Line 42 sub insert_optionresponse {
|
Line 42 sub insert_optionresponse {
|
|
|
%Apache::response::foilgroup={}; |
%Apache::response::foilgroup={}; |
sub start_foilgroup { |
sub start_foilgroup { |
|
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; |
|
|
|
my $result=''; |
%Apache::response::foilgroup={}; |
%Apache::response::foilgroup={}; |
$Apache::optionresponse::conceptgroup=0; |
$Apache::optionresponse::conceptgroup=0; |
&Apache::response::setrandomnumber(); |
&Apache::response::setrandomnumber(); |
return ''; |
if ($target eq 'edit') { |
|
my $optionlist="<option></option>\n"; |
|
my $option; |
|
my @opt; |
|
eval '@opt ='. &Apache::lonxml::get_param('options',$parstack,$safeeval); |
|
|
|
foreach $option (@opt) { |
|
$optionlist.="<option>$option</option>\n"; |
|
} |
|
my $insertlist=&Apache::edit::insertlist($target,$token); |
|
$result.= (<<ENDTABLE); |
|
<table width="100%" border="2"> |
|
<tr><td>Select Options</td> |
|
<td> |
|
Add new Option: <input type="text" name="$Apache::lonxml::curdepth.options" /> |
|
</td> |
|
<td>Delete an Option: |
|
<select name="$Apache::lonxml::curdepth.deleteopt">$optionlist</select> |
|
</td> |
|
</tr> |
|
<tr><td colspan="3">$insertlist<br /> |
|
ENDTABLE |
|
} |
|
if ($target eq 'modified') { |
|
my @options; |
|
eval '@options ='.&Apache::lonxml::get_param('options',$parstack,$safeeval); |
|
if ($ENV{"form.$Apache::lonxml::curdepth.options"}) { |
|
my $newopt = $ENV{"form.$Apache::lonxml::curdepth.options"}; |
|
$newopt =~ s/\'/\\\'/g; |
|
if ($options[0]) { |
|
push(@options,$ENV{"form.$Apache::lonxml::curdepth.options"}); |
|
} else { |
|
$options[0]=$ENV{"form.$Apache::lonxml::curdepth.options"}; |
|
} |
|
$result = "<foilgroup options=\"("; |
|
foreach my $option (@options) { |
|
&Apache::lonxml::debug("adding option :$option:"); |
|
$result .="'".$option."',"; |
|
} |
|
chop $result; |
|
$result.=')">'; |
|
} |
|
} |
|
return $result; |
} |
} |
|
|
sub end_foilgroup { |
sub end_foilgroup { |
Line 57 sub end_foilgroup {
|
Line 103 sub end_foilgroup {
|
my ($count,$max) = &getfoilcounts($parstack,$safeeval); |
my ($count,$max) = &getfoilcounts($parstack,$safeeval); |
if ($count>$max) { $count=$max } |
if ($count>$max) { $count=$max } |
&Apache::lonxml::debug("Count is $count from $max"); |
&Apache::lonxml::debug("Count is $count from $max"); |
my $args =''; |
|
if ( $#$parstack > 0 ) { $args=$$parstack['-1']; } |
|
my @opt; |
my @opt; |
eval '@opt ='.&Apache::run::run("{$args;".'return $options}',$safeeval); |
eval '@opt ='.&Apache::lonxml::get_param('options',$parstack,$safeeval); |
|
&Apache::lonxml::debug("Options are $#opt"); |
if ($target eq 'web') { |
if ($target eq 'web') { |
$result=&displayfoils($count,@opt); |
$result=&displayfoils($count,@opt); |
} elsif ( $target eq 'grade') { |
} elsif ( $target eq 'grade') { |
Line 176 sub end_conceptgroup {
|
Line 221 sub end_conceptgroup {
|
|
|
sub start_foil { |
sub start_foil { |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; |
|
my $result=''; |
if ($target eq 'web') { &Apache::lonxml::startredirection; } |
if ($target eq 'web') { &Apache::lonxml::startredirection; } |
return ''; |
if ($target eq 'edit') { |
|
$result=&Apache::edit::tag_start($target,$token,"Foil"); |
|
my $options= &Apache::lonxml::get_param('options',$parstack,$safeeval); |
|
my @opt; |
|
eval '@opt ='.$options; |
|
} |
|
return $result; |
} |
} |
|
|
sub end_foil { |
sub end_foil { |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; |
my $text =''; |
my $text =''; |
|
my $result = ''; |
if ($target eq 'web') { $text=&Apache::lonxml::endredirection; } |
if ($target eq 'web') { $text=&Apache::lonxml::endredirection; } |
if ($target eq 'web' || $target eq 'grade') { |
if ($target eq 'web' || $target eq 'grade') { |
my $value = &Apache::lonxml::get_param('value',$parstack,$safeeval); |
my $value = &Apache::lonxml::get_param('value',$parstack,$safeeval); |
if ($value ne 'unused') { |
if ($value ne 'unused') { |
my $name = &Apache::lonxml::get_param('name',$parstack,$safeeval); |
my $name = &Apache::lonxml::get_param('name',$parstack,$safeeval); |
|
if (!$name) { $name=$Apache::lonxml::curdepth; } |
if ( $Apache::optionresponse::conceptgroup ) { |
if ( $Apache::optionresponse::conceptgroup ) { |
push @{ $Apache::response::conceptgroup{'names'} }, $name; |
push @{ $Apache::response::conceptgroup{'names'} }, $name; |
$Apache::response::conceptgroup{"$name.value"} = $value; |
$Apache::response::conceptgroup{"$name.value"} = $value; |
Line 200 sub end_foil {
|
Line 254 sub end_foil {
|
} |
} |
} |
} |
if ($target eq 'edit') { |
if ($target eq 'edit') { |
my $args; |
$result.= &Apache::edit::tag_end($target,$token,''); |
my $options= &Apache::lonxml::get_param('options',$parstack,$safeeval); |
|
if (!$options && $#$parstack > 2 ) { $args=$$parstack['-2']; } |
|
my @opt; |
|
#eval '@opt ='. |
|
} |
} |
return ''; |
return $result; |
} |
} |
|
|
sub insert_foil { |
sub insert_foil { |
return ' |
return ' |
<foil name="" value=""> |
<foil name="" value=""> |
|
<starttextarea /> |
|
<endtextarea /> |
</foil>'; |
</foil>'; |
} |
} |
1; |
1; |