Diff for /loncom/interface/lonprintout.pm between versions 1.397 and 1.403

version 1.397, 2005/10/31 21:48:07 version 1.403, 2005/12/06 16:23:26
Line 433  sub character_chart { Line 433  sub character_chart {
     $result =~ s/&(\#252|uuml);/\\\"{u}/g;      $result =~ s/&(\#252|uuml);/\\\"{u}/g;
     $result =~ s/&(\#253|yacute);/\\\'{y}/g;      $result =~ s/&(\#253|yacute);/\\\'{y}/g;
     $result =~ s/&(\#255|yuml);/\\\"{y}/g;      $result =~ s/&(\#255|yuml);/\\\"{y}/g;
       $result =~ s/&\#295;/\\ensuremath\{\\hbar\}/g;
     $result =~ s/&\#952;/\\ensuremath\{\\theta\}/g;      $result =~ s/&\#952;/\\ensuremath\{\\theta\}/g;
 #Greek Alphabet  #Greek Alphabet
     $result =~ s/&(alpha|\#945);/\\ensuremath\{\\alpha\}/g;      $result =~ s/&(alpha|\#945);/\\ensuremath\{\\alpha\}/g;
Line 907  sub unsupported { Line 908  sub unsupported {
 #  #
 # List of recently generated print files  # List of recently generated print files
 #  #
   
 sub recently_generated {  sub recently_generated {
     my $r=shift;      my $r=shift;
     my $prtspool=$r->dir_config('lonPrtDir');      my $prtspool=$r->dir_config('lonPrtDir');
     my $result;      my $zip_result;
       my $pdf_result;
     opendir(DIR,$prtspool);      opendir(DIR,$prtspool);
     while (my $filename=readdir(DIR)) {  
  if ($filename=~/^$env{'user.name'}\_$env{'user.domain'}\_printout\_(\d+)\_.*.pdf$/) {      my @files = 
     my ($cdev,$cino,$cmode,$cnlink,   grep(/^$env{'user.name'}_$env{'user.domain'}_printout_(\d+)_.*\.(pdf|zip)$/,readdir(DIR));
  $cuid,$cgid,$crdev,$csize,  
  $catime,$cmtime,$cctime,  
  $cblksize,$cblocks)=stat($prtspool.'/'.$filename);  
             $result.="<a href='/prtspool/$filename'>".  
  &mt('Generated [_1] ([_2] bytes)',  
     &Apache::lonlocal::locallocaltime($cctime),$csize).  
     '</a><br />';  
  }  
     }  
     closedir(DIR);      closedir(DIR);
     if ($result) {  
  $r->print('<h4>'.&mt('Recently generated printouts').'</h4>'."\n".      @files = sort {
   $result);   my ($actime) = (stat($prtspool.'/'.$a))[10];
    my ($bctime) = (stat($prtspool.'/'.$b))[10];
    return $bctime <=> $actime;
       } (@files);
   
       foreach my $filename (@files) {
    my ($ext) = ($filename =~ m/(pdf|zip)$/);
    my ($cdev,$cino,$cmode,$cnlink,
       $cuid,$cgid,$crdev,$csize,
       $catime,$cmtime,$cctime,
       $cblksize,$cblocks)=stat($prtspool.'/'.$filename);
    my $result="<a href='/prtspool/$filename'>".
       &mt('Generated [_1] ([_2] bytes)',
    &Apache::lonlocal::locallocaltime($cctime),$csize).
    '</a><br />';
    if ($ext eq 'pdf') { $pdf_result .= $result; }
    if ($ext eq 'zip') { $zip_result .= $result; }
       }
       if ($zip_result) {
    $r->print('<h4>'.&mt('Recently generated printout zip files')."</h4>\n"
     .$zip_result);
       }
       if ($pdf_result) {
    $r->print('<h4>'.&mt('Recently generated printouts')."</h4>\n"
     .$pdf_result);
     }      }
 }  }
   
Line 989  $html Line 1005  $html
 <title>LON-CAPA output for printing</title>  <title>LON-CAPA output for printing</title>
 </head>  </head>
 $bodytag  $bodytag
   <p>
 Please stand by while processing your print request, this may take some time ...  Please stand by while processing your print request, this may take some time ...
   </p>
 ENDPART  ENDPART
   
   
Line 1082  ENDPART Line 1100  ENDPART
  &Apache::lonnet::appenv(%moreenv);   &Apache::lonnet::appenv(%moreenv);
  &Apache::lonnet::delenv('form.counter');   &Apache::lonnet::delenv('form.counter');
  &Apache::lonxml::init_counter();   &Apache::lonxml::init_counter();
    &Apache::lonxml::store_counter();
  $resources_printed .= $currentURL.':';   $resources_printed .= $currentURL.':';
  $texversion.=&Apache::lonnet::ssi($currentURL,%form);   $texversion.=&Apache::lonnet::ssi($currentURL,%form);
  &Apache::lonnet::delenv('form.counter');   &Apache::lonnet::delenv('form.counter');
Line 1093  ENDPART Line 1112  ENDPART
  $form{'grade_target'}='answer';   $form{'grade_target'}='answer';
  $form{'answer_output_mode'}='tex';   $form{'answer_output_mode'}='tex';
  $form{'rndseed'}=$rndseed;   $form{'rndseed'}=$rndseed;
                   if ($helper->{'VARS'}->{'probstatus'} eq 'exam') {
       $form{'problemtype'}='exam';
    }
  $resources_printed .= $currentURL.':';   $resources_printed .= $currentURL.':';
  my $answer=&Apache::lonnet::ssi($currentURL,%form);   my $answer=&Apache::lonnet::ssi($currentURL,%form);
  if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') {   if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') {
Line 1221  ENDPART Line 1243  ENDPART
  my $prevassignment='';   my $prevassignment='';
  &Apache::lonnet::delenv('form.counter');   &Apache::lonnet::delenv('form.counter');
  &Apache::lonxml::init_counter();   &Apache::lonxml::init_counter();
    &Apache::lonxml::store_counter();
  for (my $i=0;$i<=$#master_seq;$i++) {   for (my $i=0;$i<=$#master_seq;$i++) {
   
     # Note due to document structure, not allowed to put \newpage      # Note due to document structure, not allowed to put \newpage
Line 1241  ENDPART Line 1264  ENDPART
     my $texversion='';      my $texversion='';
     if ($urlp=~/\.(problem|exam|quiz|assess|survey|form|library|page|xml|html|htm|xhtml|xhtm)$/) {      if ($urlp=~/\.(problem|exam|quiz|assess|survey|form|library|page|xml|html|htm|xhtml|xhtm)$/) {
  $resources_printed .= $urlp.':';   $resources_printed .= $urlp.':';
    my $pre_counter=$env{'form.counter'};
  $texversion.=&Apache::lonnet::ssi($urlp,%form);   $texversion.=&Apache::lonnet::ssi($urlp,%form);
  if ($urlp=~/\.page$/) {   if ($urlp=~/\.page$/) {
     ($texversion,my $number_of_columns_page) = &page_cleanup($texversion);      ($texversion,my $number_of_columns_page) = &page_cleanup($texversion);
Line 1248  ENDPART Line 1272  ENDPART
     $texversion =~ s/\\end{document}\d*/\\end{document}/;      $texversion =~ s/\\end{document}\d*/\\end{document}/;
     $flag_page_in_sequence = 'YES';      $flag_page_in_sequence = 'YES';
  }    } 
  my $lonidsdir=$r->dir_config('lonIDsDir');   my ($envfile) = ($env{'user.environment'} =~m|/([^/]+)\.id$| );
  my $envfile=$env{'user.environment'};   &Apache::lonnet::transfer_profile_to_env($r->dir_config('lonIDsDir'),
  $envfile=~/\/([^\/]+)\.id$/;   $envfile);
  $envfile=$1;  
  &Apache::lonnet::transfer_profile_to_env($lonidsdir,$envfile);  
  my $current_counter=$env{'form.counter'};   my $current_counter=$env{'form.counter'};
  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')) {
Line 1261  ENDPART Line 1283  ENDPART
     $answerform{'grade_target'}='answer';      $answerform{'grade_target'}='answer';
     $answerform{'answer_output_mode'}='tex';      $answerform{'answer_output_mode'}='tex';
     $resources_printed .= $urlp.':';      $resources_printed .= $urlp.':';
       &Apache::lonnet::appenv(('form.counter' => $pre_counter));
     my $answer=&Apache::lonnet::ssi($urlp,%answerform);      my $answer=&Apache::lonnet::ssi($urlp,%answerform);
     &Apache::lonnet::appenv(('form.counter' => $current_counter));      &Apache::lonnet::appenv(('form.counter' => $current_counter));
     if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') {      if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') {
Line 1690  sub print_resources { Line 1713  sub print_resources {
     #current student, and produces output         #current student, and produces output   
     &Apache::lonnet::delenv('form.counter');      &Apache::lonnet::delenv('form.counter');
     &Apache::lonxml::init_counter();      &Apache::lonxml::init_counter();
       &Apache::lonxml::store_counter();
     my %page_breaks  = &get_page_breaks($helper);      my %page_breaks  = &get_page_breaks($helper);
   
     foreach my $curresline (@{$master_seq})  {      foreach my $curresline (@{$master_seq})  {
Line 1706  sub print_resources { Line 1729  sub print_resources {
     if (&Apache::lonnet::allowed('bre',$res_url)) {      if (&Apache::lonnet::allowed('bre',$res_url)) {
  if ($res_url=~/\.(problem|exam|quiz|assess|survey|form|library|page|xml|html|htm|xhtml|xhtm)$/) {   if ($res_url=~/\.(problem|exam|quiz|assess|survey|form|library|page|xml|html|htm|xhtml|xhtm)$/) {
     $printed .= $curresline.':';      $printed .= $curresline.':';
       my $pre_counter=$env{'form.counter'};
     my $rendered = &Apache::loncommon::get_student_view($curresline,$username,$userdomain,$env{'request.course.id'},'tex',$moreenv);      my $rendered = &Apache::loncommon::get_student_view($curresline,$username,$userdomain,$env{'request.course.id'},'tex',$moreenv);
     my $lonidsdir=$r->dir_config('lonIDsDir');      my ($envfile) =
     my $envfile=$env{'user.environment'};   ( $env{'user.environment'} =~ m|/([^/]+)\.id$| );
     $envfile=~/\/([^\/]+)\.id$/;      &Apache::lonnet::transfer_profile_to_env($r->dir_config('lonIDsDir'),
     $envfile=$1;       $envfile);
     &Apache::lonnet::transfer_profile_to_env($lonidsdir,$envfile);  
     my $current_counter=$env{'form.counter'};      my $current_counter=$env{'form.counter'};
     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')) {
Line 1719  sub print_resources { Line 1742  sub print_resources {
  my %answerenv = %{$moreenv};   my %answerenv = %{$moreenv};
  $answerenv{'answer_output_mode'}='tex';   $answerenv{'answer_output_mode'}='tex';
  $answerenv{'latex_type'}=$helper->{'VARS'}->{'LATEX_TYPE'};   $answerenv{'latex_type'}=$helper->{'VARS'}->{'LATEX_TYPE'};
    &Apache::lonnet::appenv(('form.counter' => $pre_counter));
  my $ansrendered = &Apache::loncommon::get_student_answers($curresline,$username,$userdomain,$env{'request.course.id'},%answerenv);   my $ansrendered = &Apache::loncommon::get_student_answers($curresline,$username,$userdomain,$env{'request.course.id'},%answerenv);
  &Apache::lonnet::appenv(('form.counter' => $current_counter));   &Apache::lonnet::appenv(('form.counter' => $current_counter));
  if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') {   if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') {
Line 1739  sub print_resources { Line 1763  sub print_resources {
  } elsif ($res_url=~/\/(smppg|syllabus|aboutme|bulletinboard)$/) {   } elsif ($res_url=~/\/(smppg|syllabus|aboutme|bulletinboard)$/) {
     $printed .= $curresline.':';      $printed .= $curresline.':';
     my $rendered = &Apache::loncommon::get_student_view($curresline,$username,$userdomain,$env{'request.course.id'},'tex',$moreenv);      my $rendered = &Apache::loncommon::get_student_view($curresline,$username,$userdomain,$env{'request.course.id'},'tex',$moreenv);
     my $lonidsdir=$r->dir_config('lonIDsDir');      my ($envfile) = 
     my $envfile=$env{'user.environment'};   ( $env{'user.environment'} = ~m|/([^/]+)\.id$| );
     $envfile=~/\/([^\/]+)\.id$/;      &Apache::lonnet::transfer_profile_to_env($r->dir_config('lonIDsDir'),
     $envfile=$1;       $envfile);
     &Apache::lonnet::transfer_profile_to_env($lonidsdir,$envfile);  
     my $current_counter=$env{'form.counter'};      my $current_counter=$env{'form.counter'};
     if ($remove_latex_header eq 'YES') {      if ($remove_latex_header eq 'YES') {
  $rendered = &latex_header_footer_remove($rendered);   $rendered = &latex_header_footer_remove($rendered);
Line 2631  STATEHTML Line 2654  STATEHTML
     $result .= "<select name='${var}.paper'>\n";      $result .= "<select name='${var}.paper'>\n";
   
     my %parmhash=&Apache::lonnet::coursedescription($env{'request.course.id'});      my %parmhash=&Apache::lonnet::coursedescription($env{'request.course.id'});
     my $DefaultPaperSize=$parmhash{'default_paper_size'};      my $DefaultPaperSize=lc($parmhash{'default_paper_size'});
       $DefaultPaperSize=~s/\s//g;
     if ($DefaultPaperSize eq '') {$DefaultPaperSize='letter';}      if ($DefaultPaperSize eq '') {$DefaultPaperSize='letter';}
     $i = 0;      $i = 0;
     foreach (@paperSize) {      foreach (@paperSize) {

Removed from v.1.397  
changed lines
  Added in v.1.403


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