Diff for /loncom/interface/lonprintout.pm between versions 1.418 and 1.423

version 1.418, 2006/01/27 22:07:10 version 1.423, 2006/02/24 22:37:45
Line 226  sub latex_header_footer_remove { Line 226  sub latex_header_footer_remove {
     $text =~ s/\\documentclass([^&]*)\\begin{document}//;      $text =~ s/\\documentclass([^&]*)\\begin{document}//;
     return $text;      return $text;
 }  }
   #
   #  If necessary, encapsulate text inside 
   #  a minipage env.
   #  necessity is determined by the problem_split param.
   #
   sub encapsulate_minipage {
       my ($text) = @_;
       if (!(env{'form.problem.split'} =~ /yes/i)) {
    $text = '\begin{minipage}{\textwidth}'.$text.'\end{minipage}';
       }
       return $text;
   }
   
   
 sub character_chart {  sub character_chart {
Line 751  sub details_for_menu { Line 763  sub details_for_menu {
   
 sub latex_corrections {  sub latex_corrections {
     my ($number_of_columns,$result,$selectionmade,$answer_mode) = @_;      my ($number_of_columns,$result,$selectionmade,$answer_mode) = @_;
   
 #    $result =~ s/\\includegraphics{/\\includegraphics\[width=\\minipagewidth\]{/g;  #    $result =~ s/\\includegraphics{/\\includegraphics\[width=\\minipagewidth\]{/g;
     $result =~ s/\$number_of_columns/$number_of_columns/g;      $result =~ s/\$number_of_columns/$number_of_columns/g;
     if ($selectionmade eq '1' || $answer_mode eq 'only') {      if ($selectionmade eq '1' || $answer_mode eq 'only') {
Line 781  sub latex_corrections { Line 792  sub latex_corrections {
     }      }
     $result =~ s/(\\end{tabular})\s*\\vskip 0 mm/$1/g;      $result =~ s/(\\end{tabular})\s*\\vskip 0 mm/$1/g;
     $result =~ s/(\\begin{enumerate})\s*\\noindent/$1/g;      $result =~ s/(\\begin{enumerate})\s*\\noindent/$1/g;
   
     return $result;      return $result;
 }  }
   
Line 906  sub unsupported { Line 916  sub unsupported {
     } else {      } else {
  $result.=$currentURL;   $result.=$currentURL;
     }      }
     # TODO:  /2 used to be /$number_of_columns which we don'thave      $result.= '\vskip 0.5mm\noindent\makebox[\textwidth/$number_of_columns][b]{\hrulefill} \end{document}';
     #        access to and therefore now causes latex to fail.  
     #        need to figure out exactly what we should divide by.  
     $result.= '\vskip 0.5mm\noindent\makebox[\textwidth/2][b]{\hrulefill} \end{document}';  
     return $result;      return $result;
 }  }
   
Line 1121  ENDPART Line 1128  ENDPART
  &Apache::lonnet::delenv('form.counter');   &Apache::lonnet::delenv('form.counter');
  &Apache::lonnet::delenv('request.filename');   &Apache::lonnet::delenv('request.filename');
     }      }
       # current document with answers.. no need to encap in minipage
       #  since there's only one answer.
   
     if(($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') ||      if(($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') ||
        ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'only')) {         ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'only')) {
  $form{'problem_split'}=$parmhash{'problem_stream_switch'};   $form{'problem_split'}=$parmhash{'problem_stream_switch'};
Line 1197  ENDPART Line 1207  ENDPART
  if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') {   if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') {
     $texversion=~s/(\\keephidden{ENDOFPROBLEM})/$answer$1/;      $texversion=~s/(\\keephidden{ENDOFPROBLEM})/$answer$1/;
  } else {   } else {
       # If necessary, encapsulate answer in minipage:
   
     $texversion=&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'});      $texversion=&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'});
     $texversion.='\vskip 0 mm \noindent\textbf{'.&Apache::lonnet::gettitle($helper->{'VARS'}->{'symb'}).'}\vskip 0 mm ';      my $body ='\vskip 0 mm \noindent\textbf{'.&Apache::lonnet::gettitle($helper->{'VARS'}->{'symb'}).'}\vskip 0 mm ';
     $texversion.=&path_to_problem($urlp,$LaTeXwidth);      $body.=&path_to_problem($urlp,$LaTeXwidth);
     $texversion.='\vskip 1 mm '.$answer.'\end{document}';      $body.='\vskip 1 mm '.$answer.'\end{document}';
       $body = &encapsulate_minipage($body);
       $texversion.=$body;
  }   }
     }      }
     if ($flag_latex_header_remove ne 'NO') {      if ($flag_latex_header_remove ne 'NO') {
Line 1310  ENDPART Line 1324  ENDPART
     } else {      } else {
  if ($urlp=~/\.(problem|exam|quiz|assess|survey|form|library)$/) {   if ($urlp=~/\.(problem|exam|quiz|assess|survey|form|library)$/) {
     $texversion=&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'});      $texversion=&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'});
     $texversion.='\vskip 0 mm \noindent\textbf{'.&Apache::lonnet::gettitle($master_seq[$i]).'}\vskip 0 mm ';      my $body ='\vskip 0 mm \noindent\textbf{'.&Apache::lonnet::gettitle($master_seq[$i]).'}\vskip 0 mm ';
     $texversion.=&path_to_problem ($urlp,$LaTeXwidth);      $body   .= &path_to_problem ($urlp,$LaTeXwidth);
     $texversion.='\vskip 1 mm '.$answer;      $body   .='\vskip 1 mm '.$answer;
       $body    = &encapsulate_minipage($body);
       $texversion .= $body;
  } else {   } else {
     $texversion='';      $texversion='';
  }   }
Line 1423  ENDPART Line 1439  ENDPART
      $person,$type,       $person,$type,
      \%moreenv,\@master_seq,       \%moreenv,\@master_seq,
      $flag_latex_header_remove,       $flag_latex_header_remove,
      $LaTeXwidth,       $LaTeXwidth);
      $number_of_columns);  
      $resources_printed .= ":";       $resources_printed .= ":";
      $print_array[$i].=$output;       $print_array[$i].=$output;
      $student_names[$i].=$person.':'.$fullname.'_END_';       $student_names[$i].=$person.':'.$fullname.'_END_';
Line 1456  ENDPART Line 1471  ENDPART
  }   }
  my %moreenv = ('textwidth' => &get_textwidth($helper,$LaTeXwidth));   my %moreenv = ('textwidth' => &get_textwidth($helper,$LaTeXwidth));
  $moreenv{'problem_split'}    = $parmhash{'problem_stream_switch'};   $moreenv{'problem_split'}    = $parmhash{'problem_stream_switch'};
            $moreenv{'instructor_comments'}='hide';
  my $seed=time+($$<<16)+($$);   my $seed=time+($$<<16)+($$);
  my @allcodes;   my @allcodes;
  if ($old_name) {   if ($old_name) {
Line 1729  sub get_CODE { Line 1745  sub get_CODE {
   
 sub print_resources {  sub print_resources {
     my ($r,$helper,$person,$type,$moreenv,$master_seq,$remove_latex_header,      my ($r,$helper,$person,$type,$moreenv,$master_seq,$remove_latex_header,
  $LaTeXwidth,$number_of_columns)=@_;   $LaTeXwidth)=@_;
     my $current_output = '';       my $current_output = ''; 
     my $printed = '';      my $printed = '';
     my ($username,$userdomain,$usersection) = split /:/,$person;      my ($username,$userdomain,$usersection) = split /:/,$person;
Line 1782  sub print_resources { Line 1798  sub print_resources {
  if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') {   if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') {
     $rendered=~s/(\\keephidden{ENDOFPROBLEM})/$ansrendered$1/;      $rendered=~s/(\\keephidden{ENDOFPROBLEM})/$ansrendered$1/;
  } else {   } else {
     $rendered=&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'});  
     $rendered.='\vskip 0 mm \noindent\textbf{'.&Apache::lonnet::gettitle($curresline).'}\vskip 0 mm ';      
     $rendered.=&path_to_problem($res_url,$LaTeXwidth);      my $header =&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'});
     $rendered.='\vskip 1 mm '.$ansrendered;      my $body   ='\vskip 0 mm \noindent\textbf{'.&Apache::lonnet::gettitle($curresline).'}\vskip 0 mm ';
       $body     .=&path_to_problem($res_url,$LaTeXwidth);    
       $body     .='\vskip 1 mm '.$ansrendered;
       $body     = &encapsulate_minipage($body);
       $rendered = $header.$body;
  }   }
     }      }
     if ($remove_latex_header eq 'YES') {      if ($remove_latex_header eq 'YES') {
Line 1807  sub print_resources { Line 1827  sub print_resources {
     } else {      } else {
  $rendered =~ s/\\end{document}//;   $rendered =~ s/\\end{document}//;
     }      }
     $current_output .= $rendered.'\vskip 0.5mm\noindent\makebox[\textwidth/'.$number_of_columns.'][b]{\hrulefill}\strut \vskip 0 mm \strut ';      $current_output .= $rendered.'\vskip 0.5mm\noindent\makebox[\textwidth/$number_of_columns][b]{\hrulefill}\strut \vskip 0 mm \strut ';
   
  } else {   } else {
     my $rendered = &unsupported($res_url,$helper->{'VARS'}->{'LATEX_TYPE'},$curresline);      my $rendered = &unsupported($res_url,$helper->{'VARS'}->{'LATEX_TYPE'},$curresline);
     if ($remove_latex_header ne 'NO') {      if ($remove_latex_header ne 'NO') {

Removed from v.1.418  
changed lines
  Added in v.1.423


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