--- loncom/homework/edit.pm 2002/03/22 14:45:11 1.31 +++ loncom/homework/edit.pm 2002/10/25 19:02:38 1.37 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # edit mode helpers # -# $Id: edit.pm,v 1.31 2002/03/22 14:45:11 matthew Exp $ +# $Id: edit.pm,v 1.37 2002/10/25 19:02:38 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -31,7 +31,8 @@ package Apache::edit; use strict; -use Apache::lonnet; +use Apache::lonnet(); +use HTML::Entities(); # Global Vars # default list of colors to use in editing @@ -164,9 +165,12 @@ sub get_insert_list { } } if (@tagnums) { + my %options; foreach my $tagnum (@tagnums) { - $result.='\n"; + my $descrip=$Apache::lonxml::insertlist{"$tagnum.description"}; + $options{$descrip} ="\n"; } + foreach my $option (sort(keys(%options))) { $result.=$options{$option}; } if ($result) { $result=''.$result; } } return $result; @@ -245,6 +249,13 @@ sub insert_stringresponse { '; } +sub insert_essayresponse { + return ' + + +'; +} + sub insert_optionresponse { return ' @@ -281,6 +292,12 @@ sub insert_numericalhint { '; } +sub insert_radiobuttonhint { + return ' + +'; +} + sub insert_startouttext { return "\n"; } @@ -301,8 +318,9 @@ sub textarea_sizes { return ($rows,$cols); } -sub textfield { +sub editline { my ($tag,$data,$description,$size)=@_; + $data=&HTML::Entities::encode($data); if ($description) { $description="
".$description."
"; } my $result = <<"END"; $description @@ -320,7 +338,9 @@ sub editfield { if ($cols < $minwidth ) { $cols = $minwidth; } if ($rows < $minheight) { $rows = $minheight; } if ($description) { $description="
".$description."
"; } - return "$description\n   \n"; + return $description."\n".'   '."\n"; } sub modifiedfield { @@ -419,7 +439,7 @@ sub select_or_text_arg { } } $optionlist.="\n"; - if ($found) { + if (($found) || (!$selected)) { $result.=$description.''; @@ -563,8 +583,8 @@ search($elementname) : provide a link wh searcher (lonsearchcat) and, once a file is selected, place the result in the form element $elementname. -= item * -textfield(tag,data,description,size): Provide a for +=item * +editline(tag,data,description,size): Provide a for single-line text entry. This is to be used for text enclosed by tags, not arguements/parameters associated with a tag.