--- loncom/homework/inputtags.pm 2002/12/05 22:59:37 1.77 +++ loncom/homework/inputtags.pm 2003/04/02 19:51:24 1.86 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # input definitons # -# $Id: inputtags.pm,v 1.77 2002/12/05 22:59:37 albertel Exp $ +# $Id: inputtags.pm,v 1.86 2003/04/02 19:51:24 sakharuk Exp $ # # Copyright Michigan State University Board of Trustees # @@ -30,6 +30,7 @@ package Apache::inputtags; use HTML::Entities(); use strict; +use Apache::loncommon; BEGIN { &Apache::lonxml::register('Apache::inputtags',('textfield','textline')); @@ -92,17 +93,17 @@ sub start_textfield { "rows=\"$rows\" cols=\"$cols\">".$oldresponse; if ($oldresponse ne '') { #get rid of any startup text if the user has already responded - &Apache::lonxml::get_all_text("/textfield",$$parser[-1]); + &Apache::lonxml::get_all_text("/textfield",$parser); } } else { #right or wrong don't show it #$result='
'.$oldresponse.'
'; $result=''; #get rid of any startup text - &Apache::lonxml::get_all_text("/textfield",$$parser[-1]); + &Apache::lonxml::get_all_text("/textfield",$parser); } } elsif ($target eq 'grade') { - my $seedtext=&Apache::lonxml::get_all_text("/textfield",$$parser[-1]); + my $seedtext=&Apache::lonxml::get_all_text("/textfield",$parser); if ($seedtext eq $ENV{'form.HWVAL'.$resid}) { # if the seed text is still there it wasn't a real submission $ENV{'form.HWVAL'.$resid}=''; @@ -111,7 +112,7 @@ sub start_textfield { $result.=&Apache::edit::tag_start($target,$token); $result.=&Apache::edit::text_arg('Rows:','rows',$token,4); $result.=&Apache::edit::text_arg('Columns:','cols',$token,4); - my $bodytext=&Apache::lonxml::get_all_text("/textfield",$$parser[-1]); + my $bodytext=&Apache::lonxml::get_all_text("/textfield",$parser); $result.=&Apache::edit::editfield($token->[1],$bodytext,'Text you want to appear by default:',80,2); } elsif ($target eq 'modified') { my $constructtag=&Apache::edit::get_new_args($token,$parstack, @@ -122,6 +123,13 @@ sub start_textfield { $result=$token->[4]; } $result.=&Apache::edit::modifiedfield(); + } elsif ($target eq 'tex') { + if ($$tagstack[-2] eq 'essayresponse' and $Apache::lonhomework::type eq 'exam') { + my $number_of_lines= &Apache::lonxml::get_param('rows',$parstack,$safeeval); + $result = '\fbox{\fbox{\parbox{\textwidth-5mm}{'; + for (my $i=0;$i