--- loncom/interface/lonprintout.pm 2023/04/15 17:53:07 1.688 +++ loncom/interface/lonprintout.pm 2023/04/17 18:36:31 1.694 @@ -1,7 +1,7 @@ # The LearningOnline Network # Printout # -# $Id: lonprintout.pm,v 1.688 2023/04/15 17:53:07 raeburn Exp $ +# $Id: lonprintout.pm,v 1.694 2023/04/17 18:36:31 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -755,7 +755,7 @@ sub get_print_dates { # get_print_dates but namvaps::course_print_dates are gotten...and not converted # to times either. # -# @param $res - Reference to a resource has from lonnvampas::resource. +# @param $res - Reference to a resource hash from lonnavmaps::resource. # # @return (opendate, closedate) # @@ -897,7 +897,7 @@ sub master_seq_to_person_seq { # Iterate on the resource..select the items that are randomly selected # and that are in the seq_hash. Presumably the iterator will take care - # of the random ordering part of the deal. + # of the random ordering part of the deal. # my $curres; while ($curres = $iterator->next()) { @@ -1155,7 +1155,7 @@ sub printf_style_subst { if ($size ne "") { $subst = substr($subst, 0, $size); - # Here's a nice edge case.. suppose the end of the + # Here's a nice edge case ... suppose the end of the # substring is a \. In that case may have just # chopped off a TeX escape... in that case, we append # " " for the trailing character, and let the field @@ -2532,7 +2532,7 @@ sub load_skips { my ($helper) = @_; - # If this is the first time, unwrap the resources and extra spaces: + # If this is the first time, unwrap the resources and extra spaces: if (!$skips_loaded) { @extraspace = (split(/\|\|\|/, $helper->{'VARS'}->{'EXTRASPACE'})); @@ -3310,6 +3310,8 @@ ENDPART ($map, my $id, my $resource) = &Apache::lonnet::decode_symb($helper->{VARS}->{'symb'}); } + } elsif (($helper->{'VARS'}->{'postdata'} eq '/adm/navmaps') && ($perm{'pfo'})) { + $map = $helper->{'VARS'}->{'SEQUENCE'}; } #loop over students @@ -3399,6 +3401,8 @@ ENDPART if ($helper->{VARS}{'symb'}) { ($map, my $id, my $resource) = &Apache::lonnet::decode_symb($helper->{VARS}{'symb'}); + } elsif (($helper->{'VARS'}->{'postdata'} eq '/adm/navmaps') && ($perm{'pfo'})) { + $map = $helper->{'VARS'}->{'SEQUENCE'}; } my %moreenv = ('textwidth' => &get_textwidth($helper,$LaTeXwidth)); $moreenv{'problem_split'} = $parmhash{'problem_stream_switch'}; @@ -3797,7 +3801,7 @@ sub print_resources { # nice to put the special in as a postscript comment # e.g. \special{ps:\ENDOFSTUDENTSTAMP} unfortunately, # The special gets passed the \ and dvips puts it in the output file - # so we will just rely on printout.pl to strip ENDOFSTUDENTSTAMP from the + # so we will just rely on printout.pl to strip ENDOFSTUDENTSTAMP from the # postscript. Each ENDOFSTUDENTSTAMP will go on a line by itself. # @@ -3906,7 +3910,7 @@ sub print_resources { $rendered =~ s/\\end\{document}//; } $current_output .= $rendered.'\vskip 0.5mm\noindent\makebox[\textwidth/$number_of_columns][b]{\hrulefill}\strut \vskip 0 mm \strut '; - } elsif($res_url = ~/\.pdf$/) { + } elsif($res_url =~ /\.pdf$/) { my $url = &Apache::lonnet::clutter($res_url); my $rendered = &include_pdf($url); if ($remove_latex_header ne 'NO') { @@ -4821,12 +4825,47 @@ CHOOSE_FROM_SUBDIR '','','','','',''), 'select_sequences_resources_for_anon','CHOOSE_SEQUENCE_ANON2']); if ($escapedSequenceName) { - &generate_common_choosers($r,$helper,$escapedSequenceName,$escapedSequenceName,$isProblem,$symbFilter,$start_new_option); + my ($randomly_ordered_warning,$codechoice,$code_selection,$namechoice) = + &generate_common_choosers($r,$helper,$escapedSequenceName,$escapedSequenceName, + $isProblem,$symbFilter,$start_new_option); + + my $resource_selector = < + + Sort by section then student + Sort by students across sections. + +


+ + + + + $randomly_ordered_warning + PRINT_FORMATTING + (mark desired resources then click "next" button)
+ + return $isNotMap; + $escapedSequenceName + return $symbFilter; + $start_new_option + +
+RESOURCE_SELECTOR + + my $anon3 = &generate_code_selector($helper, + 'CHOOSE_ANON3', + 'SELECT_RESOURCES', + $codechoice, + $code_selection, + $namechoice) . $resource_selector; + + &Apache::lonxml::xmlparse($r, 'helper',$anon3); } } } if (($subdir eq '') && ($url eq '/adm/navmaps') && ($perm{'pfo'})) { - &Apache::lonxml::xmlparse($r, 'helper', < Select the sequence to print resources from: @@ -4860,7 +4899,7 @@ CHOOSE_FROM_SUBDIR Select the sequence to print resources from: - CHOOSE_STUDENTS + CHOOSE_STUDENTS2 return &Apache::lonprintout::printable_sequence(\$res); return $urlValue; return \$res->hasResource(\$res,sub { return !\$_[0]->is_sequence() },0,0); @@ -4870,7 +4909,7 @@ CHOOSE_FROM_SUBDIR Select the sequence to print resources from: - CHOOSE_ANON1 + CHOOSE_ANON3 return &Apache::lonprintout::printable_sequence(\$res); return $urlValue; return \$res->hasResource(\$res,sub { return !\$_[0]->is_sequence() },0,0);