From 0a1f05a5a2cbe0bb5665c824c0cbcf1a0851a6fa Mon Sep 17 00:00:00 2001 From: Jared Camins-Esakov Date: Mon, 21 Mar 2011 16:36:20 -0500 Subject: [PATCH] Bug 5390: OPAC loses library selection This patch ensures that the OPAC library selection masthead will always default to the branch that is currently being searched. This only applies to systems with multiple branches and OpacAddMastheadLibraryPulldown turned on. To test: do a search in the OPAC, limiting by branch. The search results will still have that branch selected in the masthead dropdown. This patch also fixes bug 5852 and bug 3778. Signed-off-by: Ian Walls Signed-off-by: Liz Rea Signed-off-by: Chris Cormack --- C4/Auth.pm | 14 ++++++-------- koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc | 11 ++++++----- .../opac-tmpl/prog/en/modules/opac-advsearch.tmpl | 2 +- opac/opac-search.pl | 3 +-- 4 files changed, 14 insertions(+), 16 deletions(-) diff --git a/C4/Auth.pm b/C4/Auth.pm index 06806ff065..fecdf85a38 100644 --- a/C4/Auth.pm +++ b/C4/Auth.pm @@ -337,7 +337,6 @@ sub get_template_and_user { singleBranchMode => C4::Context->preference("singleBranchMode"), XSLTDetailsDisplay => C4::Context->preference("XSLTDetailsDisplay"), XSLTResultsDisplay => C4::Context->preference("XSLTResultsDisplay"), - BranchesLoop => GetBranchesLoop(), using_https => $in->{'query'}->https() ? 1 : 0, noItemTypeImages => C4::Context->preference("noItemTypeImages"), ); @@ -380,17 +379,17 @@ sub get_template_and_user { # variables passed from CGI: opac_css_override and opac_search_limits. my $opac_search_limit = $ENV{'OPAC_SEARCH_LIMIT'}; my $opac_limit_override = $ENV{'OPAC_LIMIT_OVERRIDE'}; - my $mylibraryfirst = C4::Context->preference("SearchMyLibraryFirst"); - my $opac_name; - if($opac_limit_override && ($opac_search_limit =~ /branch:(\w+)/) ){ - $opac_name = C4::Branch::GetBranchName($1) # opac_search_limit is a branch, so we use it. - } elsif($mylibraryfirst){ - $opac_name = C4::Branch::GetBranchName($mylibraryfirst); + my $opac_name = ''; + if (($opac_search_limit =~ /branch:(\w+)/ && $opac_limit_override) || $in->{'query'}->param('limit') =~ /branch:(\w+)/){ + $opac_name = $1; # opac_search_limit is a branch, so we use it. + } elsif (C4::Context->preference("SearchMyLibraryFirst") && C4::Context->userenv && C4::Context->userenv->{'branch'}) { + $opac_name = C4::Context->userenv->{'branch'}; } $template->param( AmazonContent => "" . C4::Context->preference("AmazonContent"), AnonSuggestions => "" . C4::Context->preference("AnonSuggestions"), AuthorisedValueImages => C4::Context->preference("AuthorisedValueImages"), + BranchesLoop => GetBranchesLoop($opac_name), LibraryName => "" . C4::Context->preference("LibraryName"), LibraryNameTitle => "" . $LibraryNameTitle, LoginBranchname => C4::Context->userenv?C4::Context->userenv->{"branchname"}:"", @@ -408,7 +407,6 @@ sub get_template_and_user { OpacAuthorities => C4::Context->preference("OpacAuthorities"), OPACBaseURL => ($in->{'query'}->https() ? "https://" : "http://") . $ENV{'SERVER_NAME'} . ($ENV{'SERVER_PORT'} eq ($in->{'query'}->https() ? "443" : "80") ? '' : ":$ENV{'SERVER_PORT'}"), - opac_name => $opac_name, opac_css_override => $ENV{'OPAC_CSS_OVERRIDE'}, opac_search_limit => $opac_search_limit, opac_limit_override => $opac_limit_override, diff --git a/koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc b/koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc index 6db1552afa..310e7b8387 100644 --- a/koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc +++ b/koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc @@ -84,14 +84,15 @@ - + + + " type="hidden" /> + + " type="hidden" /> - - - - " type="hidden" /> + diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-advsearch.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-advsearch.tmpl index 3a478fff3e..f7c2adf6cd 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-advsearch.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-advsearch.tmpl @@ -239,7 +239,7 @@