--- rat/lonwrapper.pm 2008/01/15 15:23:28 1.27 +++ rat/lonwrapper.pm 2009/11/24 05:37:35 1.37 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Wrapper for external and binary files as standalone resources # -# $Id: lonwrapper.pm,v 1.27 2008/01/15 15:23:28 www Exp $ +# $Id: lonwrapper.pm,v 1.37 2009/11/24 05:37:35 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -26,6 +26,7 @@ # http://www.lon-capa.org/ # + package Apache::lonwrapper; use strict; @@ -52,23 +53,15 @@ sub simple_menu { sub wrapper { my ($topurl,$bottomurl) = @_; - if ($env{'browser.interface'} eq 'textual') { -# -# ssi-based rendering for text-based interface -# - return - &Apache::loncommon::start_page('Menu',undef, - {'bgcolor' => '#FFFFFF', - 'force_register' => 1, - }). - &Apache::lonnet::ssi_body($bottomurl). - &Apache::loncommon::end_page(); - } - - my %layout = ('border' => 0); if ($env{'environment.remote'} eq 'off') { - $layout{'rows'} = "200,*"; + if (($env{'request.course.id'}) && + (&Apache::lonnet::allowed('opa',$env{'request.course.id'}. + ($env{'request.course.sec'}?'/'.$env{'request.course.sec'}:'')))) { + $layout{'rows'} = "135,*"; + } else { + $layout{'rows'} = "100,*"; + } } else { $layout{'rows'} = "1,*"; $topurl = "/adm/rat/empty.html"; @@ -84,7 +77,7 @@ sub wrapper { &Apache::loncommon::end_page({'frameset' => 1}); foreach my $url ($topurl,$bottomurl) { - if ($url !~ /^http:/) { + if ($url !~ /^https?\:/) { $url = &Apache::lonenc::check_encrypt($url); } } @@ -140,8 +133,11 @@ sub handler { # if ($is_ext) { $ENV{'QUERY_STRING'}=~s/(^|\&)symb=[^\&]*/$1/; + $ENV{'QUERY_STRING'} =~ s/\&$//; } - $url.=(($url=~/\?/)?'&':'?').$ENV{'QUERY_STRING'}; + unless ($ENV{'QUERY_STRING'} eq '') { + $url.=(($url=~/\?/)?'&':'?').$ENV{'QUERY_STRING'}; + } # reappend the query arguments $r->print(&wrapper($orgurl,$url)); } # not just the menu @@ -151,6 +147,33 @@ sub handler { 1; __END__ +=pod + +=head1 NAME + +Apache::lonwrapper - External and binary file management. + +=head1 SYNOPSIS + +Wrapper for external and binary files as standalone resources. Edit handler for rat maps; TeX content handler. + +This is part of the LearningOnline Network with CAPA project +described at http://www.lon-capa.org. + +=head1 Subroutines + +=over + +=item simple_menu() + +=item wrapper() + +=item handler() + +=back + +=cut +