version 1.390, 2005/09/01 18:35:15
|
version 1.395, 2005/10/30 02:24:34
|
Line 42 use Apache::lonratedt;
|
Line 42 use Apache::lonratedt;
|
use POSIX qw(strftime); |
use POSIX qw(strftime); |
use Apache::lonlocal; |
use Apache::lonlocal; |
|
|
my $resources_printed = ''; |
|
|
|
# |
# |
# Convert a numeric code to letters |
# Convert a numeric code to letters |
# |
# |
Line 823 sub print_latex_header {
|
Line 821 sub print_latex_header {
|
$output.='\newcommand{\keephidden}[1]{}\renewcommand{\deg}{$^{\circ}$}'."\n". |
$output.='\newcommand{\keephidden}[1]{}\renewcommand{\deg}{$^{\circ}$}'."\n". |
'\usepackage{longtable}\usepackage{textcomp}\usepackage{makeidx}'."\n". |
'\usepackage{longtable}\usepackage{textcomp}\usepackage{makeidx}'."\n". |
'\usepackage[dvips]{graphicx}\usepackage{epsfig}'."\n". |
'\usepackage[dvips]{graphicx}\usepackage{epsfig}'."\n". |
|
'\usepackage{wrapfig}'. |
'\usepackage{picins}\usepackage{calc}'."\n". |
'\usepackage{picins}\usepackage{calc}'."\n". |
'\newenvironment{choicelist}{\begin{list}{}{\setlength{\rightmargin}{0in}'."\n". |
'\newenvironment{choicelist}{\begin{list}{}{\setlength{\rightmargin}{0in}'."\n". |
'\setlength{\leftmargin}{0.13in}\setlength{\topsep}{0.05in}'."\n". |
'\setlength{\leftmargin}{0.13in}\setlength{\topsep}{0.05in}'."\n". |
Line 904 sub unsupported {
|
Line 903 sub unsupported {
|
|
|
|
|
# |
# |
|
# List of recently generated print files |
|
# |
|
|
|
sub recently_generated { |
|
my $r=shift; |
|
my $prtspool=$r->dir_config('lonPrtDir'); |
|
$r->print('<h4>'.&mt('Recently generated printouts').'</h4>'); |
|
opendir(DIR,$prtspool); |
|
while (my $filename=readdir(DIR)) { |
|
if ($filename=~/^$env{'user.name'}\_$env{'user.domain'}\_printout\_(\d+)\_.*.pdf$/) { |
|
my ($cdev,$cino,$cmode,$cnlink, |
|
$cuid,$cgid,$crdev,$csize, |
|
$catime,$cmtime,$cctime, |
|
$cblksize,$cblocks)=stat($prtspool.'/'.$filename); |
|
$r->print ("<a href='/prtspool/$filename'>". |
|
&mt('Generated').' '.&Apache::lonlocal::locallocaltime($cctime). |
|
' ('.$csize.' bytes)</a><br />'); |
|
} |
|
} |
|
closedir(DIR); |
|
} |
|
|
|
# |
# Retrieve the hash of page breaks. |
# Retrieve the hash of page breaks. |
# |
# |
# Inputs: |
# Inputs: |
Line 927 sub get_page_breaks {
|
Line 949 sub get_page_breaks {
|
sub output_data { |
sub output_data { |
my ($r,$helper,$rparmhash) = @_; |
my ($r,$helper,$rparmhash) = @_; |
my %parmhash = %$rparmhash; |
my %parmhash = %$rparmhash; |
|
my $resources_printed = ''; |
my $html=&Apache::lonxml::xmlbegin(); |
my $html=&Apache::lonxml::xmlbegin(); |
my $bodytag=&Apache::loncommon::bodytag('Preparing Printout'); |
my $bodytag=&Apache::loncommon::bodytag('Preparing Printout'); |
$r->print(<<ENDPART); |
$r->print(<<ENDPART); |
Line 1631 sub get_CODE {
|
Line 1654 sub get_CODE {
|
my $max='1'.'0'x$size; |
my $max='1'.'0'x$size; |
my $newcode; |
my $newcode; |
while(1) { |
while(1) { |
$newcode=sprintf("%06d",int(rand($max))); |
$newcode=sprintf("%0".$size."d",int(rand($max))); |
if (!exists($$all_codes{$newcode})) { |
if (!exists($$all_codes{$newcode})) { |
$$all_codes{$newcode}=1; |
$$all_codes{$newcode}=1; |
if ($type eq 'number' ) { |
if ($type eq 'number' ) { |
Line 1852 sub printHelper {
|
Line 1875 sub printHelper {
|
$helper->declareVar("showallfoils"); |
$helper->declareVar("showallfoils"); |
|
|
# The page breaks can get loaded initially from the course environment: |
# The page breaks can get loaded initially from the course environment: |
|
# But we only do this in the initial state so that they are allowed to change. |
|
# |
|
|
if((!defined($env{"form.CURRENT_STATE"})) || |
$helper->{VARS}->{FINISHPAGE} = ''; |
($env{'form.CURRENT_STATE'} == "START")) { |
|
$helper->{VARS}->{FINISHPAGE} = ""; # In case they did a back e.g. |
|
} |
|
|
|
|
|
|
|
&Apache::loncommon::restore_course_settings('print', |
&Apache::loncommon::restore_course_settings('print', |
{'pagebreaks' => 'scalar', |
{'pagebreaks' => 'scalar', |
'lastprinttype' => 'scalar'}); |
'lastprinttype' => 'scalar'}); |
|
|
|
|
if("$helper->{VARS}->{PRINT_TYPE}" eq "$env{'form.lastprinttype'}") { |
|
$helper->{VARS}->{FINISHPAGE} = $env{'form.pagebreaks'}; |
if($helper->{VARS}->{PRINT_TYPE} eq $env{'form.lastprinttype'}) { |
|
if (!defined ($env{"form.CURRENT_STATE"})) { |
|
|
|
$helper->{VARS}->{FINISHPAGE} = $env{'form.pagebreaks'}; |
|
} else { |
|
my $state = $env{"form.CURRENT_STATE"}; |
|
if ($state eq "START") { |
|
$helper->{VARS}->{FINISHPAGE} = $env{'form.pagebreaks'}; |
|
} |
|
} |
|
|
} |
} |
|
|
|
|
Line 1976 sub printHelper {
|
Line 2005 sub printHelper {
|
$helper->declareVar('SEQUENCE'); |
$helper->declareVar('SEQUENCE'); |
|
|
# Useful for debugging: Dump the help vars |
# Useful for debugging: Dump the help vars |
# $r->print(Dumper($helper->{VARS})); |
# $r->print(Dumper($helper->{VARS})); |
# $r->print($map); |
# $r->print($map); |
|
|
# If we're in a sequence... |
# If we're in a sequence... |
Line 2322 CHOOSE_FROM_SUBDIR
|
Line 2351 CHOOSE_FROM_SUBDIR
|
<nextstate>CHOOSE_FROM_ANY_SEQUENCE</nextstate> |
<nextstate>CHOOSE_FROM_ANY_SEQUENCE</nextstate> |
<filterfunc>return \$res->is_sequence;</filterfunc> |
<filterfunc>return \$res->is_sequence;</filterfunc> |
<valuefunc>return $urlValue;</valuefunc> |
<valuefunc>return $urlValue;</valuefunc> |
|
<choicefunc>return \$res->hasResource(\$res,sub { return !\$_[0]->is_sequence() },0,0); |
|
</choicefunc> |
<option text='Newpage' variable='FINISHPAGE' /> |
<option text='Newpage' variable='FINISHPAGE' /> |
</resource> |
</resource> |
</state> |
</state> |
Line 2454 RNDSEED
|
Line 2485 RNDSEED
|
$helper->{'VARS'}->{'style_file'}=$env{'form.style_file_value'}; |
$helper->{'VARS'}->{'style_file'}=$env{'form.style_file_value'}; |
|
|
} |
} |
|
|
} |
} |
|
|
|
|
Line 2481 RNDSEED
|
Line 2511 RNDSEED
|
} |
} |
|
|
$r->print($helper->display()); |
$r->print($helper->display()); |
|
if ($helper->{STATE} eq 'START') { |
|
&recently_generated($r); |
|
} |
&Apache::lonhelper::unregisterHelperTags(); |
&Apache::lonhelper::unregisterHelperTags(); |
|
|
return OK; |
return OK; |