From: Dan Wells Date: Fri, 9 Nov 2012 21:12:58 +0000 (-0500) Subject: Prevent odd TPAC base URL redirect X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=51a4f25915899e592d876c8de08fe5d3751484e4;p=evergreen%2Fpines.git Prevent odd TPAC base URL redirect As it stands, in a default install, if you browse to http://yourserver.com/eg/opac you are redirected to a login page, and if you login, you then get to the 404 page. This behavior is caused by the fact that *any* URLs which do not match a few select cases are assumed to be "secure" resources, when in fact they might not even exist. This commit catches any attempt to browse this 'base' and simply redirects to the "home" page instead. This addresses the most obvious and likely 404 of this type, but we might consider catching some other cases (e.g. eg/opac/record/). In addition (or as an alternative), we could also create a function call which simply checks the validity of a URL before we ask the user to login to see it. Signed-off-by: Dan Wells Signed-off-by: Bill Erickson --- diff --git a/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm b/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm index e5ceb0f242..7fe805b498 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm @@ -114,6 +114,11 @@ sub load { my $path = $self->apache->path_info; + if ($path =~ m|opac/?$|) { + # nowhere specified, just go home + return $self->generic_redirect($self->ctx->{home_page}); + } + (undef, $self->ctx->{mylist}) = $self->fetch_mylist unless $path =~ /opac\/my(opac\/lists|list)/;