--- loncom/interface/lonprintout.pm 2003/10/09 19:15:25 1.253 +++ loncom/interface/lonprintout.pm 2003/10/10 13:38:26 1.254 @@ -1,7 +1,7 @@ # The LearningOnline Network # Printout # -# $Id: lonprintout.pm,v 1.253 2003/10/09 19:15:25 sakharuk Exp $ +# $Id: lonprintout.pm,v 1.254 2003/10/10 13:38:26 sakharuk Exp $ # # Copyright Michigan State University Board of Trustees # @@ -861,6 +861,8 @@ ENDPART $selectionmade = 3; } elsif ($helper->{'VARS'}->{'PRINT_TYPE'} eq 'all_problems') { $selectionmade = 4; + } elsif ($helper->{'VARS'}->{'PRINT_TYPE'} eq 'select_sequences') { + $selectionmade = 7; } $form{'symb'}=$master_seq[$i]; my ($sequence)=&Apache::lonnet::decode_symb($master_seq[$i]); @@ -914,9 +916,13 @@ ENDPART &Apache::lonnet::delenv('form.counter'); if ($flag_page_in_sequence eq 'YES') {$result =~ s/\\usepackage{calc}/\\usepackage{calc}\\usepackage{longtable}/;} $result .= '\end{document}'; - } elsif ($helper->{'VARS'}->{'PRINT_TYPE'} eq 'problems_for_students') { + } elsif (($helper->{'VARS'}->{'PRINT_TYPE'} eq 'problems_for_students') || ($helper->{'VARS'}->{'PRINT_TYPE'} eq 'resources_for_students')) { #-- prints assignments for whole class or for selected students - $selectionmade=5; + if ($helper->{'VARS'}->{'PRINT_TYPE'} eq 'problems_for_students') { + $selectionmade=5; + } elsif ($helper->{'VARS'}->{'PRINT_TYPE'} eq 'resources_for_students') { + $selectionmade=8; + } my @students=split /\|\|\|/, $helper->{'VARS'}->{'STUDENTS'}; my @master_seq=split /\|\|\|/, $helper->{'VARS'}->{'RESOURCES'}; #loop over students @@ -936,7 +942,7 @@ ENDPART &Apache::lonnet::delenv('form.counter'); &Apache::lonxml::init_counter(); foreach my $curresline (@master_seq) { - if ($curresline=~ m/\.(problem|exam|quiz|assess|survey|form|library)$/) { + if ((($curresline=~ m/\.(problem|exam|quiz|assess|survey|form|library)$/) && ($helper->{'VARS'}->{'PRINT_TYPE'} eq 'problems_for_students')) || ($helper->{'VARS'}->{'PRINT_TYPE'} eq 'resources_for_students')) { my ($map,$id,$res_url) = &Apache::lonnet::decode_symb($curresline); if (&Apache::lonnet::allowed('bre',$res_url)) { my $rendered = &Apache::loncommon::get_student_view($curresline,$username,$userdomain, @@ -1263,7 +1269,7 @@ sub printHelper { my $paramHash; if ($resourceTitle) { - push @{$printChoices}, ["$resourceTitle (what you just saw on the screen)", 'current_document', 'PAGESIZE']; + push @{$printChoices}, ["$resourceTitle (what you just saw on the screen)", 'current_document', 'PAGESIZE']; } # $r->print($helper->{VARS}->{'postdata'}); @@ -1289,9 +1295,9 @@ sub printHelper { $helper->{VARS}->{'postdata'} && $helper->{VARS}->{'assignment'}) { # Allow problems from sequence - push @{$printChoices}, ["Problems in $sequenceTitle", 'map_problems', 'CHOOSE_PROBLEMS']; + push @{$printChoices}, ["Problems in $sequenceTitle", 'map_problems', 'CHOOSE_PROBLEMS']; # Allow all resources from sequence - push @{$printChoices}, ["Resources in $sequenceTitle", 'map_problems_pages', 'CHOOSE_PROBLEMS_HTML']; + push @{$printChoices}, ["Resources in $sequenceTitle", 'map_problems_pages', 'CHOOSE_PROBLEMS_HTML']; my $helperFragment = < @@ -1321,9 +1327,9 @@ HELPERFRAGMENT # If the user is priviledged, allow them to print all # problems in the course, optionally for selected students if ($userPriviledged && ($helper->{VARS}->{'postdata'}=~/\/res\//)) { - push @{$printChoices}, ['Problems from entire course', 'all_problems', 'ALL_PROBLEMS']; + push @{$printChoices}, ['Problems from entire course', 'all_problems', 'ALL_PROBLEMS']; if ($helper->{VARS}->{'assignment'}) { - push @{$printChoices}, ["Problems from $sequenceTitle for selected students", 'problems_for_students', 'CHOOSE_STUDENTS']; + push @{$printChoices}, ["Problems from $sequenceTitle for selected students", 'problems_for_students', 'CHOOSE_STUDENTS']; } &Apache::lonxml::xmlparse($r, 'helper', <
Select resources for the assignment
- return $isProblem + return $isProblem; $map - return $symbFilter + return $symbFilter;
How should the results be printed?
@@ -1355,11 +1361,34 @@ HELPERFRAGMENT CHOOSE_STUDENTS + + if ($helper->{VARS}->{'assignment'}) { + push @{$printChoices}, ["Resources from $sequenceTitle for selected students", 'resources_for_students', 'CHOOSE_STUDENTS1']; + } + &Apache::lonxml::xmlparse($r, 'helper', < + +
Select resources for the assignment
+ + return $isNotMap; + $map + return $symbFilter; + +
How should the results be printed?
+ + Start each student\'s assignment on a new page/column (add a pagefeed after each assignment) + Add one empty page/column after each student\'s assignment + Add two empty pages/column after each student\'s assignment + Add three empty pages/column after each student\'s assignment + + +CHOOSE_STUDENTS1 + } # FIXME: That RE should come from a library somewhere. if ((((&Apache::lonnet::allowed('bre',$subdir) eq 'F') and ($helper->{VARS}->{'postdata'}=~/\.(problem|exam|quiz|assess|survey|form|library|page|xml|html|htm|xhtml|xhtm)/)) or defined $helper->{'VARS'}->{'construction'}) and $ENV{'request.role.adv'} and $subdir ne '/home/httpd/html/res/') { - push @{$printChoices}, ["Problems from current subdirectory $subdir", 'problems_from_directory', 'CHOOSE_FROM_SUBDIR']; + push @{$printChoices}, ["Problems from current subdirectory $subdir", 'problems_from_directory', 'CHOOSE_FROM_SUBDIR']; my $f = '$filename'; my $xmlfrag = <{VARS}->{'construction'}) { - push @$printChoices, ["Resources from selected sequence in course", + push @$printChoices, ["Resources from selected sequence in course", 'select_sequences', 'CHOOSE_SEQUENCE']; my $escapedSequenceName = $helper->{VARS}->{'SEQUENCE'}; #Escape apostrophes and backslashes for Perl