--- rat/lonpageflip.pm 2008/11/20 13:11:43 1.76 +++ rat/lonpageflip.pm 2010/12/30 21:15:40 1.79.6.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.79.6.1 2010/12/30 21:15:40 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; @@ -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,8 +326,8 @@ sub handler { untie %hash; } else { $newloc='/adm/navmaps'; - } - if ($newloc eq '/adm/navmaps' && $direction eq 'navlaunch') { + } + if (($newloc =~ m{^/adm/navmaps}) && ($direction eq 'navlaunch')) { &navlaunch($r); return OK; } else { @@ -377,7 +338,7 @@ sub handler { return REDIRECT; } } - $currenturl=~s/^http\:\/\///; + $currenturl=~s/^https?\:\/\///; $currenturl=~s/^[^\/]+//; # # Is the current URL on the map? If not, start with last known URL @@ -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'}:

- +
ENDSTART foreach my $id (@possibilities) { @@ -570,6 +536,46 @@ ENDMENU 1; __END__ +=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
$lt{'titleheader'}$lt{'type'}