Diff for /loncom/lonencurl.pm between versions 1.5 and 1.7

version 1.5, 2011/10/01 03:18:57 version 1.7, 2020/03/04 16:33:35
Line 76  sub handler { Line 76  sub handler {
                 }                  }
             }              }
         }          }
           my $anchor;
         if ($redirect eq '') {          if ($redirect eq '') {
             $redirect=&Apache::lonenc::unencrypted($r->uri);              $redirect=&Apache::lonenc::unencrypted($r->uri);
               if ($redirect =~ m{^/adm/wrapper/ext/[^\#]+(\#.+)$}) {
                   $anchor = $1;
                   $redirect =~ s/\#.+$//;
               } elsif (($redirect =~ m{^https?://}) && ($r->args)) {
                   my $symb;
                   foreach my $item (split(/\&/,$r->args)) {
                       my ($key,$value) = split(/=/,$item);
                       if ($key eq 'symb') {
                           $symb = &Apache::lonenc::unencrypted($value);
                           last;
                       }
                   }
                   if ($symb) {
                       my ($map,$id,$res) = &Apache::lonnet::decode_symb($symb);
                       if (($map =~ /\.page$/) && ($res =~ m{^ext/})) {
                            if ($res =~ /(\#[^#]+)$/) {
                                $anchor = $1;
                            }
                            $r->headers_out->set(Location => $redirect.$anchor);
                            return REDIRECT;
                       }
                   }
               }
         }          }
  if ($r->args) { $redirect.='?'.$r->args; }   if ($r->args) { $redirect.='?'.$r->args; }
  $r->internal_redirect($redirect);   $r->internal_redirect($redirect.$anchor);
  return OK;   return OK;
     }      }
     return FORBIDDEN;      return FORBIDDEN;

Removed from v.1.5  
changed lines
  Added in v.1.7


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>