--- rat/lonpage.pm 2007/06/25 23:27:10 1.83 +++ rat/lonpage.pm 2008/11/20 13:11:43 1.88 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Page Handler # -# $Id: lonpage.pm,v 1.83 2007/06/25 23:27:10 albertel Exp $ +# $Id: lonpage.pm,v 1.88 2008/11/20 13:11:43 jms Exp $ # # Copyright Michigan State University Board of Trustees # @@ -27,6 +27,107 @@ # ### +=head1 NAME + +Apache::lonpage - Page Handler + +=head1 SYNOPSIS + +Invoked by /etc/httpd/conf/srm.conf: + + + SetHandler perl-script + PerlHandler Apache::lonpage + + +=head1 INTRODUCTION + +This module renders a .page resource. + +This is part of the LearningOnline Network with CAPA project +described at http://www.lon-capa.org. + +=head1 HANDLER SUBROUTINE + +This routine is called by Apache and mod_perl. + +=over 4 + +=item * + +set document type for header only + +=item * + +tie db file + +=item * + +render page + +=item * + +add to symb list + +=item * + +page parms + +=item * + +Get SSI output, post parameters + +=item * + +SSI cell rendering + +=item * + +Deal with Applet codebases + +=item * + +Build page + +=item * + +send headers + +=item * + +start body + +=item * + +start form + +=item * + +start table + +=item * + +submit element, etc, render page, untie hash + +=back + +=head1 OTHER SUBROUTINES + +=over 4 + +=item * + +euclid() : Euclid's method for determining the greatest common denominator. + +=item * + +tracetable() : Build page table. + +=back + +=cut + + package Apache::lonpage; use strict; @@ -78,7 +179,7 @@ sub tracetable { my $frid=$hash{'map_finish_'.$hash{'src_'.$rid}}; $sofar= &tracetable($sofar,$hash{'map_start_'.$hash{'src_'.$rid}}, - '&'.$frid.'&'); + '&'.$frid.$beenhere); $sofar++; if ($hash{'src_'.$frid}) { my $brepriv=&Apache::lonnet::allowed('bre',$hash{'src_'.$frid}); @@ -378,17 +479,18 @@ sub handler { $r->send_http_header; # ------------------------------------------------------------------------ Head if ($allscript) { - $allscript .= - "\n\n"; + $allscript = + "\n".'\n"; } # ------------------------------------------------------------------ Start body - $r->print(&Apache::loncommon::start_page(undef,undef, + $r->print(&Apache::loncommon::start_page(undef,$allscript, {'force_register' => 1, 'bgcolor' => '#ffffff',})); # ------------------------------------------------------------------ Start form if ($nforms) { - $r->print('
'); } @@ -589,105 +691,6 @@ sub get_buttons { 1; __END__ -=head1 NAME - -Apache::lonpage - Page Handler - -=head1 SYNOPSIS - -Invoked by /etc/httpd/conf/srm.conf: - - - SetHandler perl-script - PerlHandler Apache::lonpage - - -=head1 INTRODUCTION - -This module renders a .page resource. - -This is part of the LearningOnline Network with CAPA project -described at http://www.lon-capa.org. - -=head1 HANDLER SUBROUTINE - -This routine is called by Apache and mod_perl. - -=over 4 - -=item * - -set document type for header only - -=item * - -tie db file - -=item * - -render page - -=item * - -add to symb list - -=item * - -page parms - -=item * - -Get SSI output, post parameters - -=item * - -SSI cell rendering - -=item * - -Deal with Applet codebases - -=item * - -Build page - -=item * - -send headers - -=item * - -start body - -=item * - -start form - -=item * - -start table - -=item * - -submit element, etc, render page, untie hash - -=back - -=head1 OTHER SUBROUTINES - -=over 4 - -=item * - -euclid() : Euclid's method for determining the greatest common denominator. - -=item * - -tracetable() : Build page table. - -=back - -=cut