Diff for /loncom/interface/lonprintout.pm between versions 1.72 and 1.73

version 1.72, 2002/09/19 20:18:09 version 1.73, 2002/09/20 20:32:42
Line 316  sub additional_print_menu { Line 316  sub additional_print_menu {
 <input type="hidden" name="numberofstudents" value="$ENV{'form.numberofstudents'}">  <input type="hidden" name="numberofstudents" value="$ENV{'form.numberofstudents'}">
 <input type="hidden" name="numberofproblems" value="$ENV{'form.numberofproblems'}">  <input type="hidden" name="numberofproblems" value="$ENV{'form.numberofproblems'}">
 <input type="hidden" name="numberofcolumns" value="$ENV{'form.numberofcolumns'}">  <input type="hidden" name="numberofcolumns" value="$ENV{'form.numberofcolumns'}">
 Define page layout parameters: <br />  Define one column layout parameters: <br />
 <b>Width</b>: <input type="text" name="width" width="8" value="9cm"> <br />  <b>Width</b>: <input type="text" name="width" width="8" value="9cm"> <br />
 <b>Height</b>: <input type="text" name="height" width="8" value="25.9cm"> <br />  <b>Height</b>: <input type="text" name="height" width="8" value="25.9cm"> <br />
 <b>Left margin</b>: <input type="text" name="leftmargin" width="8" value="-0.57in"> <br />  <b>Left margin</b>: <input type="text" name="leftmargin" width="8" value="-0.57in"> <br />
Line 370  ENDPART Line 370  ENDPART
         #-- where is the primary sequence containing file?          #-- where is the primary sequence containing file?
  my $symbolic = &Apache::lonnet::symbread($ENV{'form.url'});   my $symbolic = &Apache::lonnet::symbread($ENV{'form.url'});
  $symbolic =~ m/([^_]+)_/;   $symbolic =~ m/([^_]+)_/;
  my $primary_sequence = '/res/'.$1;       my $primary_sequence = '/res/'.$1;   
  my @master_seq = &coming_from_hash($primary_sequence);    $symbolic =~ m/^([^_]+__)/;
    my @master_seq = &coming_from_hash($primary_sequence,$1);
         #-- produce an output string          #-- produce an output string
  my $flag_latex_header_remove = 'NO';   my $flag_latex_header_remove = 'NO';
  my $flag_page_in_sequence = 'NO';   my $flag_page_in_sequence = 'NO';
Line 423  ENDPART Line 424  ENDPART
         # where is the main sequence of the course?          # where is the main sequence of the course?
  $selectionmade = 4;   $selectionmade = 4;
  my $main_seq = '/res/'.$ENV{'request.course.uri'};   my $main_seq = '/res/'.$ENV{'request.course.uri'};
  my @file_seq = &coming_from_hash($main_seq);   my @file_seq = &coming_from_hash($main_seq); 
  my $flag_latex_header_remove = 'NO';   my $flag_latex_header_remove = 'NO';
         #-- produce an output string          #-- produce an output string
  for (my $i=0;$i<=$#file_seq;$i++) {   for (my $i=0;$i<=$#file_seq;$i++) {
Line 448  ENDPART Line 449  ENDPART
     } elsif ($choice eq 'All class print') {       } elsif ($choice eq 'All class print') { 
     #-- prints assignments for whole class or for selected students        #-- prints assignments for whole class or for selected students  
  $selectionmade = 5;   $selectionmade = 5;
         my (@students,@st_output) = ((),());          my @students = ();
  for (my $i=0; $i<$ENV{'form.numberofstudents'};$i++) {   for (my $i=0; $i<$ENV{'form.numberofstudents'};$i++) {
     if ($ENV{'form.whomtoprint'.$i}=~/:/) {      if ($ENV{'form.whomtoprint'.$i}=~/:/) {
  push @students,$ENV{'form.whomtoprint'.$i};   push @students,$ENV{'form.whomtoprint'.$i};
Line 457  ENDPART Line 458  ENDPART
  #where is the primary sequence containing current resource (the same for all students)?   #where is the primary sequence containing current resource (the same for all students)?
  my $symbolic = &Apache::lonnet::symbread($ENV{'form.url'});   my $symbolic = &Apache::lonnet::symbread($ENV{'form.url'});
  $symbolic =~ m/([^_]+)_/;   $symbolic =~ m/([^_]+)_/;
  my $primary_sequence = '/res/'.$1;   my $primary_sequence = '/res/'.$1;
  my @master_seq = &coming_from_hash($primary_sequence);    $symbolic =~ m/^([^_]+__)/;
    my @master_seq = &coming_from_hash($primary_sequence,$1); 
         #loop over students          #loop over students
  my $flag_latex_header_remove = 'NO';     my $flag_latex_header_remove = 'NO';  
  foreach my $person (@students) {   foreach my $person (@students) {
Line 468  ENDPART Line 470  ENDPART
             #goes through all resources, checks if they are available for current student, and produces output                 #goes through all resources, checks if they are available for current student, and produces output   
     foreach my $curresline (@master_seq)  {      foreach my $curresline (@master_seq)  {
  my ($curres,$symb) = split /&&/, $curresline;   my ($curres,$symb) = split /&&/, $curresline;
  $curres =~ s/^"//;                  if ($curres=~ m/\.(problem|exam|quiz|assess|survey|form|library)/) {
  $curres =~ s/"$//;  
                 if ($curres=~/\w+/) {  
     my ($map,$id,$res_url) = split(/___/,$symb);      my ($map,$id,$res_url) = split(/___/,$symb);
     if (&Apache::lonnet::allowed('bre',$res_url)) {      if (&Apache::lonnet::allowed('bre',$res_url)) {
  my $rendered = &Apache::loncommon::get_student_view($symb,$username,$userdomain,   my $rendered = &Apache::loncommon::get_student_view($symb,$username,$userdomain,
                                                                         $ENV{'request.course.id'},'tex');                                                                          $ENV{'request.course.id'},'tex');
  if ($flag_latex_header_remove ne 'NO') {   if ($flag_latex_header_remove eq 'YES') {
     $rendered = &latex_header_footer_remove($rendered);      $rendered = &latex_header_footer_remove($rendered);
  } else {   } else {
     $rendered =~ s/\\end{document}//;      $rendered =~ s/\\end{document}//;
  }   }
  $current_output .= $rendered;   $current_output .= $rendered;
     }      }
       $flag_latex_header_remove = 'YES';
  }   }
  $flag_latex_header_remove = 'YES';    
     }      }
     if ($current_output=~/\\documentclass/) {      if ($current_output=~/\\documentclass/) {
  $current_output =~ s/\\begin{document}/\\begin{document}\\noindent\\parbox{\\minipagewidth}{\\noindent\\fbox{\\textbf{$fullname}}\\hskip 1\.4in } \\vskip 5 mm /;   $current_output =~ s/\\begin{document}/\\begin{document}\\noindent\\parbox{\\minipagewidth}{\\noindent\\fbox{\\textbf{$fullname}}\\hskip 1\.4in } \\vskip 5 mm /;
Line 599  FINALEND Line 599  FINALEND
 }  }
   
   
 sub coming_from_hash {  sub coming_from_hash_whole {
   
     my $mainsequence = shift;      my $mainsequence = shift;
     my @resourcelist = ();      my @resourcelist = ();
     my $mapid = $hash{'map_pc_'.$mainsequence};      my $mapid = $hash{'map_pc_'.$mainsequence};
     my $mapstart = $hash{'map_start_'.$mainsequence};      my $mapstart = $hash{'map_start_'.$mainsequence};
     my $mapfinish = $hash{'map_finish_'.$mainsequence};      my $mapfinish = $hash{'map_finish_'.$mainsequence};
     my $symb = &Apache::lonnet::symbread($hash{'src_'.$mapstart});      my $current_resource = $mapstart;
       while ($current_resource ne $mapfinish) {
    if ($hash{'src_'.$current_resource}=~/\.sequence$/) {
   
    } else {
   
    }
       }
   
   
       push @resourcelist,$mapid,$mapstart,$mapfinish;
       return @resourcelist;
   }
   
   
   sub coming_from_hash {
   
       my ($mainsequence,$symb) = @_;
       my @resourcelist = ();
       my $mapid = $hash{'map_pc_'.$mainsequence};
       my $mapstart = $hash{'map_start_'.$mainsequence};
       my $mapfinish = $hash{'map_finish_'.$mainsequence};
     my ($presymb) = split(/___/,$symb);      my ($presymb) = split(/___/,$symb);
     $presymb = $presymb.'___';      $presymb = $presymb.'___';
     my $current_resource = $mapstart;      my $current_resource = $mapstart;
Line 1085  sub handler { Line 1106  sub handler {
 1;  1;
 __END__  __END__
   
   
   
   
 #### Test block  
 #    my $ere;  
 #    foreach $ere (%ENV) {  
 # $result .= ' SS '.$ere.' => '.$ENV{$ere}.' FF '."\n\n";  
 #    }  
 ####  

Removed from v.1.72  
changed lines
  Added in v.1.73


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