--- loncom/interface/lonprintout.pm 2002/09/19 20:18:09 1.72 +++ loncom/interface/lonprintout.pm 2002/09/20 20:32:42 1.73 @@ -1,7 +1,7 @@ # The LearningOnline Network # Printout # -# $Id: lonprintout.pm,v 1.72 2002/09/19 20:18:09 sakharuk Exp $ +# $Id: lonprintout.pm,v 1.73 2002/09/20 20:32:42 sakharuk Exp $ # # Copyright Michigan State University Board of Trustees # @@ -316,7 +316,7 @@ sub additional_print_menu { -Define page layout parameters:
+Define one column layout parameters:
Width:
Height:
Left margin:
@@ -370,8 +370,9 @@ ENDPART #-- where is the primary sequence containing file? my $symbolic = &Apache::lonnet::symbread($ENV{'form.url'}); $symbolic =~ m/([^_]+)_/; - my $primary_sequence = '/res/'.$1; - my @master_seq = &coming_from_hash($primary_sequence); + my $primary_sequence = '/res/'.$1; + $symbolic =~ m/^([^_]+__)/; + my @master_seq = &coming_from_hash($primary_sequence,$1); #-- produce an output string my $flag_latex_header_remove = 'NO'; my $flag_page_in_sequence = 'NO'; @@ -423,7 +424,7 @@ ENDPART # where is the main sequence of the course? $selectionmade = 4; 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'; #-- produce an output string for (my $i=0;$i<=$#file_seq;$i++) { @@ -448,7 +449,7 @@ ENDPART } elsif ($choice eq 'All class print') { #-- prints assignments for whole class or for selected students $selectionmade = 5; - my (@students,@st_output) = ((),()); + my @students = (); for (my $i=0; $i<$ENV{'form.numberofstudents'};$i++) { if ($ENV{'form.whomtoprint'.$i}=~/:/) { push @students,$ENV{'form.whomtoprint'.$i}; @@ -457,8 +458,9 @@ ENDPART #where is the primary sequence containing current resource (the same for all students)? my $symbolic = &Apache::lonnet::symbread($ENV{'form.url'}); $symbolic =~ m/([^_]+)_/; - my $primary_sequence = '/res/'.$1; - my @master_seq = &coming_from_hash($primary_sequence); + my $primary_sequence = '/res/'.$1; + $symbolic =~ m/^([^_]+__)/; + my @master_seq = &coming_from_hash($primary_sequence,$1); #loop over students my $flag_latex_header_remove = 'NO'; foreach my $person (@students) { @@ -468,22 +470,20 @@ ENDPART #goes through all resources, checks if they are available for current student, and produces output foreach my $curresline (@master_seq) { my ($curres,$symb) = split /&&/, $curresline; - $curres =~ s/^"//; - $curres =~ s/"$//; - if ($curres=~/\w+/) { + if ($curres=~ m/\.(problem|exam|quiz|assess|survey|form|library)/) { my ($map,$id,$res_url) = split(/___/,$symb); if (&Apache::lonnet::allowed('bre',$res_url)) { my $rendered = &Apache::loncommon::get_student_view($symb,$username,$userdomain, $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); } else { $rendered =~ s/\\end{document}//; } $current_output .= $rendered; } + $flag_latex_header_remove = 'YES'; } - $flag_latex_header_remove = 'YES'; } if ($current_output=~/\\documentclass/) { $current_output =~ s/\\begin{document}/\\begin{document}\\noindent\\parbox{\\minipagewidth}{\\noindent\\fbox{\\textbf{$fullname}}\\hskip 1\.4in } \\vskip 5 mm /; @@ -599,14 +599,35 @@ FINALEND } -sub coming_from_hash { +sub coming_from_hash_whole { my $mainsequence = shift; my @resourcelist = (); my $mapid = $hash{'map_pc_'.$mainsequence}; my $mapstart = $hash{'map_start_'.$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); $presymb = $presymb.'___'; my $current_resource = $mapstart; @@ -1085,12 +1106,3 @@ sub handler { 1; __END__ - - - -#### Test block -# my $ere; -# foreach $ere (%ENV) { -# $result .= ' SS '.$ere.' => '.$ENV{$ere}.' FF '."\n\n"; -# } -####