--- rat/lonpage.pm 2002/09/16 14:23:02 1.46 +++ rat/lonpage.pm 2004/03/22 20:37:06 1.56 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Page Handler # -# $Id: lonpage.pm,v 1.46 2002/09/16 14:23:02 sakharuk Exp $ +# $Id: lonpage.pm,v 1.56 2004/03/22 20:37:06 sakharuk Exp $ # # Copyright Michigan State University Board of Trustees # @@ -33,7 +33,6 @@ # 10/02,10/10,10/14,10/16,10/18,10/19,10/31,11/6,11/14,11/16, # YEAR=2001 # 08/13/01,08/30,10/1 Gerd Kortemeyer -# 12/16 Scott Harrison # YEAR=2002 # 03/19 Gerd Kortemeyer # @@ -46,6 +45,7 @@ use Apache::Constants qw(:common :http); use Apache::lonnet(); use Apache::loncommon(); use Apache::lonxml(); +use Apache::lonmenu; use HTML::TokeParser; use GDBM_File; use Apache::lonsequence; @@ -145,9 +145,9 @@ sub handler { if ($r->header_only) { if ($ENV{'browser.mathml'}) { - $r->content_type('text/xml'); + &Apache::loncommon::content_type($r,'text/xml'); } else { - $r->content_type('text/html'); + &Apache::loncommon::content_type($r,'text/html'); } $r->send_http_header; return OK; @@ -158,6 +158,12 @@ sub handler { my $number_of_columns = 1; my $requrl=$r->uri; my $target = $ENV{'form.grade_target'}; +# &Apache::lonnet::logthis("Got a target of $target"); + if ($target eq 'meta') { + &Apache::loncommon::content_type($r,'text/html'); + $r->send_http_header; + return OK; + } # ----------------------------------------------------------------- Tie db file if (($ENV{'request.course.fn'}) && (!$ENV{'form.forceselect'})) { my $fn=$ENV{'request.course.fn'}; @@ -228,6 +234,13 @@ sub handler { # --------------------------------------------------------- This is an SSI cell my $prefix=$_.'_'; my %posthash=('request.prefix' => $prefix); + if ($ENV{'form.grade_target'} eq 'tex') { + $posthash{'grade_target'}=$ENV{'form.grade_target'}; + $posthash{'textwidth'}=$ENV{'form.textwidth'}; + $posthash{'problem_split'}=$ENV{'form.problem_split'}; + $posthash{'latex_type'}=$ENV{'form.latex_type'}; + $posthash{'rndseed'}=$ENV{'form.rndseed'}; + } if (($ENV{'form.'.$prefix.'submit'}) || ($ENV{'form.all_submit'})) { foreach (keys %ENV) { @@ -239,6 +252,8 @@ sub handler { } } my $output=Apache::lonnet::ssi($src,%posthash); + $output=~ + s/\/\/ BEGIN LON\-CAPA Internal.+\/\/ END LON\-CAPA Internal\s//gs; if ($target eq 'tex') { $output =~ s/^([^&]+)\\begin{document}//; $output =~ s/\\end{document}//; @@ -329,46 +344,48 @@ sub handler { } } unless ($contents) { - $r->content_type('text/html'); + &Apache::loncommon::content_type($r,'text/html'); $r->send_http_header; - $r->print('
Empty page.'); + $r->print(''.&mt('Empty page').'.'); } else { # ------------------------------------------------------------------ Build page # ---------------------------------------------------------------- Send headers unless ($target eq 'tex') { if ($isxml) { - $r->content_type('text/xml'); + &Apache::loncommon::content_type($r,'text/xml'); $r->send_http_header; $r->print($xmlheader); } else { - $r->content_type('text/html'); + &Apache::loncommon::content_type($r,'text/html'); $r->send_http_header; $r->print(''); } # ------------------------------------------------------------------------ Head $r->print("\n\n".$allmeta); - $allscript=~ - s/\/\/ BEGIN LON\-CAPA Internal.+\/\/ END LON\-CAPA Internal\s//gs; if ($allscript) { $r->print("\n\n"); } - $r->print(&Apache::lonxml::registerurl(1,undef)); + $r->print(&Apache::lonmenu::registerurl(1,undef)); $r->print("\n\n"); # ------------------------------------------------------------------ Start body if ($isxml) { $r->print($xmlbody); } else { - $r->print(''); + $r->print( + ''. + &Apache::lonmenu::menubuttons(undef,$target,1) + ); } # ------------------------------------------------------------------ Start form if ($nforms) { $r->print('