version 1.498, 2007/04/20 20:13:58
|
version 1.505, 2007/07/25 20:39:57
|
Line 60 sub fetch_raw_resource {
|
Line 60 sub fetch_raw_resource {
|
my ($url) = @_; |
my ($url) = @_; |
|
|
my $filename = &Apache::lonnet::filelocation("", $url); |
my $filename = &Apache::lonnet::filelocation("", $url); |
# |
my $contents = &Apache::lonnet::getfile($filename); |
# fetch if needed: |
|
# |
|
if (! -e $filename) { |
|
my $repcopy_result = &Apache::lonnet::repcopy($filename); |
|
|
|
if ($repcopy_result ne 'ok') { |
if ($contents == -1) { |
return "File open failed for $filename"; # This will bomb the print. |
return "File open failed for $filename"; # This will bomb the print. |
} |
|
} |
} |
my $contents = &Apache::lonnet::readfile($filename); |
|
|
|
return $contents; |
return $contents; |
|
|
|
|
} |
} |
|
|
Line 873 sub page_format_transformation {
|
Line 867 sub page_format_transformation {
|
my ($textwidth,$textheight,$oddoffset,$evenoffset,$topmargin); |
my ($textwidth,$textheight,$oddoffset,$evenoffset,$topmargin); |
|
|
if ($selectionmade eq '4') { |
if ($selectionmade eq '4') { |
$assignment='Problems from the Whole Course'; |
if ($choice eq 'all_problems') { |
|
$assignment='Problems from the Whole Course'; |
|
} else { |
|
$assignment='Resources from the Whole Course'; |
|
} |
} else { |
} else { |
$assignment=&Apache::lonxml::latex_special_symbols($assignment,'header'); |
$assignment=&Apache::lonxml::latex_special_symbols($assignment,'header'); |
} |
} |
Line 1293 sub output_data {
|
Line 1291 sub output_data {
|
my ($r,$helper,$rparmhash) = @_; |
my ($r,$helper,$rparmhash) = @_; |
my %parmhash = %$rparmhash; |
my %parmhash = %$rparmhash; |
$resources_printed = ''; |
$resources_printed = ''; |
|
my $do_postprocessing = 1; |
my $js = <<ENDPART; |
my $js = <<ENDPART; |
<script type="text/javascript"> |
<script type="text/javascript"> |
var editbrowser; |
var editbrowser; |
Line 1372 ENDPART
|
Line 1371 ENDPART
|
if ($helper->{'VARS'}->{'showallfoils'} eq "1") { |
if ($helper->{'VARS'}->{'showallfoils'} eq "1") { |
$form{'showallfoils'} = $helper->{'VARS'}->{'showallfoils'}; |
$form{'showallfoils'} = $helper->{'VARS'}->{'showallfoils'}; |
} |
} |
|
|
|
if ($helper->{'VARS'}->{'style_file'}=~/\w/) { |
|
&Apache::lonnet::appenv('construct.style' => |
|
$helper->{'VARS'}->{'style_file'}); |
|
} elsif ($env{'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, ... |
Line 1395 ENDPART
|
Line 1402 ENDPART
|
if ($helper->{'VARS'}->{'ANSWER_TYPE'} ne 'only') { |
if ($helper->{'VARS'}->{'ANSWER_TYPE'} ne 'only') { |
my %moreenv; |
my %moreenv; |
$moreenv{'request.filename'}=$cleanURL; |
$moreenv{'request.filename'}=$cleanURL; |
if ($helper->{'VARS'}->{'style_file'}=~/\w/) { |
|
$moreenv{'construct.style'}=$helper->{'VARS'}->{'style_file'}; |
|
my $dom = $env{'user.domain'}; |
|
my $user = $env{'user.name'}; |
|
my $put_result = &Apache::lonnet::put('environment',{'construct.style'=>$helper->{'VARS'}->{'style_file'}},$dom,$user); |
|
} |
|
if ($helper->{'VARS'}->{'probstatus'} eq 'exam') {$form{'problemtype'}='exam';} |
if ($helper->{'VARS'}->{'probstatus'} eq 'exam') {$form{'problemtype'}='exam';} |
$form{'problem_split'}=$parmhash{'problem_stream_switch'}; |
$form{'problem_split'}=$parmhash{'problem_stream_switch'}; |
$form{'suppress_tries'}=$parmhash{'suppress_tries'}; |
$form{'suppress_tries'}=$parmhash{'suppress_tries'}; |
Line 1449 ENDPART
|
Line 1450 ENDPART
|
$texversion.='\vskip 0 mm \noindent\textbf{Prints from construction space - there is no title.}\vskip 0 mm '; |
$texversion.='\vskip 0 mm \noindent\textbf{Prints from construction space - there is no title.}\vskip 0 mm '; |
my $URLpath=$cleanURL; |
my $URLpath=$cleanURL; |
$URLpath=~s/~([^\/]+)/public_html\/$1\/$1/; |
$URLpath=~s/~([^\/]+)/public_html\/$1\/$1/; |
$texversion.=&path_to_problem ($URLpath,$LaTeXwidth); |
$texversion.=&path_to_problem($URLpath,$LaTeXwidth); |
} |
} |
$texversion.='\vskip 1 mm '.$answer.'\end{document}'; |
$texversion.='\vskip 1 mm '.$answer.'\end{document}'; |
} |
} |
Line 1489 ENDPART
|
Line 1490 ENDPART
|
# |
# |
|
|
$result = &fetch_raw_resource($currentURL); |
$result = &fetch_raw_resource($currentURL); |
|
$do_postprocessing = 0; # Don't massage the result. |
|
|
} else { |
} else { |
$result.=&unsupported($currentURL,$helper->{'VARS'}->{'LATEX_TYPE'}, |
$result.=&unsupported($currentURL,$helper->{'VARS'}->{'LATEX_TYPE'}, |
Line 1894 ENDPART
|
Line 1896 ENDPART
|
$result .= '\end{document}'; |
$result .= '\end{document}'; |
} |
} |
#-------------------------------------------------------- corrections for the different page formats |
#-------------------------------------------------------- corrections for the different page formats |
$result = &page_format_transformation($papersize,$laystyle,$numberofcolumns,$helper->{'VARS'}->{'PRINT_TYPE'},$result,$helper->{VARS}->{'assignment'},$helper->{'VARS'}->{'TABLE_CONTENTS'},$helper->{'VARS'}->{'TABLE_INDEX'},$selectionmade); |
|
$result = &latex_corrections($number_of_columns,$result,$selectionmade, |
# Only post process if that has not been turned off e.g. by a raw latex resource. |
$helper->{'VARS'}->{'ANSWER_TYPE'}); |
|
#if ($numberofcolumns == 1) { |
if ($do_postprocessing) { |
|
$result = &page_format_transformation($papersize,$laystyle,$numberofcolumns,$helper->{'VARS'}->{'PRINT_TYPE'},$result,$helper->{VARS}->{'assignment'},$helper->{'VARS'}->{'TABLE_CONTENTS'},$helper->{'VARS'}->{'TABLE_INDEX'},$selectionmade); |
|
$result = &latex_corrections($number_of_columns,$result,$selectionmade, |
|
$helper->{'VARS'}->{'ANSWER_TYPE'}); |
|
#if ($numberofcolumns == 1) { |
$result =~ s/\\textwidth\s*=\s*-?\d*\.?\d*\s*(cm|mm|in)/\\textwidth= $helper->{'VARS'}->{'pagesize.width'} $helper->{'VARS'}->{'pagesize.widthunit'} /; |
$result =~ s/\\textwidth\s*=\s*-?\d*\.?\d*\s*(cm|mm|in)/\\textwidth= $helper->{'VARS'}->{'pagesize.width'} $helper->{'VARS'}->{'pagesize.widthunit'} /; |
$result =~ s/\\textheight\s*=?\s*-?\d*\.?\d*\s*(cm|mm|in)/\\textheight $helper->{'VARS'}->{'pagesize.height'} $helper->{'VARS'}->{'pagesize.heightunit'} /; |
$result =~ s/\\textheight\s*=?\s*-?\d*\.?\d*\s*(cm|mm|in)/\\textheight $helper->{'VARS'}->{'pagesize.height'} $helper->{'VARS'}->{'pagesize.heightunit'} /; |
$result =~ s/\\evensidemargin\s*=\s*-?\d*\.?\d*\s*(cm|mm|in)/\\evensidemargin= $helper->{'VARS'}->{'pagesize.lmargin'} $helper->{'VARS'}->{'pagesize.lmarginunit'} /; |
$result =~ s/\\evensidemargin\s*=\s*-?\d*\.?\d*\s*(cm|mm|in)/\\evensidemargin= $helper->{'VARS'}->{'pagesize.lmargin'} $helper->{'VARS'}->{'pagesize.lmarginunit'} /; |
$result =~ s/\\oddsidemargin\s*=\s*-?\d*\.?\d*\s*(cm|mm|in)/\\oddsidemargin= $helper->{'VARS'}->{'pagesize.lmargin'} $helper->{'VARS'}->{'pagesize.lmarginunit'} /; |
$result =~ s/\\oddsidemargin\s*=\s*-?\d*\.?\d*\s*(cm|mm|in)/\\oddsidemargin= $helper->{'VARS'}->{'pagesize.lmargin'} $helper->{'VARS'}->{'pagesize.lmarginunit'} /; |
#} |
#} |
|
} |
|
|
#-- writing .tex file in prtspool |
#-- writing .tex file in prtspool |
my $temp_file; |
my $temp_file; |
Line 2600 CHOOSE_STUDENTS
|
Line 2607 CHOOSE_STUDENTS
|
</validator> |
</validator> |
</string> |
</string> |
<message></td></tr><tr><td></message> |
<message></td></tr><tr><td></message> |
<message><b>Names to store the CODEs under for later:</b></message> |
<message><b>Names to save the CODEs under for later:</b></message> |
<message></td><td></message> |
<message></td><td></message> |
<string variable="ANON_CODE_STORAGE_NAME" maxlength="50" size="20" /> |
<string variable="ANON_CODE_STORAGE_NAME" maxlength="50" size="20" /> |
<message></td></tr><tr><td></message> |
<message></td></tr><tr><td></message> |
Line 2711 CHOOSE_STUDENTS1
|
Line 2718 CHOOSE_STUDENTS1
|
</validator> |
</validator> |
</string> |
</string> |
<message></td></tr><tr><td></message> |
<message></td></tr><tr><td></message> |
<message><b>Names to store the CODEs under for later:</b></message> |
<message><b>Names to save the CODEs under for later:</b></message> |
<message></td><td></message> |
<message></td><td></message> |
<string variable="ANON_CODE_STORAGE_NAME" maxlength="50" size="20" /> |
<string variable="ANON_CODE_STORAGE_NAME" maxlength="50" size="20" /> |
<message></td></tr><tr><td></message> |
<message></td></tr><tr><td></message> |
Line 2927 CHOOSE_FROM_ANY_SEQUENCE
|
Line 2934 CHOOSE_FROM_ANY_SEQUENCE
|
} |
} |
|
|
if ($helper->{'VARS'}->{'construction'}) { |
if ($helper->{'VARS'}->{'construction'}) { |
my $stylevalue=$env{'construct.style'}; |
my $stylevalue='$Apache::lonnet::env{"construct.style"}'; |
my $randseedtext=&mt("Use random seed"); |
my $randseedtext=&mt("Use random seed"); |
my $stylefiletext=&mt("Use style file"); |
my $stylefiletext=&mt("Use style file"); |
|
|
Line 2941 CHOOSE_FROM_ANY_SEQUENCE
|
Line 2948 CHOOSE_FROM_ANY_SEQUENCE
|
</defaultvalue> |
</defaultvalue> |
</string> |
</string> |
<message></td></tr><tr><td align="right"> |
<message></td></tr><tr><td align="right"> |
<label for="style_file_value">$stylefiletext</label>: |
<label for="style_file">$stylefiletext</label>: |
</td><td></message> |
</td><td></message> |
<message><input type="text" size="40" name="style_file_value" value="$stylevalue" /> <a href="javascript:openbrowser('helpform','style_file_value','sty')">Select style file</a> </td><tr><td></message> |
<string variable="style_file" size="40"> |
|
<defaultvalue> |
|
return $stylevalue; |
|
</defaultvalue> |
|
</string><message> <a href="javascript:openbrowser('helpform','style_file_forminput','sty')">Select style file</a> </td><tr><td></message> |
<choices allowempty="1" multichoice="true" variable="showallfoils"> |
<choices allowempty="1" multichoice="true" variable="showallfoils"> |
<choice computer="1">Show all foils?</choice> |
<choice computer="1">Show all foils?</choice> |
</choices> |
</choices> |
<message></td></tr></message> |
<message></td></tr></message> |
RNDSEED |
RNDSEED |
&Apache::lonxml::xmlparse($r, 'helper', $xmlfrag); |
&Apache::lonxml::xmlparse($r, 'helper', $xmlfrag); |
$helper->{'VARS'}->{'style_file'}=$env{'form.style_file_value'}; |
|
|
|
} |
} |
} |
} |
|
|