[LON-CAPA-cvs] cvs: loncom /interface lonprintout.pm

sakharuk lon-capa-cvs@mail.lon-capa.org
Wed, 01 Oct 2003 13:49:41 -0000


sakharuk		Wed Oct  1 09:49:41 2003 EDT

  Modified files:              
    /loncom/interface	lonprintout.pm 
  Log:
  Can print only answer for the single resource from construction space.
  
  
Index: loncom/interface/lonprintout.pm
diff -u loncom/interface/lonprintout.pm:1.244 loncom/interface/lonprintout.pm:1.245
--- loncom/interface/lonprintout.pm:1.244	Tue Sep 30 13:29:26 2003
+++ loncom/interface/lonprintout.pm	Wed Oct  1 09:49:41 2003
@@ -1,7 +1,7 @@
 # The LearningOnline Network
 # Printout
 #
-# $Id: lonprintout.pm,v 1.244 2003/09/30 17:29:26 bowersj2 Exp $
+# $Id: lonprintout.pm,v 1.245 2003/10/01 13:49:41 sakharuk Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -740,8 +740,15 @@
 		    $texversion=~s/(\\keephidden{ENDOFPROBLEM})/$answer$1/;
 		} else {
 		    $texversion=&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'});
-		    $texversion.='\vskip 0 mm \noindent\textbf{'.&Apache::lonnet::gettitle($helper->{'VARS'}->{'symb'}).'}\vskip 0 mm ';
-		    $texversion.=&path_to_problem ($currentURL,$LaTeXwidth);
+		    if ($helper->{'VARS'}->{'construction'} ne '1') {
+			$texversion.='\vskip 0 mm \noindent\textbf{'.&Apache::lonnet::gettitle($helper->{'VARS'}->{'symb'}).'}\vskip 0 mm ';
+			$texversion.=&path_to_problem ($currentURL,$LaTeXwidth);
+		    } else {
+			$texversion.='\vskip 0 mm \noindent\textbf{Prints from construction space - there is no title.}\vskip 0 mm ';
+			my $URLpath=$currentURL;
+			$URLpath=~s/~([^\/]+)/public_html\/$1\/$1/;
+			$texversion.=&path_to_problem ($URLpath,$LaTeXwidth);
+		    }
 		    $texversion.='\vskip 1 mm '.$answer.'\end{document}';
 		}
 	    }
@@ -769,21 +776,32 @@
 		$Apache::lonratedt::resources[$Apache::lonratedt::order[$member]]=~/^([^:]*):([^:]*):/;
 		my $urlp=$2;
 		if ($urlp=~/\.(problem|exam|quiz|assess|survey|form|library|xml|html|htm|xhtml|xhtm)$/) {
-		    my %form;
-		    $form{'grade_target'}='tex';
-		    $form{'textwidth'}=$LaTeXwidth;
-		    $form{'problem_split'}=$parmhash{'problem_stream_switch'};
-		    $form{'latex_type'}=$helper->{'VARS'}->{'LATEX_TYPE'};
-		    $form{'rndseed'}=$rndseed;
-		    my $texversion=&Apache::lonnet::ssi($urlp,%form);
-		    if($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') {
+		    my $texversion='';
+		    if ($helper->{'VARS'}->{'ANSWER_TYPE'} ne 'only') {
+			my %form;
+			$form{'grade_target'}='tex';
+			$form{'textwidth'}=$LaTeXwidth;
+			$form{'problem_split'}=$parmhash{'problem_stream_switch'};
+			$form{'latex_type'}=$helper->{'VARS'}->{'LATEX_TYPE'};
+			$form{'rndseed'}=$rndseed;
+			$texversion=&Apache::lonnet::ssi($urlp,%form);
+		    }
+		    if(($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') ||
+		       ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'only')) {
 			my %form;
 			$form{'grade_target'}='answer';
 			$form{'answer_output_mode'}='tex';
 			$form{'rndseed'}=$rndseed;
                         if ($urlp=~/\/res\//) {$ENV{'request.state'}='published';}
 			my $answer=&Apache::lonnet::ssi($urlp,%form);
-			$texversion=~s/(\\keephidden{ENDOFPROBLEM})/$answer$1/;
+			if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') {
+			    $texversion=~s/(\\keephidden{ENDOFPROBLEM})/$answer$1/;
+			} else {
+			    $texversion=&print_latex_header($helper->{'VARS'}->{'LATEX_TYPE'});
+			    $texversion.='\vskip 0 mm \noindent\textbf{'.&Apache::lonnet::gettitle($helper->{'VARS'}->{'symb'}).'}\vskip 0 mm ';
+			    $texversion.=&path_to_problem ($currentURL,$LaTeXwidth);
+			    $texversion.='\vskip 1 mm '.$answer.'\end{document}';
+			}
 		    }
 		    if ($flag_latex_header_remove ne 'NO') {
 			$texversion = &latex_header_footer_remove($texversion);