Diff for /loncom/homework/edit.pm between versions 1.119 and 1.135

version 1.119, 2008/12/10 21:02:01 version 1.135, 2011/08/09 16:12:21
Line 26 Line 26
 # http://www.lon-capa.org/  # http://www.lon-capa.org/
 #  #
   
   =pod
   
 =head1 NAME  =head1 NAME
   
 Apache::edit - edit mode helpers  Apache::edit - edit mode helpers
Line 202  sub start_table { Line 204  sub start_table {
     $Apache::edit::colordepth++;      $Apache::edit::colordepth++;
     push(@Apache::edit::inserttag,$token->[1]);      push(@Apache::edit::inserttag,$token->[1]);
     my $result='<div align="right">';      my $result='<div align="right">';
     $result.='<table bgcolor="'.$color.'" width="97%" border="0" cellspacing="5" cellpadding="3">';      $result.='<table bgcolor="'.$color.'" width="97%" border="0" cellspacing="3" cellpadding="2">';
     return $result;      return $result;
 }  }
   
Line 230  sub end_table { Line 232  sub end_table {
     return $result;      return $result;
 }  }
   
 sub start_spanning_row { return '<tr><td colspan="5" bgcolor="#DDDDDD">';}  sub start_spanning_row { return '<tr><td colspan="5" bgcolor="#F0F0F0">';}
 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 355  sub do_insert { Line 357  sub do_insert {
  my $depth = scalar(@Apache::lonxml::depthcounter);   my $depth = scalar(@Apache::lonxml::depthcounter);
  $depth -- if ($after);   $depth -- if ($after);
  my $inset = "\t"x$depth;   my $inset = "\t"x$depth;
  $result.="\n$inset<$newtag>\n$inset</$newtag>";   $result.="\n$inset<$newtag></$newtag>";
     } else {      } else {
  if (defined(&$func)) {   if (defined(&$func)) {
     {      {
Line 395  sub insert_formularesponse { Line 397  sub insert_formularesponse {
 </formularesponse>';  </formularesponse>';
 }  }
   
   sub insert_functionplotresponse {
       return '
   <functionplotresponse>
   <functionplotelements>
   <spline />
   </functionplotelements>
   <functionplotruleset>
   <functionplotrule />
   </functionplotruleset>
   </functionplotresponse>';
   }
   
   sub insert_spline {
       return '
   <spline />';
   }
   
   sub insert_backgroundplot {
       return '
   <backgroundplot />';
   }
   
   sub insert_functionplotrule {
       return '
   <functionplotrule />';
   }
   
   sub insert_functionplotruleset {
       return '
   <functionplotruleset>
   <functionplotrule />
   </functionplotruleset>';
   }
   
   sub insert_functionplotelements {
       return '
   <functionplotelements>
   <spline />
   </functionplotelements>';
   }
   
 sub insert_numericalresponse {  sub insert_numericalresponse {
     return '      return '
 <numericalresponse answer="">  <numericalresponse answer="">
Line 590  sub insert_matchresponse { Line 633  sub insert_matchresponse {
 </matchresponse>';  </matchresponse>';
 }  }
   
   sub insert_startpartmarker { return '<startpartmarker />'; }
   sub insert_endpartmarker { return '<endpartmarker />'; }
   
 sub insert_displayduedate { return '<displayduedate />'; }  sub insert_displayduedate { return '<displayduedate />'; }
 sub insert_displaytitle   { return '<displaytitle />'; }  sub insert_displaytitle   { return '<displaytitle />'; }
 sub insert_hintpart {  sub insert_hintpart {
Line 612  sub insert_numericalhint { Line 658  sub insert_numericalhint {
 </numericalhint>';  </numericalhint>';
 }  }
   
   sub insert_reactionhint {
       return '
   <reactionhint>
   </reactionhint>';
   }
   
   sub insert_organichint {
       return '
   <organichint>
   </organichint>';
   }
   
 sub insert_stringhint {  sub insert_stringhint {
     return '      return '
 <stringhint>  <stringhint>
Line 683  sub submit_ask_anyway { Line 741  sub submit_ask_anyway {
     return ' onclick="still_ask=true;'.$extra_action.'" ';      return ' onclick="still_ask=true;'.$extra_action.'" ';
 }  }
   
   sub submit_dont_ask {
       my ($extra_action) = @_;
       return ' onclick="is_submit=true;'.$extra_action.'" ';
   }
   
   
 sub textarea_sizes {  sub textarea_sizes {
     my ($data)=@_;      my ($data)=@_;
     my $count=0;      my $count=0;
Line 714  sub editfield { Line 778  sub editfield {
     my ($tag,$data,$description,$minwidth,$minheight,$usehtmlarea)=@_;      my ($tag,$data,$description,$minwidth,$minheight,$usehtmlarea)=@_;
   
     my ($rows,$cols)=&textarea_sizes(\$data);      my ($rows,$cols)=&textarea_sizes(\$data);
     if (&Apache::lonhtmlcommon::htmlareabrowser() &&      my $textareaclass;
  !&Apache::lonhtmlcommon::htmlareablocked()) {   
       if (&Apache::lonhtmlcommon::htmlareabrowser() && $usehtmlarea) { 
  $rows+=7;      # make room for HTMLarea   $rows+=7;      # make room for HTMLarea
  $minheight+=7; # make room for HTMLarea   $minheight+=7; # make room for HTMLarea
           $textareaclass = ' class="LC_richDefaultOff"';
     }      }
     if ($cols > 80) { $cols = 80; }      if ($cols > 80) { $cols = 80; }
     if ($cols < $minwidth ) { $cols = $minwidth; }      if ($cols < $minwidth ) { $cols = $minwidth; }
     if ($rows < $minheight) { $rows = $minheight; }      if ($rows < $minheight) { $rows = $minheight; }
     if ($description) { $description=$description."<br />"; }      if ($description) { $description=$description."<br />"; }
     if ($usehtmlarea) {  
  &Apache::lonhtmlcommon::add_htmlareafields('homework_edit_'.  
    $Apache::lonxml::curdepth);  
     }  
     # remove typesetting whitespace from between data and the end tag      # remove typesetting whitespace from between data and the end tag
     # to make the edit look prettier      # to make the edit look prettier
     $data =~ s/\n?[ \t]*$//;      $data =~ s/\n?[ \t]*$//;
   
     return $description."\n".'<textarea style="width:100%" rows="'.$rows.      return $description."\n".'<textarea style="width:99%" rows="'.$rows.
  '" cols="'.$cols.'" name="homework_edit_'.   '" cols="'.$cols.'" name="homework_edit_'.
  $Apache::lonxml::curdepth.'" id="homework_edit_'.   $Apache::lonxml::curdepth.'" id="homework_edit_'.
  $Apache::lonxml::curdepth.'" '.&element_change_detection().'>'.   $Apache::lonxml::curdepth.'" '.&element_change_detection().
           $textareaclass.'>'.
  &HTML::Entities::encode($data,'<>&"').'</textarea>'.   &HTML::Entities::encode($data,'<>&"').'</textarea>'.
  ($usehtmlarea?&Apache::lonhtmlcommon::spelllink('lonhomework',   ($usehtmlarea?&Apache::lonhtmlcommon::spelllink('lonhomework',
  'homework_edit_'.$Apache::lonxml::curdepth):'')."\n";   'homework_edit_'.$Apache::lonxml::curdepth):'')."\n";
Line 871  sub select_arg { Line 935  sub select_arg {
     my $result;      my $result;
     my $optionlist="";      my $optionlist="";
     my $selected=$token->[2]{$name};      my $selected=$token->[2]{$name};
     foreach my $option (@$list) {      if (ref($list) eq 'ARRAY') {
  my ($text,$value);          foreach my $option (@{$list}) {
  if ( ref($option) eq 'ARRAY') {      my ($text,$value);
     $value='value="'.&HTML::Entities::encode($$option[0]).'"';      if (ref($option) eq 'ARRAY') {
     $text=$$option[1];          $value='value="'.&HTML::Entities::encode($option->[0]).'"';
     $option=$$option[0];          $text=$option->[1];
  } else {          $option=$option->[0];
     $text=$option;      } else {
     $value='value="'.&HTML::Entities::encode($option,'\'"&<>').'"';          $text=$option;
  }          $value='value="'.&HTML::Entities::encode($option,'\'"&<>').'"';
  if ( $selected eq $option ) {      }
     $optionlist.="<option $value selected=\"selected\">".&mt($text)."</option>\n";      if ( $selected eq $option ) {
  } else {          $optionlist.="<option $value selected=\"selected\">".&mt($text)."</option>\n";
     $optionlist.="<option $value >".&mt($text)."</option>\n";      } else {
  }          $optionlist.="<option $value >".&mt($text)."</option>\n";
       }
           }
     }      }
     $result.='<span class="LC_nobreak>'.&mt($description).'&nbsp;<select name="'.      $result.='<span class="LC_nobreak">'.&mt($description).'&nbsp;<select name="'.
  &html_element_name($name).'" '.&element_change_detection().' >   &html_element_name($name).'" '.&element_change_detection().' >
        '.$optionlist.'         '.$optionlist.'
       </select></span>';        </select></span>';
Line 900  sub select_or_text_arg { Line 966  sub select_or_text_arg {
     my $optionlist="";      my $optionlist="";
     my $found=0;      my $found=0;
     my $selected=$token->[2]{$name};      my $selected=$token->[2]{$name};
     foreach my $option (@$list) {      if (ref($list) eq 'ARRAY') {
  my ($text,$value);          foreach my $option (@{$list}) {
  if ( ref($option) eq 'ARRAY') {      my ($text,$value);
     $value='value="'.&HTML::Entities::encode($$option[0]).'"';      if (ref($option) eq 'ARRAY') {
     $text=$$option[1];          $value='value="'.&HTML::Entities::encode($option->[0]).'"';
     $option=$$option[0];          $text=$option->[1];
  } else {          $option=$option->[0];
     $text=$option;      } else {
     $value='value="'.&HTML::Entities::encode($option,'\'"&<>').'"';          $text=$option;
  }          $value='value="'.&HTML::Entities::encode($option,'\'"&<>').'"';
  if ( $selected eq $option ) {      }
     $optionlist.="<option $value selected=\"selected\">$text</option>\n";      if ( $selected eq $option ) {
     $found=1;          $optionlist.="<option $value selected=\"selected\">$text</option>\n";
  } else {          $found=1;
     $optionlist.="<option $value>$text</option>\n";      } else {
  }          $optionlist.="<option $value>$text</option>\n";
       }
           }
     }      }
     $optionlist.="<option value=\"TYPEDINVALUE\"".      $optionlist.="<option value=\"TYPEDINVALUE\"".
   ((!$found)?' selected="selected"':'').    ((!$found)?' selected="selected"':'').
Line 1023  sub entercoord { Line 1091  sub entercoord {
 }  }
   
 sub deletecoorddata {  sub deletecoorddata {
     &Apache::lonnet::delenv("imagechoice\\.");      &Apache::lonnet::delenv('imagechoice.');
 }  }
   
 #----------------------------------------------------- browse  #----------------------------------------------------- browse

Removed from v.1.119  
changed lines
  Added in v.1.135


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