version 1.572, 2010/02/28 22:38:45
|
version 1.585, 2010/09/15 16:37:36
|
Line 196 sub generate_code_selector {
|
Line 196 sub generate_code_selector {
|
<message><br /><hr /> <br /></message> |
<message><br /><hr /> <br /></message> |
<message><h3>Generate new CODEd Assignments</h3></message> |
<message><h3>Generate new CODEd Assignments</h3></message> |
<message><table><tr><td><b>Number of CODEd assignments to print:</b></td><td></message> |
<message><table><tr><td><b>Number of CODEd assignments to print:</b></td><td></message> |
<string variable="NUMBER_TO_PRINT_TOTAL" maxlength="5" size="5"> |
<string variable="NUMBER_TO_PRINT_TOTAL" maxlength="5" size="5" noproceed="1"> |
<validator> |
<validator> |
if (((\$helper->{'VARS'}{'NUMBER_TO_PRINT_TOTAL'}+0) < 1) && |
if (((\$helper->{'VARS'}{'NUMBER_TO_PRINT_TOTAL'}+0) < 1) && |
!\$helper->{'VARS'}{'REUSE_OLD_CODES'} && |
!\$helper->{'VARS'}{'REUSE_OLD_CODES'} && |
!\$helper->{'VARS'}{'SINGLE_CODE'} && |
!\$helper->{'VARS'}{'SINGLE_CODE'} && |
!\$helper->{'VARS'}{'CODE_SELECTED_FROM_LIST'}) { |
!\$helper->{'VARS'}{'CODE_SELECTED_FROM_LIST'} ) { |
|
|
return "You need to specify the number of assignments to print"; |
return "You need to specify the number of assignments to print"; |
} |
} |
|
if (((\$helper->{'VARS'}{'NUMBER_TO_PRINT_TOTAL'}+0) >= 1) && |
|
(\$helper->{'VARS'}{'SINGLE_CODE'} ne '') ) { |
|
return 'Specifying number of codes to print and a specific code is not compatible'; |
|
} |
return undef; |
return undef; |
</validator> |
</validator> |
</string> |
</string> |
Line 228 sub generate_code_selector {
|
Line 233 sub generate_code_selector {
|
!\$helper->{'VARS'}{'CODE_SELECTED_FROM_LIST'}) { |
!\$helper->{'VARS'}{'CODE_SELECTED_FROM_LIST'}) { |
return &Apache::lonprintout::is_code_valid(\$helper->{'VARS'}{'SINGLE_CODE'}, |
return &Apache::lonprintout::is_code_valid(\$helper->{'VARS'}{'SINGLE_CODE'}, |
\$helper->{'VARS'}{'CODE_OPTION'}); |
\$helper->{'VARS'}{'CODE_OPTION'}); |
|
} elsif (\$helper->{'VARS'}{'SINGLE_CODE'} ne ''){ |
|
return 'Specifying a code name is incompatible with specifying number of codes.'; |
} else { |
} else { |
return undef; # Other forces control us. |
return undef; # Other forces control us. |
} |
} |
Line 306 sub set_font_size {
|
Line 313 sub set_font_size {
|
|
|
my ($text) = @_; |
my ($text) = @_; |
|
|
$text =~ s/\\begin{document}/\\begin{document}{\\$font_size/; |
# There appear to be cases where the font directive is empty.. in which |
|
# case the first substituion would insert a spurious \ oh happy day. |
|
# as this has been the cause of much mystery and hair pulling _sigh_ |
|
|
|
if ($font_size ne '') { |
|
|
|
$text =~ s/\\begin{document}/\\begin{document}{\\$font_size/; |
|
} |
$text =~ s/\\end{document}/}\\end{document}/; |
$text =~ s/\\end{document}/}\\end{document}/; |
return $text; |
return $text; |
|
|
Line 1309 sub page_format_transformation {
|
Line 1323 sub page_format_transformation {
|
$text =~ s/\\pagestyle{fancy}\\rhead{}\\chead{}\s*\\begin{document}/\\textheight = $textheight\\oddsidemargin = $evenoffset\n\\evensidemargin = $evenoffset $topmargintoinsert\\textwidth= $textwidth\\newlength{\\minipagewidth}\n\\setlength{\\minipagewidth}{\\textwidth\/\$number_of_columns-0\.2cm}\\renewcommand{\\ref}{\\keephidden\}\\pagestyle{fancy}\\rhead{}\\chead{}\\usepackage{booktabs}\\begin{document}\\voffset=-0\.8cm\n\\setcounter{page}{1} \\vskip 5 mm\n /; |
$text =~ s/\\pagestyle{fancy}\\rhead{}\\chead{}\s*\\begin{document}/\\textheight = $textheight\\oddsidemargin = $evenoffset\n\\evensidemargin = $evenoffset $topmargintoinsert\\textwidth= $textwidth\\newlength{\\minipagewidth}\n\\setlength{\\minipagewidth}{\\textwidth\/\$number_of_columns-0\.2cm}\\renewcommand{\\ref}{\\keephidden\}\\pagestyle{fancy}\\rhead{}\\chead{}\\usepackage{booktabs}\\begin{document}\\voffset=-0\.8cm\n\\setcounter{page}{1} \\vskip 5 mm\n /; |
} |
} |
if ($papersize eq 'a4') { |
if ($papersize eq 'a4') { |
$text =~ s/(\\begin{document})/$1\\special{papersize=210mm,297mm}/; |
my $papersize_text; |
|
if ($perm{'pav'}) { |
|
$papersize_text = '\\special{papersize=210mm,297mm}'; |
|
} else { |
|
$papersize_text = '\special{papersize=210mm,297mm}'; |
|
} |
|
$text =~ s/(\\begin{document})/$1$papersize_text/; |
} |
} |
} |
} |
if ($tableofcontents eq 'yes') {$text=~s/(\\setcounter\{page\}\{1\})/$1 \\tableofcontents\\newpage /;} |
if ($tableofcontents eq 'yes') {$text=~s/(\\setcounter\{page\}\{1\})/$1 \\tableofcontents\\newpage /;} |
Line 1540 sub print_page_in_course {
|
Line 1560 sub print_page_in_course {
|
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); |
} else { |
} else { |
$result.=$currentURL; |
my $esc_currentURL= $currentURL; |
|
$esc_currentURL =~ s/_/\\_/g; |
|
$result.=$esc_currentURL; |
} |
} |
$result .= '\\\\'; |
$result .= '\\\\'; |
|
|
Line 1570 sub print_page_in_course {
|
Line 1592 sub print_page_in_course {
|
} |
} |
# these resources go through the XML transformer: |
# these resources go through the XML transformer: |
|
|
elsif ($resource_src =~ /\.(problem|exam|quiz|assess|survey|form|library|page|xml|html|htm\xhtml|xhtm)$/) { |
elsif ($resource_src =~ /\.(problem|exam|quiz|assess|survey|form|library|xml|html|htm|xhtml|xhtm)$/) { |
my $urlp = &Apache::lonnet::clutter($resource_src); |
my $urlp = &Apache::lonnet::clutter($resource_src); |
my %form; |
my %form; |
my %moreenv; |
my %moreenv; |
Line 1581 sub print_page_in_course {
|
Line 1603 sub print_page_in_course {
|
|
|
$form{'grade_target'} = 'tex'; |
$form{'grade_target'} = 'tex'; |
$form{'textwidth'} = &get_textwidth($helper, $LaTeXwidth); |
$form{'textwidth'} = &get_textwidth($helper, $LaTeXwidth); |
$form{'pdfFormFiels'} = $pdfFormFields; # |
$form{'pdfFormFields'} = $pdfFormFields; # |
$form{'showallfoils'} = $helper->{'VARS'}->{'showallfoils'}; |
$form{'showallfoils'} = $helper->{'VARS'}->{'showallfoils'}; |
|
|
$form{'problem_split'}=$parmhash{'problem_stream_switch'}; |
$form{'problem_split'}=$parmhash{'problem_stream_switch'}; |
Line 1685 sub print_page_in_course {
|
Line 1707 sub print_page_in_course {
|
# List of recently generated print files |
# List of recently generated print files |
# |
# |
sub recently_generated { |
sub recently_generated { |
my $r=shift; |
my ($prtspool) = @_; |
my $prtspool=$r->dir_config('lonPrtDir'); |
my $output; |
my $zip_result; |
my $zip_result; |
my $pdf_result; |
my $pdf_result; |
opendir(DIR,$prtspool); |
opendir(DIR,$prtspool); |
Line 1719 sub recently_generated {
|
Line 1741 sub recently_generated {
|
if ($ext eq 'zip') { $zip_result .= $result; } |
if ($ext eq 'zip') { $zip_result .= $result; } |
} |
} |
if ($zip_result || $pdf_result) { |
if ($zip_result || $pdf_result) { |
$r->print('<hr />'); |
$output ='<hr />'; |
} |
} |
if ($zip_result) { |
if ($zip_result) { |
$r->print('<h3>'.&mt('Recently generated printout zip files')."</h3>\n" |
$output .='<h3>'.&mt('Recently generated printout zip files')."</h3>\n" |
.&Apache::loncommon::start_data_table() |
.&Apache::loncommon::start_data_table() |
.&Apache::loncommon::start_data_table_header_row() |
.&Apache::loncommon::start_data_table_header_row() |
.'<th>'.&mt('Download').'</th>' |
.'<th>'.&mt('Download').'</th>' |
Line 1730 sub recently_generated {
|
Line 1752 sub recently_generated {
|
.'<th>'.&mt('File Size (Bytes)').'</th>' |
.'<th>'.&mt('File Size (Bytes)').'</th>' |
.&Apache::loncommon::end_data_table_header_row() |
.&Apache::loncommon::end_data_table_header_row() |
.$zip_result |
.$zip_result |
.&Apache::loncommon::end_data_table() |
.&Apache::loncommon::end_data_table(); |
); |
|
} |
} |
if ($pdf_result) { |
if ($pdf_result) { |
$r->print('<h3>'.&mt('Recently generated printouts')."</h3>\n" |
$output .='<h3>'.&mt('Recently generated printouts')."</h3>\n" |
.&Apache::loncommon::start_data_table() |
.&Apache::loncommon::start_data_table() |
.&Apache::loncommon::start_data_table_header_row() |
.&Apache::loncommon::start_data_table_header_row() |
.'<th>'.&mt('Download').'</th>' |
.'<th>'.&mt('Download').'</th>' |
Line 1742 sub recently_generated {
|
Line 1763 sub recently_generated {
|
.'<th>'.&mt('File Size (Bytes)').'</th>' |
.'<th>'.&mt('File Size (Bytes)').'</th>' |
.&Apache::loncommon::end_data_table_header_row() |
.&Apache::loncommon::end_data_table_header_row() |
.$pdf_result |
.$pdf_result |
.&Apache::loncommon::end_data_table() |
.&Apache::loncommon::end_data_table(); |
); |
|
} |
} |
|
return $output; |
} |
} |
|
|
# |
# |
Line 2110 ENDPART
|
Line 2131 ENDPART
|
&Apache::lonnet::delenv('construct.style'); |
&Apache::lonnet::delenv('construct.style'); |
} |
} |
|
|
|
|
if ($helper->{'VARS'}->{'PRINT_TYPE'} eq 'current_document') { |
if ($helper->{'VARS'}->{'PRINT_TYPE'} eq 'current_document') { |
#-- single document - problem, page, html, xml, ... |
#-- single document - problem, page, html, xml, ... |
my ($currentURL,$cleanURL); |
my ($currentURL,$cleanURL); |
Line 2280 ENDPART
|
Line 2300 ENDPART
|
($helper->{'VARS'}->{'PRINT_TYPE'} eq 'all_problems') or |
($helper->{'VARS'}->{'PRINT_TYPE'} eq 'all_problems') or |
($helper->{'VARS'}->{'PRINT_TYPE'} eq 'all_resources') or # BUGBUG |
($helper->{'VARS'}->{'PRINT_TYPE'} eq 'all_resources') or # BUGBUG |
($helper->{'VARS'}->{'PRINT_TYPE'} eq 'select_sequences') |
($helper->{'VARS'}->{'PRINT_TYPE'} eq 'select_sequences') |
) { |
) { |
|
|
|
|
|
|
#-- produce an output string |
#-- produce an output string |
if (($helper->{'VARS'}->{'PRINT_TYPE'} eq 'map_problems') or |
if (($helper->{'VARS'}->{'PRINT_TYPE'} eq 'map_problems') or |
($helper->{'VARS'}->{'PRINT_TYPE'} eq 'map_problems_in_page') ) { |
($helper->{'VARS'}->{'PRINT_TYPE'} eq 'map_problems_in_page') ) { |
Line 2345 ENDPART
|
Line 2365 ENDPART
|
&Apache::lonxml::remember_problem_counter(); |
&Apache::lonxml::remember_problem_counter(); |
if ($flag_latex_header_remove eq 'NO') { |
if ($flag_latex_header_remove eq 'NO') { |
$texversion.=&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'}); # RF |
$texversion.=&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'}); # RF |
$flag_latex_header_remove = 'YES'; |
unless (($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'only') || |
|
(($i==0) && |
|
(($urlp=~/\.page$/) || |
|
($helper->{'VARS'}->{'PRINT_TYPE'} eq 'map_problems_in_page') || |
|
($helper->{'VARS'}->{'PRINT_TYPE'} eq 'map_resources_in_page')))) { |
|
$flag_latex_header_remove = 'YES'; |
|
} |
} |
} |
$texversion.=&ssi_with_retries($urlp, $ssi_retry_count, %form); |
$texversion.=&ssi_with_retries($urlp, $ssi_retry_count, %form); |
if ($urlp=~/\.page$/) { |
if ($urlp=~/\.page$/) { |
Line 2353 ENDPART
|
Line 2379 ENDPART
|
if ($number_of_columns_page > $number_of_columns) {$number_of_columns=$number_of_columns_page;} |
if ($number_of_columns_page > $number_of_columns) {$number_of_columns=$number_of_columns_page;} |
$texversion =~ s/\\end{document}\d*/\\end{document}/; |
$texversion =~ s/\\end{document}\d*/\\end{document}/; |
$flag_page_in_sequence = 'YES'; |
$flag_page_in_sequence = 'YES'; |
} |
} |
|
|
if(($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') || |
if(($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') || |
($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'only')) { |
($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'only')) { |
Line 2365 ENDPART
|
Line 2391 ENDPART
|
|
|
&Apache::lonxml::restore_problem_counter(); |
&Apache::lonxml::restore_problem_counter(); |
my $answer=&ssi_with_retries($urlp, $ssi_retry_count, %answerform); |
my $answer=&ssi_with_retries($urlp, $ssi_retry_count, %answerform); |
|
if ($urlp =~ /\.page$/) { |
|
$answer =~ s/\\end{document}(\d*)$//; |
|
} |
if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') { |
if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') { |
$texversion=~s/(\\keephidden{ENDOFPROBLEM})/$answer$1/; |
if ($urlp =~ /\.page$/) { |
|
my @probs = split(/\\keephidden{ENDOFPROBLEM}/,$texversion); |
|
my $lastprob = pop(@probs); |
|
$texversion = join('\keephidden{ENDOFPROBLEM}',@probs). |
|
$answer.'\keephidden{ENDOFPROBLEM}'.$lastprob; |
|
} else { |
|
$texversion=~s/(\\keephidden{ENDOFPROBLEM})/$answer$1/; |
|
} |
} else { |
} else { |
if ($urlp=~/\.(problem|exam|quiz|assess|survey|form|library)$/) { |
if ($urlp=~/\.(problem|exam|quiz|assess|survey|form|library|page)$/) { |
$texversion=&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'}); |
$texversion=&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'}); |
$texversion =~ s/\\begin{document}//; |
# $texversion =~ s/\\begin{document}//; # FIXME |
my $title = &Apache::lonnet::gettitle($master_seq[$i]); |
my $title = &Apache::lonnet::gettitle($master_seq[$i]); |
$title = &Apache::lonxml::latex_special_symbols($title); |
$title = &Apache::lonxml::latex_special_symbols($title); |
my $body ='\vskip 0 mm \noindent\textbf{'.$title.'}\vskip 0 mm '; |
my $body ='\vskip 0 mm \noindent\textbf{'.$title.'}\vskip 0 mm '; |
Line 2437 ENDPART
|
Line 2472 ENDPART
|
if ($i > 0) { |
if ($i > 0) { |
$result .= '\cleardoublepage'; |
$result .= '\cleardoublepage'; |
} |
} |
$result .= &include_pdf($urlp); |
my $texfrompdf = &include_pdf($urlp); |
|
if ($flag_latex_header_remove ne 'NO') { |
|
$texfrompdf = &latex_header_footer_remove($texfrompdf); |
|
} |
|
$result .= $texfrompdf; |
if ($i != $#master_seq) { |
if ($i != $#master_seq) { |
if ($numberofcolumns eq '1') { |
if ($numberofcolumns eq '1') { |
$result .= '\newpage'; |
$result .= '\newpage'; |
Line 2460 ENDPART
|
Line 2499 ENDPART
|
} |
} |
$result .= $texversion; |
$result .= $texversion; |
$flag_latex_header_remove = 'YES'; |
$flag_latex_header_remove = 'YES'; |
} |
} |
if (&Apache::loncommon::connection_aborted($r)) { |
if (&Apache::loncommon::connection_aborted($r)) { |
last; |
last; |
} |
} |
Line 2561 ENDPART
|
Line 2600 ENDPART
|
$resources_printed .= ":"; |
$resources_printed .= ":"; |
$print_array[$i].=$output; |
$print_array[$i].=$output; |
$student_names[$i].=$person.':'.$fullname.'_END_'; |
$student_names[$i].=$person.':'.$fullname.'_END_'; |
&Apache::lonhtmlcommon::Increment_PrgWin($r,\%prog_state,&mt('last student').' '.$fullname); |
# &Apache::lonhtmlcommon::Increment_PrgWin($r,\%prog_state,&mt('last student').' '.$fullname); |
|
&Apache::lonhtmlcommon::Increment_PrgWin($r,\%prog_state,'last student'); |
$flag_latex_header_remove = 'YES'; |
$flag_latex_header_remove = 'YES'; |
if (&Apache::loncommon::connection_aborted($r)) { last; } |
if (&Apache::loncommon::connection_aborted($r)) { last; } |
} |
} |
Line 2935 sub print_resources {
|
Line 2975 sub print_resources {
|
$i++; |
$i++; |
|
|
if ( !($type eq 'problems' && |
if ( !($type eq 'problems' && |
($curresline!~ m/\.(problem|exam|quiz|assess|survey|form|library)$/)) ) { |
($curresline!~ m/\.(problem|exam|quiz|assess|survey|form|library|page)$/)) ) { |
my ($map,$id,$res_url) = &Apache::lonnet::decode_symb($curresline); |
my ($map,$id,$res_url) = &Apache::lonnet::decode_symb($curresline); |
if (&Apache::lonnet::allowed('bre',$res_url)) { |
if (&Apache::lonnet::allowed('bre',$res_url)) { |
if ($res_url!~m|^ext/| |
if ($res_url!~m|^ext/| |
Line 2944 sub print_resources {
|
Line 2984 sub print_resources {
|
&Apache::lonxml::remember_problem_counter(); |
&Apache::lonxml::remember_problem_counter(); |
|
|
my $rendered = &get_student_view_with_retries($curresline,$ssi_retry_count,$username,$userdomain,$env{'request.course.id'},'tex',$moreenv); |
my $rendered = &get_student_view_with_retries($curresline,$ssi_retry_count,$username,$userdomain,$env{'request.course.id'},'tex',$moreenv); |
|
if ($res_url =~ /\.page$/) { |
|
if ($remove_latex_header eq 'NO') { |
|
if (!($rendered =~ /\\begin\{document\}/)) { |
|
$rendered = &print_latex_header().$rendered; |
|
} |
|
} |
|
if ($remove_latex_header eq 'YES') { |
|
$rendered = &latex_header_footer_remove($rendered); |
|
} else { |
|
$rendered =~ s/\\end{document}\d*//; |
|
} |
|
} |
if(($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') || |
if(($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') || |
($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'only')) { |
($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'only')) { |
# Use a copy of the hash so we don't pervert it on future loop passes. |
# Use a copy of the hash so we don't pervert it on future loop passes. |
Line 2961 sub print_resources {
|
Line 3013 sub print_resources {
|
|
|
|
|
my $header =&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'}); |
my $header =&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'}); |
$header =~ s/\\begin{document}//; #<<<<< |
unless ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'only') { |
|
$header =~ s/\\begin{document}//; #<<<<< |
|
} |
my $title = &Apache::lonnet::gettitle($curresline); |
my $title = &Apache::lonnet::gettitle($curresline); |
$title = &Apache::lonxml::latex_special_symbols($title); |
$title = &Apache::lonxml::latex_special_symbols($title); |
my $body ='\vskip 0 mm \noindent\textbf{'.$title.'}\vskip 0 mm '; |
my $body ='\vskip 0 mm \noindent\textbf{'.$title.'}\vskip 0 mm '; |
Line 3022 sub print_resources {
|
Line 3076 sub print_resources {
|
if (&Apache::loncommon::connection_aborted($r)) { last; } |
if (&Apache::loncommon::connection_aborted($r)) { last; } |
} |
} |
|
|
|
if ($syllabus_first) { |
|
$current_output =~ s/\\\\ Last updated:/Last updated:/ |
|
} |
my $courseidinfo = &get_course(); |
my $courseidinfo = &get_course(); |
my $currentassignment=&Apache::lonxml::latex_special_symbols($helper->{VARS}->{'assignment'},'header'); |
my $currentassignment=&Apache::lonxml::latex_special_symbols($helper->{VARS}->{'assignment'},'header'); |
my $header_line = |
my $header_line = |
Line 3031 sub print_resources {
|
Line 3087 sub print_resources {
|
my $header_start = ($columns_in_format == 1) ? '\lhead' |
my $header_start = ($columns_in_format == 1) ? '\lhead' |
: '\fancyhead[LO]'; |
: '\fancyhead[LO]'; |
$header_line = $header_start.'{'.$header_line.'}'; |
$header_line = $header_start.'{'.$header_line.'}'; |
if ($current_output=~/\\documentclass/ && (!$syllabus_first)) { |
if ($current_output=~/\\documentclass/) { |
$current_output =~ s/\\begin{document}/\\setlength{\\topmargin}{1cm} \\begin{document}\\noindent\\parbox{\\minipagewidth}{\\noindent$header_line$namepostfix}\\vskip 5 mm /; |
$current_output =~ s/\\begin{document}/\\setlength{\\topmargin}{1cm} \\begin{document}\\noindent\\parbox{\\minipagewidth}{\\noindent$header_line$namepostfix}\\vskip 5 mm /; |
} elsif ($syllabus_first) { |
|
|
|
$current_output =~ s/\\\\ Last updated:/Last updated:/ |
|
} else { |
} else { |
my $blankpages = |
my $blankpages = |
'\clearpage\strut\clearpage'x$helper->{'VARS'}->{'EMPTY_PAGES'}; |
'\clearpage\strut\clearpage'x$helper->{'VARS'}->{'EMPTY_PAGES'}; |
Line 3108 sub init_perm {
|
Line 3161 sub init_perm {
|
$perm{'pfo'}=&Apache::lonnet::allowed('pfo', |
$perm{'pfo'}=&Apache::lonnet::allowed('pfo', |
$env{'request.course.id'}.'/'.$env{'request.course.sec'}); |
$env{'request.course.id'}.'/'.$env{'request.course.sec'}); |
} |
} |
|
$perm{'vgr'}=&Apache::lonnet::allowed('vgr',$env{'request.course.id'}); |
|
if (!$perm{'vgr'}) { |
|
$perm{'vgr'}=&Apache::lonnet::allowed('vgr', |
|
$env{'request.course.id'}.'/'.$env{'request.course.sec'}); |
|
} |
} |
} |
|
|
sub get_randomly_ordered_warning { |
sub get_randomly_ordered_warning { |
Line 3710 CHOOSE_STUDENTS1
|
Line 3768 CHOOSE_STUDENTS1
|
<message><br /><hr /> <br /></message> |
<message><br /><hr /> <br /></message> |
<message><h3>Generate new CODEd Assignments</h3></message> |
<message><h3>Generate new CODEd Assignments</h3></message> |
<message><table><tr><td><b>Number of CODEd assignments to print:</b></td><td></message> |
<message><table><tr><td><b>Number of CODEd assignments to print:</b></td><td></message> |
<string variable="NUMBER_TO_PRINT_TOTAL" maxlength="5" size="5"> |
<string variable="NUMBER_TO_PRINT_TOTAL" maxlength="5" size="5" noproceed="1"> |
<validator> |
<validator> |
if (((\$helper->{'VARS'}{'NUMBER_TO_PRINT_TOTAL'}+0) < 1) && |
if (((\$helper->{'VARS'}{'NUMBER_TO_PRINT_TOTAL'}+0) < 1) && |
!\$helper->{'VARS'}{'REUSE_OLD_CODES'} && |
!\$helper->{'VARS'}{'REUSE_OLD_CODES'} && |
Line 3718 CHOOSE_STUDENTS1
|
Line 3776 CHOOSE_STUDENTS1
|
!\$helper->{'VARS'}{'CODE_SELECTED_FROM_LIST'}) { |
!\$helper->{'VARS'}{'CODE_SELECTED_FROM_LIST'}) { |
return "You need to specify the number of assignments to print"; |
return "You need to specify the number of assignments to print"; |
} |
} |
|
if (((\$helper->{'VARS'}{'NUMBER_TO_PRINT_TOTAL'}+0) >= 1) && |
|
(\$helper->{'VARS'}{'SINGLE_CODE'} ne '') ) { |
|
return 'Specifying number of codes to print and a specific code is not compatible'; |
|
} |
return undef; |
return undef; |
</validator> |
</validator> |
</string> |
</string> |
Line 3741 CHOOSE_STUDENTS1
|
Line 3803 CHOOSE_STUDENTS1
|
!\$helper->{'VARS'}{'CODE_SELECTED_FROM_LIST'}) { |
!\$helper->{'VARS'}{'CODE_SELECTED_FROM_LIST'}) { |
return &Apache::lonprintout::is_code_valid(\$helper->{'VARS'}{'SINGLE_CODE'}, |
return &Apache::lonprintout::is_code_valid(\$helper->{'VARS'}{'SINGLE_CODE'}, |
\$helper->{'VARS'}{'CODE_OPTION'}); |
\$helper->{'VARS'}{'CODE_OPTION'}); |
|
} elsif (\$helper->{'VARS'}{'SINGLE_CODE'} ne ''){ |
|
return 'Specifying a code name is incompatible specifying number of codes.'; |
} else { |
} else { |
return undef; # Other forces control us. |
return undef; # Other forces control us. |
} |
} |
Line 3841 CHOOSE_FROM_ANY_SEQUENCE
|
Line 3905 CHOOSE_FROM_ANY_SEQUENCE
|
my $startedTable = 0; # have we started an HTML table yet? (need |
my $startedTable = 0; # have we started an HTML table yet? (need |
# to close it later) |
# to close it later) |
|
|
if (($perm{'pav'} and &Apache::lonnet::allowed('vgr',$env{'request.course.id'})) or |
if (($perm{'pav'} and $perm{'vgr'}) or |
($helper->{VARS}->{'construction'} eq '1')) { |
($helper->{VARS}->{'construction'} eq '1')) { |
&addMessage('<br />' |
&addMessage('<br />' |
.'<h3>'.&mt('Print Options').'</h3>' |
.'<h3>'.&mt('Print Options').'</h3>' |
Line 4088 PROBTYPE
|
Line 4152 PROBTYPE
|
return $helper; |
return $helper; |
} |
} |
|
|
$r->print($helper->display()); |
my $footer; |
if ($helper->{STATE} eq 'START') { |
if ($helper->{STATE} eq 'START') { |
&recently_generated($r); |
my $prtspool=$r->dir_config('lonPrtDir'); |
|
$footer = &recently_generated($prtspool); |
} |
} |
|
$r->print($helper->display($footer)); |
&Apache::lonhelper::unregisterHelperTags(); |
&Apache::lonhelper::unregisterHelperTags(); |
|
|
return OK; |
return OK; |