Diff for /loncom/interface/lonprintout.pm between versions 1.208 and 1.212

version 1.208, 2003/08/02 13:57:05 version 1.212, 2003/08/13 19:38:16
Line 465  sub page_format { Line 465  sub page_format {
 sub get_name {  sub get_name {
     my ($uname,$udom)=@_;      my ($uname,$udom)=@_;
     if (!defined($uname)) { $uname=$ENV{'user.name'}; }      if (!defined($uname)) { $uname=$ENV{'user.name'}; }
     if (!defined($udom)) { $uname=$ENV{'user.domain'}; }      if (!defined($udom)) { $udom=$ENV{'user.domain'}; }
     my $plainname=&Apache::loncommon::plainname($uname,$udom);      my $plainname=&Apache::loncommon::plainname($uname,$udom);
     if ($plainname=~/^\s*$/) { $plainname=$uname; }      if ($plainname=~/^\s*$/) { $plainname=$uname; }
     return &Apache::lonxml::latex_special_symbols($plainname,undef,undef,      return &Apache::lonxml::latex_special_symbols($plainname,'header');
   'header');  
 }  }
   
   
 sub page_format_transformation {  sub page_format_transformation {
     my ($papersize,$layout,$numberofcolumns,$choice,$text,$assignment) = @_;       my ($papersize,$layout,$numberofcolumns,$choice,$text,$assignment,$tableofcontents) = @_; 
     my ($textwidth,$textheight,$oddoffset,$evenoffset,$topmargin);      my ($textwidth,$textheight,$oddoffset,$evenoffset,$topmargin);
  $assignment=~s/_/ /g;   $assignment=~s/_/ /g;
         if ($numberofcolumns != 1) {          if ($numberofcolumns != 1) {
Line 484  sub page_format_transformation { Line 483  sub page_format_transformation {
  }   }
     my $name = &get_name();      my $name = &get_name();
     if ($name =~ /^\s*$/) {      if ($name =~ /^\s*$/) {
  $name=&Apache::lonxml::latex_special_symbols($ENV{'user.name'},undef,   $name=&Apache::lonxml::latex_special_symbols($ENV{'user.name'},'header');
      undef,'header');  
     }      }
     my $courseidinfo = &Apache::lonxml::latex_special_symbols(&Apache::lonnet::unescape($ENV{'course.'.$ENV{'request.course.id'}.'.description'}),'','','header');      my $courseidinfo = &Apache::lonxml::latex_special_symbols(&Apache::lonnet::unescape($ENV{'course.'.$ENV{'request.course.id'}.'.description'}),'header');
     if ($layout eq 'album') {      if ($layout eq 'album') {
  my $topmargintoinsert = '';   my $topmargintoinsert = '';
  if ($topmargin ne '0') {$topmargintoinsert='\setlength{\topmargin}{'.$topmargin.'}';}   if ($topmargin ne '0') {$topmargintoinsert='\setlength{\topmargin}{'.$topmargin.'}';}
Line 499  sub page_format_transformation { Line 497  sub page_format_transformation {
     $text =~ s/\\pagestyle{fancy}\\rhead{}\\chead{}\s*\\begin{document}/\\textheight = $textheight\\oddsidemargin = $evenoffset\\evensidemargin = $evenoffset\\textwidth= $textwidth\\newlength{\\minipagewidth}\\setlength{\\minipagewidth}{\\textwidth\/\$number_of_columns-0\.2cm}\\renewcommand{\\ref}{\\keephidden\}\\pagestyle{fancy}\\rhead{}\\chead{}\\begin{document}\\voffset=-0\.8cm\\setcounter{page}{1}  \\vskip 5 mm /;      $text =~ s/\\pagestyle{fancy}\\rhead{}\\chead{}\s*\\begin{document}/\\textheight = $textheight\\oddsidemargin = $evenoffset\\evensidemargin = $evenoffset\\textwidth= $textwidth\\newlength{\\minipagewidth}\\setlength{\\minipagewidth}{\\textwidth\/\$number_of_columns-0\.2cm}\\renewcommand{\\ref}{\\keephidden\}\\pagestyle{fancy}\\rhead{}\\chead{}\\begin{document}\\voffset=-0\.8cm\\setcounter{page}{1}  \\vskip 5 mm /;
  }   }
     }      }
       if ($tableofcontents eq 'yes') {$text=~s/(\\begin{document})/$1 \\tableofcontents \\vskip 0\.5mm\\noindent\\makebox\[\\textwidth\/1\]\[b\]{\\hrulefill}/;}
     return $text;      return $text;
 }  }
   
Line 713  ENDPART Line 712  ENDPART
     if (($selectionmade == 4) and ($assignment ne $prevassignment) and ($i>=1)) {      if (($selectionmade == 4) and ($assignment ne $prevassignment) and ($i>=1)) {
  my $name = &get_name();   my $name = &get_name();
  if ($name =~ /^\s*$/) {   if ($name =~ /^\s*$/) {
     $name=&Apache::lonxml::latex_special_symbols($ENV{'user.name'},undef,      $name=&Apache::lonxml::latex_special_symbols($ENV{'user.name'},'header');
  undef,'header');  
  }   }
  my $courseidinfo = &Apache::lonxml::latex_special_symbols(&Apache::lonnet::unescape($ENV{'course.'.$ENV{'request.course.id'}.'.description'}),'','','header');   my $courseidinfo = &Apache::lonxml::latex_special_symbols(&Apache::lonnet::unescape($ENV{'course.'.$ENV{'request.course.id'}.'.description'}),'header');
  $prevassignment=$assignment;   $prevassignment=$assignment;
  $result .='\newpage \noindent\parbox{\minipagewidth}{\noindent\\lhead{\\textit{\\textbf{'.$name.'}} - '.$courseidinfo.' \\hfill \\thepage \\\\ \\textit{'.$assignment.'}}} \vskip -5 mm ';   $result .='\newpage \noindent\parbox{\minipagewidth}{\noindent\\lhead{\\textit{\\textbf{'.$name.'}} - '.$courseidinfo.' \\hfill \\thepage \\\\ \\textit{'.$assignment.'}}} \vskip -5 mm ';
     }      }
Line 849  ENDPART Line 847  ENDPART
  $result .= '\end{document}';         $result .= '\end{document}';      
     }      }
 #-------------------------------------------------------- corrections for the different page formats  #-------------------------------------------------------- corrections for the different page formats
     $result = &page_format_transformation($papersize,$laystyle,$numberofcolumns,$helper->{'VARS'}->{'PRINT_TYPE'},$result,$helper->{VARS}->{'assignment'});      $result = &page_format_transformation($papersize,$laystyle,$numberofcolumns,$helper->{'VARS'}->{'PRINT_TYPE'},$result,$helper->{VARS}->{'assignment'},$helper->{'VARS'}->{'TABLE_CONTENTS'});
     $result = &latex_corrections($number_of_columns,$result);      $result = &latex_corrections($number_of_columns,$result);
     #changes page's parameters for the one column output       #changes page's parameters for the one column output 
     if ($numberofcolumns == 1) {      if ($numberofcolumns == 1) {
Line 858  ENDPART Line 856  ENDPART
  $result =~ s/\\evensidemargin = -0\.57in/\\evensidemargin= $helper->{'VARS'}->{'pagesize.lmargin'} $helper->{'VARS'}->{'pagesize.lmarginunit'} /;   $result =~ s/\\evensidemargin = -0\.57in/\\evensidemargin= $helper->{'VARS'}->{'pagesize.lmargin'} $helper->{'VARS'}->{'pagesize.lmarginunit'} /;
  $result =~ s/\\oddsidemargin = -0\.57in/\\oddsidemargin= $helper->{'VARS'}->{'pagesize.lmargin'} $helper->{'VARS'}->{'pagesize.lmarginunit'} /;   $result =~ s/\\oddsidemargin = -0\.57in/\\oddsidemargin= $helper->{'VARS'}->{'pagesize.lmargin'} $helper->{'VARS'}->{'pagesize.lmarginunit'} /;
     }      }
       if ($helper->{'VARS'}->{'TABLE_CONTENTS'} eq 'yes') {$selectionmade+=10;}
 #-- writing .tex file in prtspool   #-- writing .tex file in prtspool 
     my $temp_file;      my $temp_file;
     my $filename = "/home/httpd/prtspool/$ENV{'user.name'}_$ENV{'user.domain'}_printout_".time."_".rand(10000000).".tex";      my $filename = "/home/httpd/prtspool/$ENV{'user.name'}_$ENV{'user.domain'}_printout_".time."_".rand(10000000).".tex";
Line 867  ENDPART Line 866  ENDPART
     }       } 
     print $temp_file $result;      print $temp_file $result;
   
 #<meta http-equiv="Refresh" content="0; url=/cgi-bin/printout.pl?$filename&$laystyle&$numberofcolumns&$selectionmade">  
 $r->print(<<FINALEND);  $r->print(<<FINALEND);
 <meta http-equiv="Refresh" content="0; url=/cgi-bin/printout.pl?$filename&$laystyle&$numberofcolumns&$selectionmade">  <meta http-equiv="Refresh" content="0; url=/cgi-bin/printout.pl?$filename&$laystyle&$numberofcolumns&$selectionmade">
 </body>  </body>
Line 1155  CHOOSE_FROM_SUBDIR Line 1153  CHOOSE_FROM_SUBDIR
     if (($ENV{'request.role.adv'} and &Apache::lonnet::allowed('vgr',$ENV{'request.course.id'})) or       if (($ENV{'request.role.adv'} and &Apache::lonnet::allowed('vgr',$ENV{'request.course.id'})) or 
  ($helper->{VARS}->{'construction'} eq '1')) {   ($helper->{VARS}->{'construction'} eq '1')) {
         $paramHash = Apache::lonhelper::getParamHash();          $paramHash = Apache::lonhelper::getParamHash();
         $paramHash->{MESSAGE_TEXT} = "<br /><big><b><i>Next option is available only for advanced users:</i></b></big><br />";          $paramHash->{MESSAGE_TEXT} = "<br /><big><b><i>Next option is available only for advanced users:  </i></b></big>";
         Apache::lonhelper::message->new();          Apache::lonhelper::message->new();
         $paramHash = Apache::lonhelper::getParamHash();          $paramHash = Apache::lonhelper::getParamHash();
  $paramHash->{'variable'} = 'ANSWER_TYPE';      $paramHash->{'variable'} = 'ANSWER_TYPE';   
Line 1163  CHOOSE_FROM_SUBDIR Line 1161  CHOOSE_FROM_SUBDIR
         $paramHash->{CHOICES} = [          $paramHash->{CHOICES} = [
                                    ['Print without answer', 'yes'],                                     ['Print without answer', 'yes'],
                                    ['Print with answers', 'no'] ];                                     ['Print with answers', 'no'] ];
         Apache::lonhelper::choices->new();          Apache::lonhelper::dropdown->new();
     }      }
   
     if ($ENV{'request.role.adv'}) {      if ($ENV{'request.role.adv'}) {
         $paramHash = Apache::lonhelper::getParamHash();          $paramHash = Apache::lonhelper::getParamHash();
         $paramHash->{MESSAGE_TEXT} = "<br /><big><b><i>Another option available only for advanced users:</i></b></big><br />";          $paramHash->{MESSAGE_TEXT} = "<br /><big><b><i>Another option available only for advanced users:  </i></b></big>";
         Apache::lonhelper::message->new();          Apache::lonhelper::message->new();
         $paramHash = Apache::lonhelper::getParamHash();          $paramHash = Apache::lonhelper::getParamHash();
  $paramHash->{'variable'} = 'LATEX_TYPE';      $paramHash->{'variable'} = 'LATEX_TYPE';   
Line 1181  CHOOSE_FROM_SUBDIR Line 1180  CHOOSE_FROM_SUBDIR
      ['Print in LaTeX batchmode', 'batchmode'],       ['Print in LaTeX batchmode', 'batchmode'],
      ['Print in standard LaTeX mode', 'standard'] ];       ['Print in standard LaTeX mode', 'standard'] ];
  }   }
         Apache::lonhelper::choices->new();          Apache::lonhelper::dropdown->new();
     }       } 
   
       
           $paramHash = Apache::lonhelper::getParamHash();
           $paramHash->{MESSAGE_TEXT} = "<br /><big><b>Print with <i>Table of Contents:  </i></b></big>";
           Apache::lonhelper::message->new();
           $paramHash = Apache::lonhelper::getParamHash();
    $paramHash->{'variable'} = 'TABLE_CONTENTS';   
    $helper->declareVar('TABLE_CONTENTS');         
           $paramHash->{CHOICES} = [
                                      ['No', 'no'],
                                      ['Yes', 'yes'] ];
           Apache::lonhelper::dropdown->new();
   
   
     Apache::lonprintout::page_format_state->new("FORMAT");      Apache::lonprintout::page_format_state->new("FORMAT");
   
     # Generate the PAGESIZE state which will offer the user the margin      # Generate the PAGESIZE state which will offer the user the margin

Removed from v.1.208  
changed lines
  Added in v.1.212


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