--- 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(<Goto first resource

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'}:

- +
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'}