--- rat/lonpageflip.pm 2008/11/20 13:11:43 1.76
+++ rat/lonpageflip.pm 2012/05/01 22:51:12 1.80.8.1
@@ -2,7 +2,7 @@
#
# Page flip handler
#
-# $Id: lonpageflip.pm,v 1.76 2008/11/20 13:11:43 jms Exp $
+# $Id: lonpageflip.pm,v 1.80.8.1 2012/05/01 22:51:12 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -27,46 +27,6 @@
# http://www.lon-capa.org/
#
-=pod
-
-=head1 NAME
-
-Apache::lonpageflip
-
-=head1 SYNOPSIS
-
-Deals with forward, backward, and other page flips.
-
-This is part of the LearningOnline Network with CAPA project
-described at http://www.lon-capa.org.
-
-=head1 OVERVIEW
-
-(empty)
-
-=head1 SUBROUTINES
-
-=over cleanup()
-
-=item addrid()
-
-=item fullmove()
-
-=item hash_src()
-
-=item move()
-
-=item get_next_possible_move()
-
-=item navlaunch()
-
-=item first_accessible_resource()
-
-=item handler()
-
-=back
-
-=cut
package Apache::lonpageflip;
@@ -262,15 +222,15 @@ sub navlaunch {
&Apache::loncommon::content_type($r,'text/html');
&Apache::loncommon::no_cache($r);
$r->send_http_header;
- $r->print(&Apache::loncommon::start_page('Launched'));
+ $r->print(&Apache::loncommon::start_page('Launched'));
$r->print(<
Collapse external navigation window
ENDNAV @@ -288,7 +248,8 @@ sub first_accessible_resource { my ($name,$value) = split(/=/,$pair); $args{&unescape($name)} = &unescape($value); } - if (!&Apache::lonnet::allowed('bre',$url,$args{'symb'})) { + if ((($env{'environment.remotenavmap'} eq 'on') && ($furl =~ m{^/adm/navmaps})) || + (!&Apache::lonnet::allowed('bre',$url,$args{'symb'}))) { # Wow, we cannot see this ... move forward to the next one that we can see my ($newrid,$newmap)=&move($hash{'first_rid'},$hash{'first_mapurl'},'forward'); # Build the new URL @@ -365,19 +326,19 @@ sub handler { untie %hash; } else { $newloc='/adm/navmaps'; - } - if ($newloc eq '/adm/navmaps' && $direction eq 'navlaunch') { - &navlaunch($r); - return OK; - } else { + } + if (($newloc =~ m{^/adm/navmaps}) && ($direction eq 'navlaunch')) { + &navlaunch($r); + return OK; + } else { &Apache::loncommon::content_type($r,'text/html'); $r->header_out(Location => &Apache::lonnet::absolute_url().$newloc); return REDIRECT; - } + } } - $currenturl=~s/^http\:\/\///; + $currenturl=~s/^https?\:\/\///; $currenturl=~s/^[^\/]+//; # # Is the current URL on the map? If not, start with last known URL @@ -392,16 +353,16 @@ sub handler { if ($last) { $currenturl=&Apache::lonnet::clutter((&Apache::lonnet::decode_symb($last))[2]); } else { - if ($direction eq 'return') { + if ($direction eq 'return') { &Apache::loncommon::content_type($r,'text/html'); $r->header_out(Location => &Apache::lonnet::absolute_url(). '/adm/noidea.html'); return REDIRECT; - } else { - &navlaunch($r); - return OK; - } + } else { + &navlaunch($r); + return OK; + } } } # ------------------------------------------- Do we have any idea where we are? @@ -489,6 +450,11 @@ sub handler { &Apache::lonnet::appenv({'user.criticalcheck.time'=>time}); } + if (($redirecturl =~ m{^/adm/navmaps}) && + ($env{'environment.remotenavmap'} eq 'on')) { + &navlaunch($r); + return OK; + } &Apache::loncommon::content_type($r,'text/html'); my $url=&Apache::lonnet::absolute_url().$redirecturl; $url = &add_get_param($url, { 'symb' => $redirectsymb}); @@ -518,7 +484,7 @@ $start_page$lt{'pick'}:
-
$lt{'titleheader'} | $lt{'type'} |
---|