Diff for /loncom/homework/edit.pm between versions 1.57.2.4 and 1.58

version 1.57.2.4, 2003/10/16 18:36:22 version 1.58, 2003/07/29 15:05:53
Line 63  sub tag_start { Line 63  sub tag_start {
   &deletelist($target,$token)    &deletelist($target,$token)
   ."</td>    ."</td>
 <td>".  <td>".
     &insertlist($target,$token).&end_row().&start_spanning_row();      &insertlist($target,$token);
 #<td>".   #<td>". 
 #  &movebuttons($target,$token).  #  &movebuttons($target,$token).
 #    "</tr><tr><td colspan=\"3\">\n";  #    "</tr><tr><td colspan=\"3\">\n";
       my @help = Apache::lonxml::helpinfo($token);
       if ($help[0]) {
    $result .= '<td align="right" valign="top">' .
       Apache::loncommon::help_open_topic(@help) .
       '</td>';
       } else { $result .= "<td>&nbsp;</td>"; }
       $result .= &end_row().&start_spanning_row();
   }    }
   return $result;    return $result;
 }  }
Line 119  sub end_table { Line 126  sub end_table {
   return $result;    return $result;
 }  }
   
 sub start_spanning_row { return '<tr><td colspan="3" bgcolor="#DDDDDD">';}  sub start_spanning_row { return '<tr><td colspan="4" bgcolor="#DDDDDD">';}
 sub start_row          { return '<tr><td bgcolor="#DDDDDD">';            }  sub start_row          { return '<tr><td bgcolor="#DDDDDD">';            }
 sub end_row            { return '</td></tr>';          }  sub end_row            { return '</td></tr>';          }
   
Line 458  sub modifiedfield { Line 465  sub modifiedfield {
 # Returns a 1 if the token has been modified and you should rebuild the tag  # Returns a 1 if the token has been modified and you should rebuild the tag
 # side-effects, will modify the $token if new values are found  # side-effects, will modify the $token if new values are found
 sub get_new_args {  sub get_new_args {
     my ($token,$parstack,$safeeval,@args)=@_;    my ($token,$parstack,$safeeval,@args)=@_;
     my $rebuild=0;    my $rebuild=0;
     foreach my $arg (@args) {    foreach my $arg (@args) {
     #just want the string that it was set to      #just want the string that it was set to
     my $value=$token->[2]->{$arg};      my $value=$token->[2]->{$arg};
     my $element=&html_element_name($arg);      my $element=&html_element_name($arg);
     my $newvalue=$ENV{"form.$element"};      my $newvalue=$ENV{"form.$element"};
     &Apache::lonxml::debug(" for:$arg: cur is :$value: new is :$newvalue:");      &Apache::lonxml::debug(" for:$arg: cur is :$value: new is :$newvalue:");
     if (defined($newvalue) && $value ne $newvalue) {      if (defined($newvalue) && $value ne $newvalue) {
  if (ref($newvalue) eq 'ARRAY') {        $token->[2]->{$arg}=$newvalue;
     $token->[2]->{$arg}=join(',',@$newvalue);        $rebuild=1;
  } else {  
     $token->[2]->{$arg}=$newvalue;  
  }  
  $rebuild=1;  
     }      }
   }    }
   return $rebuild;    return $rebuild;
Line 515  sub hidden_arg { Line 518  sub hidden_arg {
     return $result;      return $result;
 }  }
   
 sub checked_arg {  
     my ($description,$name,$list,$token) = @_;  
     my $result;  
     my $optionlist="";  
     my $allselected=$token->[2]{$name};  
     $result=$description;  
     foreach my $option (@$list) {  
  my ($value,$text);  
  if ( ref($option) eq 'ARRAY') {  
     $value='value="'.$$option[0].'"';  
     $text=$$option[1];  
     $option=$$option[0];  
  } else {  
     $text=$option;  
     $value='value="'.$option.'"';  
  }  
  $result.="<nobr><input type='checkbox' $value name='".  
     &html_element_name($name)."'";  
  foreach my $selected (split(/,/,$allselected)) {  
     if ( $selected eq $option ) {  
  $result.=" checked='on' ";  
  last;  
     }  
  }  
  $result.=" />$text</nobr>\n";  
     }  
     return $result;  
 }  
   
 sub text_arg {  sub text_arg {
   my ($description,$name,$token,$size) = @_;    my ($description,$name,$token,$size) = @_;
   my $result;    my $result;
Line 560  sub select_arg { Line 534  sub select_arg {
     my $optionlist="";      my $optionlist="";
     my $selected=$token->[2]{$name};      my $selected=$token->[2]{$name};
     foreach my $option (@$list) {      foreach my $option (@$list) {
  my ($text,$value);   my $value;
  if ( ref($option) eq 'ARRAY') {   if ( ref($option) eq 'ARRAY') {
     $value='value="'.$$option[0].'"';      $value='value="'.$$option[0].'"';
     $text=$$option[1];      $option=$$option[1];
     $option=$$option[0];  
  } else {   } else {
     $text=$option;  
     $value='value="'.$option.'"';      $value='value="'.$option.'"';
  }   }
  if ( $selected eq $option ) {   if ( $selected eq $option ) {
     $optionlist.="<option $value selected=\"on\">$text</option>\n";      $optionlist.="<option $value selected=\"on\">$option</option>\n";
  } else {   } else {
     $optionlist.="<option $value >$text</option>\n";      $optionlist.="<option $value >$option</option>\n";
  }   }
     }      }
     $result.='<nobr>'.$description.'&nbsp;<select name="'.      $result.='<nobr>'.$description.'&nbsp;<select name="'.
Line 589  sub select_or_text_arg { Line 561  sub select_or_text_arg {
     my $found=0;      my $found=0;
     my $selected=$token->[2]{$name};      my $selected=$token->[2]{$name};
     foreach my $option (@$list) {      foreach my $option (@$list) {
  my ($text,$value);   my $value;
  if ( ref($option) eq 'ARRAY') {   if ( ref($option) eq 'ARRAY') {
     $value='value="'.$$option[0].'"';      $value='value="'.$$option[0].'"';
     $text=$$option[1];      $option=$$option[1];
     $option=$$option[0];  
  } else {   } else {
     $text=$option;  
     $value='value="'.$option.'"';      $value='value="'.$option.'"';
  }   }
  if ( $selected eq $option ) {   if ( $selected eq $option ) {
     $optionlist.="<option $value selected=\"on\">$text</option>\n";      $optionlist.="<option $value selected=\"on\">$option</option>\n";
     $found=1;      $found=1;
  } else {   } else {
     $optionlist.="<option $value>$text</option>\n";      $optionlist.="<option $value>$option</option>\n";
  }   }
     }      }
     $optionlist.="<option value=\"TYPEDINVALUE\">Type in value</option>\n";      $optionlist.="<option value=\"TYPEDINVALUE\">Type in value</option>\n";

Removed from v.1.57.2.4  
changed lines
  Added in v.1.58


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>