--- loncom/homework/edit.pm 2001/07/13 16:15:01 1.18 +++ loncom/homework/edit.pm 2001/08/13 21:43:48 1.21 @@ -202,6 +202,9 @@ sub insert_optionresponse { '; } +sub insert_displayduedate { return ''; } +sub insert_displaytitle { return ''; } + sub editfield { my ($tag,$data,$description,$minwidth,$minheight)=@_; @@ -253,7 +256,8 @@ sub get_new_args { my ($token,$parstack,$safeeval,@args)=@_; my $rebuild=0; foreach my $arg (@args) { - my $value=&Apache::lonxml::get_param($arg,$parstack,$safeeval); + #just want the string that it was set to + my $value=$token->[2]->{$arg}; my $newvalue=$ENV{"form.$Apache::lonxml::curdepth.$arg"}; &Apache::lonxml::debug(" for:$arg: cur is :$value: new is :$newvalue:"); if ($value ne $newvalue) { @@ -271,7 +275,7 @@ sub rebuild_tag { if ($token->[0] eq 'S') { $result = '<'.$token->[1]; while (my ($key,$val)= each(%{$token->[2]})) { - $val=~s:^\s|\s$::g; + $val=~s:^\s+|\s+$::g; $val=~s:"::g; #" &Apache::lonxml::debug("setting :$key: to :$val:"); $result.=' '.$key.'="'.$val.'"'; @@ -315,5 +319,29 @@ sub select_arg { return $result; } +sub select_or_text_arg { + my ($description,$name,$list,$token,$size) = @_; + my $result; + my $optionlist=""; + my $found=0; + my $selected=$token->[2]{$name}; + foreach my $option (@$list) { + if ( $selected eq $option ) { + $optionlist.="\n"; + $found=1; + } else { + $optionlist.="\n"; + } + } + $optionlist.="\n"; + if ($found) { + $result.=$description.''; + } else { + $result.=&text_arg($description,$name,$token,$size); + } + return $result; +} 1; __END__