version 1.619, 2012/06/11 11:07:33
|
version 1.625, 2012/12/08 20:10:26
|
Line 582 sub printable {
|
Line 582 sub printable {
|
sub get_print_dates { |
sub get_print_dates { |
my $res = shift; |
my $res = shift; |
my $partsref = $res->parts(); |
my $partsref = $res->parts(); |
my @parts = @$partsref; |
my @parts; |
|
if (ref($partsref) eq 'ARRAY') { |
|
@parts = @{$partsref}; |
|
} |
my $open_date; |
my $open_date; |
my $close_date; |
my $close_date; |
my @open_dates; |
my @open_dates; |
my @close_dates; |
my @close_dates; |
|
|
|
|
if (defined(@parts) && (scalar(@parts) > 0)) { |
if (@parts) { |
foreach my $part (@parts) { |
foreach my $part (@parts) { |
my $partopen = $res->parmval('printstartdate', $part); |
my $partopen = $res->parmval('printstartdate', $part); |
my $partclose = $res->parmval('printenddate', $part); |
my $partclose = $res->parmval('printenddate', $part); |
Line 632 sub course_print_dates {
|
Line 635 sub course_print_dates {
|
|
|
# Don't bother looping over undefined or empty parts arraY; |
# Don't bother looping over undefined or empty parts arraY; |
|
|
if (defined(@parts) && (scalar(@parts) > 0)) { |
if (@parts) { |
foreach my $part (@parts) { |
foreach my $part (@parts) { |
my ($partopen, $partclose) = $navmap->course_printdates($res, $part); |
my ($partopen, $partclose) = $navmap->course_printdates($res, $part); |
push(@open_dates, $partopen); |
push(@open_dates, $partopen); |
Line 658 sub map_print_dates {
|
Line 661 sub map_print_dates {
|
|
|
# Don't bother looping over undefined or empty parts arraY; |
# Don't bother looping over undefined or empty parts arraY; |
|
|
if (defined(@parts) && (scalar(@parts) > 0)) { |
if (@parts) { |
foreach my $part (@parts) { |
foreach my $part (@parts) { |
my ($partopen, $partclose) = $navmap->map_printdates($res, $part); |
my ($partopen, $partclose) = $navmap->map_printdates($res, $part); |
push(@open_dates, $partopen); |
push(@open_dates, $partopen); |
Line 715 sub incomplete {
|
Line 718 sub incomplete {
|
# print_resources. |
# print_resources. |
# |
# |
sub master_seq_to_person_seq { |
sub master_seq_to_person_seq { |
my ($helper, $seq, $who) = @_; |
my ($helper, $seq, $who, $code) = @_; |
|
|
|
|
my ($username, $userdomain, $usersection) = split(/:/, $who); |
my ($username, $userdomain, $usersection) = split(/:/, $who); |
Line 729 sub master_seq_to_person_seq {
|
Line 732 sub master_seq_to_person_seq {
|
my @output_seq; |
my @output_seq; |
|
|
my ($map, $id, $url) = &Apache::lonnet::decode_symb($helper->{VARS}->{'symb'}); |
my ($map, $id, $url) = &Apache::lonnet::decode_symb($helper->{VARS}->{'symb'}); |
my $navmap = Apache::lonnavmaps::navmap->new($username, $userdomain); |
my $navmap = Apache::lonnavmaps::navmap->new($username, $userdomain, |
|
$code); |
my $iterator = $navmap->getIterator($navmap->firstResource(), |
my $iterator = $navmap->getIterator($navmap->firstResource(), |
$navmap->finishResource(), |
$navmap->finishResource(), |
{}, 1); |
{}, 1); |
Line 2057 sub unsupported {
|
Line 2061 sub unsupported {
|
my $result.= &print_latex_header($mode); |
my $result.= &print_latex_header($mode); |
if ($currentURL=~m|^(/adm/wrapper/)?ext/|) { |
if ($currentURL=~m|^(/adm/wrapper/)?ext/|) { |
$currentURL=~s|^(/adm/wrapper/)?ext/|http://|; |
$currentURL=~s|^(/adm/wrapper/)?ext/|http://|; |
|
$currentURL=~s|^http://https://|https://|; |
my $title=&Apache::lonnet::gettitle($symb); |
my $title=&Apache::lonnet::gettitle($symb); |
$title = &Apache::lonxml::latex_special_symbols($title); |
$title = &Apache::lonxml::latex_special_symbols($title); |
$result.=' \strut \\\\ '.$title.' \strut \\\\ '.$currentURL.' '; |
$result.=' \strut \\\\ '.$title.' \strut \\\\ '.$currentURL.' '; |
Line 2136 sub print_page_in_course {
|
Line 2141 sub print_page_in_course {
|
my @page_resources = $navmap->retrieveResources($resource_src); |
my @page_resources = $navmap->retrieveResources($resource_src); |
$result .= &print_page_in_course($helper, $rparmhash, |
$result .= &print_page_in_course($helper, $rparmhash, |
$resource_src, \@page_resources); |
$resource_src, \@page_resources); |
|
} elsif ($resource->ext()) { |
|
$result .= &unsupported($currentURL,$mode,$symb); |
} |
} |
# these resources go through the XML transformer: |
# these resources go through the XML transformer: |
|
|
Line 2602 sub print_construction_sequence {
|
Line 2609 sub print_construction_sequence {
|
# For item 100, filtering was done at the helper level. |
# For item 100, filtering was done at the helper level. |
|
|
sub output_data { |
sub output_data { |
|
|
my ($r,$helper,$rparmhash) = @_; |
my ($r,$helper,$rparmhash) = @_; |
my %parmhash = %$rparmhash; |
my %parmhash = %$rparmhash; |
$ssi_error = 0; # This will be set nonzero by failing ssi's. |
$ssi_error = 0; # This will be set nonzero by failing ssi's. |
Line 2875 ENDPART
|
Line 2883 ENDPART
|
($print_type eq 'select_sequences') or |
($print_type eq 'select_sequences') or |
($print_type eq 'map_incomplete_problems_seq') |
($print_type eq 'map_incomplete_problems_seq') |
) { |
) { |
|
|
|
|
#-- produce an output string |
#-- produce an output string |
if (($print_type eq 'map_problems') or |
if (($print_type eq 'map_problems') or |
Line 3198 ENDPART
|
Line 3205 ENDPART
|
my $old_name=$helper->{'VARS'}->{'REUSE_OLD_CODES'}; |
my $old_name=$helper->{'VARS'}->{'REUSE_OLD_CODES'}; |
my $single_code = $helper->{'VARS'}->{'SINGLE_CODE'}; |
my $single_code = $helper->{'VARS'}->{'SINGLE_CODE'}; |
my $selected_code = $helper->{'VARS'}->{'CODE_SELECTED_FROM_LIST'}; |
my $selected_code = $helper->{'VARS'}->{'CODE_SELECTED_FROM_LIST'}; |
|
|
my $code_option=$helper->{'VARS'}->{'CODE_OPTION'}; |
my $code_option=$helper->{'VARS'}->{'CODE_OPTION'}; |
my @lines = &Apache::grades::get_scantronformat_file(); |
my @lines = &Apache::grades::get_scantronformat_file(); |
my ($code_type,$code_length,$bubbles_per_row)=('letter',6,10); |
my ($code_type,$code_length,$bubbles_per_row)=('letter',6,10); |
Line 3215 ENDPART
|
Line 3221 ENDPART
|
} |
} |
} |
} |
} |
} |
|
my ($randomorder,$randompick); |
|
if ($helper->{VARS}{'symb'}) { |
|
my $navmap = Apache::lonnavmaps::navmap->new(); |
|
if (defined($navmap)) { |
|
my ($map,$id,$resource) = |
|
&Apache::lonnet::decode_symb($helper->{VARS}{'symb'}); |
|
if ($map) { |
|
my $res = $navmap->getResourceByUrl($map); |
|
$randomorder = $res->randomorder(); |
|
$randompick = $res->randompick(); |
|
} |
|
} |
|
} |
my %moreenv = ('textwidth' => &get_textwidth($helper,$LaTeXwidth)); |
my %moreenv = ('textwidth' => &get_textwidth($helper,$LaTeXwidth)); |
$moreenv{'problem_split'} = $parmhash{'problem_stream_switch'}; |
$moreenv{'problem_split'} = $parmhash{'problem_stream_switch'}; |
$moreenv{'instructor_comments'}='hide'; |
$moreenv{'instructor_comments'}='hide'; |
Line 3276 ENDPART
|
Line 3295 ENDPART
|
} else { |
} else { |
$moreenv{'CODE'}=&num_to_letters($code); |
$moreenv{'CODE'}=&num_to_letters($code); |
} |
} |
|
my $actual_seq = \@master_seq; |
|
if ($randomorder) { |
|
$env{'form.CODE'} = $moreenv{'CODE'}; |
|
$actual_seq = master_seq_to_person_seq($helper,\@master_seq,undef, |
|
$moreenv{'CODE'}); |
|
delete($env{'form.CODE'}); |
|
} |
my ($output,$fullname, $printed)= |
my ($output,$fullname, $printed)= |
&print_resources($r,$helper,'anonymous',$type,\%moreenv, |
&print_resources($r,$helper,'anonymous',$type,\%moreenv, |
\@master_seq,$flag_latex_header_remove, |
$actual_seq,$flag_latex_header_remove, |
$LaTeXwidth); |
$LaTeXwidth); |
$resources_printed .= ":"; |
$resources_printed .= ":"; |
$print_array[$file_num].=$output; |
$print_array[$file_num].=$output; |
Line 3530 sub print_resources {
|
Line 3556 sub print_resources {
|
my $namepostfix = "\\\\"; # Both anon and not anon should get the same vspace. |
my $namepostfix = "\\\\"; # Both anon and not anon should get the same vspace. |
|
|
|
|
|
|
# |
# |
# Figure out if we need to filter the output by |
# Figure out if we need to filter the output by |
# the incomplete problems for that person |
# the incomplete problems for that person |
Line 3797 sub handler {
|
Line 3822 sub handler {
|
} |
} |
|
|
&init_perm(); |
&init_perm(); |
|
|
my $helper = printHelper($r); |
my $helper = printHelper($r); |
if (!ref($helper)) { |
if (!ref($helper)) { |
return $helper; |
return $helper; |
Line 4216 sub printHelper {
|
Line 4240 sub printHelper {
|
'RESOURCES', |
'RESOURCES', |
'PAGESIZE', |
'PAGESIZE', |
$map, |
$map, |
! $isProblem, '', |
$isProblem, '', |
$symbFilter, |
$symbFilter, |
$start_new_option); |
$start_new_option); |
$helperFragment .= &generate_resource_chooser('CHOOSE_PROBLEMS_HTML', |
$helperFragment .= &generate_resource_chooser('CHOOSE_PROBLEMS_HTML', |