Diff for /loncom/interface/lonprintout.pm between versions 1.551 and 1.554.2.1

version 1.551, 2009/04/20 09:57:17 version 1.554.2.1, 2009/06/17 10:21:33
Line 70  my $ssi_last_error;  # The error text fr Line 70  my $ssi_last_error;  # The error text fr
 my $ssi_retry_count = 5; # Some arbitrary value.  my $ssi_retry_count = 5; # Some arbitrary value.
   
   
   #  Font size:
   
   my $font_size = 'normalsize'; # Default is normalsize...
   
   
 # Fetch the contents of a resource, uninterpreted.  # Fetch the contents of a resource, uninterpreted.
 # This is used here to fetch a latex file to be included  # This is used here to fetch a latex file to be included
Line 114  sub annotate { Line 118  sub annotate {
     return $result;      return $result;
 }  }
   
   #
   #   Set a global document font size:
   #   This is done by replacing \begin{document}
   #   with \begin{document}{\some-font-directive
   #   and \end{document} with
   #   }\end{document
   #
   sub set_font_size {
   
       my ($text) = @_;
   
       $text =~ s/\\begin{document}/\\begin{document}{\\$font_size/;
       $text =~ s/\\end{document}/}\\end{document}/;
       return $text;
   
   
   }
   
 # include_pdf - PDF files are included into the   # include_pdf - PDF files are included into the 
 # output as follows:  # output as follows:
 #  - The PDF, if necessary, is replicated.  #  - The PDF, if necessary, is replicated.
Line 1474  sub print_construction_sequence { Line 1496  sub print_construction_sequence {
     }      }
  }   }
  elsif ($urlp =~ /\.pdf$/i) {   elsif ($urlp =~ /\.pdf$/i) {
     &Apache::lonnet::logthis("include_pdf 3");      my $texversion;
           if ($member != 0) {
     my $texversion = &include_pdf($urlp);   $texversion .= '\cleardoublepage';
       }
   
       $texversion .= &include_pdf($urlp);
     $texversion = &latex_header_footer_remove($texversion);      $texversion = &latex_header_footer_remove($texversion);
       if ($member != $#order) {
    $texversion .= '\\ \cleardoublepage';
       }
       
     $result .= $texversion;      $result .= $texversion;
  }   }
     }      }
Line 1728  ENDPART Line 1757  ENDPART
     $do_postprocessing = 0; # Don't massage the result.      $do_postprocessing = 0; # Don't massage the result.
   
  } elsif ($cleanURL =~ /\.pdf$/i) {   } elsif ($cleanURL =~ /\.pdf$/i) {
     &Apache::lonnet::logthis("include_pdf 1");  
     $result .= &include_pdf($cleanURL);      $result .= &include_pdf($cleanURL);
     $result .= '\end{document}';      $result .= '\end{document}';
  } else {   } else {
Line 1824  ENDPART Line 1852  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 =~ s/\\begin{document}//;
     my $title = &Apache::lonnet::gettitle($master_seq[$i]);      my $title = &Apache::lonnet::gettitle($master_seq[$i]);
     $title = &Apache::lonxml::latex_special_symbols($title);      $title = &Apache::lonxml::latex_special_symbols($title);
     my $body ='\vskip 0 mm \noindent\textbf{'.$title.'}\vskip 0 mm ';      my $body ='\vskip 0 mm \noindent\textbf{'.$title.'}\vskip 0 mm ';
Line 1859  ENDPART Line 1888  ENDPART
   $assignment,     $assignment, 
   $courseidinfo,     $courseidinfo, 
   $name);    $name);
   
     if ($numberofcolumns eq '1') {      if ($numberofcolumns eq '1') {
  $result .='\newpage \noindent\parbox{\minipagewidth}{\noindent\\lhead{'.$header_text.'}} \vskip 5 mm ';   $result .='\newpage \noindent\parbox{\minipagewidth}{\noindent\\lhead{'.$header_text.'}} \vskip 5 mm ';
     } else {      } else {
Line 1888  ENDPART Line 1918  ENDPART
  if ($i > 0) {   if ($i > 0) {
     $result .= '\cleardoublepage';      $result .= '\cleardoublepage';
  }   }
  &Apache::lonnet::logthis("include_pdf 2");  
   
  $result .= &include_pdf($urlp);   $result .= &include_pdf($urlp);
  if ($i != $#master_seq) {   if ($i != $#master_seq) {
     if ($numberofcolumns eq '1') {      if ($numberofcolumns eq '1') {
Line 1970  ENDPART Line 1998  ENDPART
  my @master_seq=split /\|\|\|/, $helper->{'VARS'}->{'RESOURCES'};   my @master_seq=split /\|\|\|/, $helper->{'VARS'}->{'RESOURCES'};
   
  #loop over students   #loop over students
  my $flag_latex_header_remove = 'NO';    my $flag_latex_header_remove = 'NO';
  my %moreenv;   my %moreenv;
          $moreenv{'instructor_comments'}='hide';           $moreenv{'instructor_comments'}='hide';
  $moreenv{'textwidth'}=&get_textwidth($helper,$LaTeXwidth);   $moreenv{'textwidth'}=&get_textwidth($helper,$LaTeXwidth);
Line 2216  ENDPART Line 2244  ENDPART
     $URLback=~s|^/~|/priv/|;      $URLback=~s|^/~|/priv/|;
  }   }
     }      }
       #
       # Final adjustment of the font size:
       #
   
       $result = set_font_size($result);
   
 #-- writing .tex file in prtspool   #-- writing .tex file in prtspool 
     my $temp_file;      my $temp_file;
Line 2300  ENDPART Line 2333  ENDPART
     # If there's been an unrecoverable SSI error, report it to the user      # If there's been an unrecoverable SSI error, report it to the user
     if ($ssi_error) {      if ($ssi_error) {
         my $helpurl = &Apache::loncommon::top_nav_help('Helpdesk');          my $helpurl = &Apache::loncommon::top_nav_help('Helpdesk');
         $r->print('<br /><h2>'.&mt('An unrecoverable network error occurred:').'</h2><p>  '.          $r->print('<br /><p class="LC_error">'.&mt('An unrecoverable network error occurred:').'</p><p>'.
                   &mt('At least one of the resources you chose to print could not be rendered due to an unrecoverable error when communicating with a server:').                    &mt('At least one of the resources you chose to print could not be rendered due to an unrecoverable error when communicating with a server:').
                   '<br />'.$ssi_last_error_resource.'<br />'.$ssi_last_error.                    '<br />'.$ssi_last_error_resource.'<br />'.$ssi_last_error.
                   '</p><p>'.&mt('You can continue using the link provided below, but make sure to carefully inspect your output file! The errors will be marked in the file.').'<br />'.                    '</p><p>'.&mt('You can continue using the link provided below, but make sure to carefully inspect your output file! The errors will be marked in the file.').'<br />'.
Line 2407  sub print_resources { Line 2440  sub print_resources {
   
           
     my $header =&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'});      my $header =&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'});
       $header =~ s/\\begin{document}//;     #<<<<<
     my $title = &Apache::lonnet::gettitle($curresline);      my $title = &Apache::lonnet::gettitle($curresline);
     $title = &Apache::lonxml::latex_special_symbols($title);      $title = &Apache::lonxml::latex_special_symbols($title);
     my $body   ='\vskip 0 mm \noindent\textbf{'.$title.'}\vskip 0 mm ';      my $body   ='\vskip 0 mm \noindent\textbf{'.$title.'}\vskip 0 mm ';
Line 2442  sub print_resources { Line 2476  sub print_resources {
  $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 ';
    } elsif($res_url = ~/\.pdf$/) {
       my $url = &Apache::lonnet::clutter($res_url);
       my $rendered  = &include_pdf($url);
       if ($remove_latex_header ne 'NO') {
    $rendered = &latex_header_footer_remove($rendered);
       }
       $current_output .= $rendered;
  } 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') {
Line 2457  sub print_resources { Line 2497  sub print_resources {
  }    } 
  if (&Apache::loncommon::connection_aborted($r)) { last; }   if (&Apache::loncommon::connection_aborted($r)) { last; }
     }      }
   
   
     my $courseidinfo = &get_course();      my $courseidinfo = &get_course();
     my $currentassignment=&Apache::lonxml::latex_special_symbols($helper->{VARS}->{'assignment'},'header');      my $currentassignment=&Apache::lonxml::latex_special_symbols($helper->{VARS}->{'assignment'},'header');
     my $header_line =      my $header_line =
Line 2465  sub print_resources { Line 2507  sub print_resources {
     my $header_start = ($columns_in_format == 1) ? '\lhead'      my $header_start = ($columns_in_format == 1) ? '\lhead'
                                          : '\fancyhead[LO]';                                           : '\fancyhead[LO]';
     $header_line = $header_start.'{'.$header_line.'}';      $header_line = $header_start.'{'.$header_line.'}';
   
     if ($current_output=~/\\documentclass/) {      if ($current_output=~/\\documentclass/) {
  $current_output =~ s/\\begin{document}/\\setlength{\\topmargin}{1cm} \\begin{document}\\noindent\\parbox{\\minipagewidth}{\\noindent$header_line$namepostfix}\\vskip 5 mm /;   $current_output =~ s/\\begin{document}/\\setlength{\\topmargin}{1cm} \\begin{document}\\noindent\\parbox{\\minipagewidth}{\\noindent$header_line$namepostfix}\\vskip 5 mm /;
     } else {      } else {
Line 3536  sub render { Line 3577  sub render {
     my $i;      my $i;
     for ($i = 1; $i <= $maxColumns; $i++) {      for ($i = 1; $i <= $maxColumns; $i++) {
         if ($i == 2) {          if ($i == 2) {
             $result .= "<option value='$i' selected>$i</option>\n";              $result .= '<option value="'.$i.'" selected="selected">'.$i.'</option>'."\n";
         } else {          } else {
             $result .= "<option value='$i'>$i</option>\n";              $result .= '<option value="'.$i.'">'.$i.'</option>'."\n";
         }          }
     }      }
   
Line 3554  sub render { Line 3595  sub render {
  $_=~/(\w+)/;   $_=~/(\w+)/;
  my $papersize=$1;   my $papersize=$1;
         if ($paperSize[$i]=~/$DefaultPaperSize/) {          if ($paperSize[$i]=~/$DefaultPaperSize/) {
             $result .= "<option selected value='$papersize'>" . $paperSize[$i] . "</option>\n";              $result .= '<option selected="selected" value="'.$papersize.'">'.$paperSize[$i].'</option>'."\n";
         } else {          } else {
             $result .= "<option value='$papersize'>" . $paperSize[$i] . "</option>\n";              $result .= '<option value="'.$papersize.'">'.$paperSize[$i].'</option>'."\n";
         }          }
         $i++;          $i++;
     }      }
Line 3565  sub render { Line 3606  sub render {
     </td>      </td>
     <td align='center'>      <td align='center'>
         <select name='${var}.pdfFormFields'>          <select name='${var}.pdfFormFields'>
             <option selected value='no'>$without</option>              <option selected="selected" value="no">$without</option>
             <option value='yes'>$with</option>              <option value="yes">$with</option>
         </select>          </select>
     </td>      </td>
 HTML  HTML

Removed from v.1.551  
changed lines
  Added in v.1.554.2.1


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