Bugzilla – Attachment 8189 Details for
Bug 7401
Show shelving location facet instead of branch facet when only 1 branch configured
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
[SIGNED-OFF] Bug 7401 - Shelving Location facet instead of Branch facet when only 1 branch configured
SIGNED-OFF-Bug-7401---Shelving-Location-facet-inst.patch (text/plain), 8.63 KB, created by
Nicole C. Engard
on 2012-03-12 19:01:15 UTC
(
hide
)
Description:
[SIGNED-OFF] Bug 7401 - Shelving Location facet instead of Branch facet when only 1 branch configured
Filename:
MIME Type:
Creator:
Nicole C. Engard
Created:
2012-03-12 19:01:15 UTC
Size:
8.63 KB
patch
obsolete
>From 9d71e757301cd9514f4730aece005727750686f5 Mon Sep 17 00:00:00 2001 >From: Ian Walls <ian.walls@bywatersolutions.com> >Date: Thu, 16 Feb 2012 12:09:44 -0500 >Subject: [PATCH] [SIGNED-OFF] Bug 7401 - Shelving Location facet instead of Branch facet when only 1 branch configured > >Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> > >Enable for either >A) SingleBranchMode is enabled >or >B) There is only one branch in the branches table > >Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com> > >Tested with one branch and with multiple branches, tested with >SingleBranchMode on and off. All tests passed. >--- > C4/Branch.pm | 10 ++++ > C4/Koha.pm | 55 ++++++++++++++------ > C4/Search.pm | 7 ++- > .../intranet-tmpl/prog/en/includes/facets.inc | 1 + > .../opac-tmpl/prog/en/includes/opac-facets.inc | 1 + > opac/opac-search.pl | 2 +- > 6 files changed, 57 insertions(+), 19 deletions(-) > >diff --git a/C4/Branch.pm b/C4/Branch.pm >index 7bd0326..2bdcae7 100644 >--- a/C4/Branch.pm >+++ b/C4/Branch.pm >@@ -46,6 +46,7 @@ BEGIN { > &DelBranchCategory > &CheckCategoryUnique > &mybranch >+ &GetBranchesCount > ); > @EXPORT_OK = qw( &onlymine &mybranch get_branch_code_from_name ); > } >@@ -580,6 +581,15 @@ sub get_branch_code_from_name { > return $sth->fetchrow_array; > } > >+sub GetBranchesCount { >+ my $dbh = C4::Context->dbh(); >+ my $query = "SELECT COUNT(*) AS branches_count FROM branches"; >+ my $sth = $dbh->prepare( $query ); >+ $sth->execute(); >+ my $row = $sth->fetchrow_hashref(); >+ return $row->{'branches_count'}; >+} >+ > 1; > __END__ > >diff --git a/C4/Koha.pm b/C4/Koha.pm >index 43bfdf5..9cf6218 100644 >--- a/C4/Koha.pm >+++ b/C4/Koha.pm >@@ -23,6 +23,7 @@ package C4::Koha; > use strict; > #use warnings; FIXME - Bug 2505 > use C4::Context; >+use C4::Branch qw(GetBranchesCount); > use Memoize; > > use vars qw($VERSION @ISA @EXPORT $DEBUG); >@@ -711,15 +712,24 @@ sub getFacets { > ]; > > my $library_facet; >- >- $library_facet = { >- link_value => 'branch', >- label_value => 'Libraries', >- tags => [ '995', ], >- subfield => 'b', >- expanded => '1', >- }; >- push @$facets, $library_facet unless C4::Context->preference("singleBranchMode"); >+ unless ( C4::Context->preference("singleBranchMode") || GetBranchesCount() == 1 ) { >+ $library_facet = { >+ link_value => 'branch', >+ label_value => 'Libraries', >+ tags => [ '995', ], >+ subfield => 'b', >+ expanded => '1', >+ }; >+ } else { >+ $library_facet = { >+ link_value => 'location', >+ label_value => 'Location', >+ tags => [ '995' ], >+ subfield => 'c', >+ expanded => '1', >+ }; >+ } >+ push( @$facets, $library_facet ); > } > else { > $facets = [ >@@ -761,15 +771,26 @@ sub getFacets { > subfield => 'a', > }, > ]; >+ > my $library_facet; >- $library_facet = { >- link_value => 'branch', >- label_value => 'Libraries', >- tags => [ '952', ], >- subfield => 'b', >- expanded => '1', >- }; >- push @$facets, $library_facet unless C4::Context->preference("singleBranchMode"); >+ unless ( C4::Context->preference("singleBranchMode") || GetBranchesCount() == 1 ) { >+ $library_facet = { >+ link_value => 'branch', >+ label_value => 'Libraries', >+ tags => [ '952', ], >+ subfield => 'b', >+ expanded => '1', >+ }; >+ } else { >+ $library_facet = { >+ link_value => 'location', >+ label_value => 'Location', >+ tags => [ '952' ], >+ subfield => 'c', >+ expanded => '1', >+ }; >+ } >+ push( @$facets, $library_facet ); > } > return $facets; > } >diff --git a/C4/Search.pm b/C4/Search.pm >index 04ce112..8521efc 100644 >--- a/C4/Search.pm >+++ b/C4/Search.pm >@@ -302,7 +302,7 @@ sub getRecords { > my ( > $koha_query, $simple_query, $sort_by_ref, $servers_ref, > $results_per_page, $offset, $expanded_facet, $branches, >- $query_type, $scan >+ $query_type, $scan, $opac > ) = @_; > > my @servers = @$servers_ref; >@@ -563,6 +563,11 @@ sub getRecords { > } > } > >+ # also, if it's a location code, use the name instead of the code >+ if ( $link_value =~ /location/ ) { >+ $facet_label_value = GetKohaAuthorisedValueLib('LOC', $one_facet, $opac) || '*'; >+ } >+ > # but we're down with the whole label being in the link's title. > push @this_facets_array, { > facet_count => $facets_counter->{$link_value}->{$one_facet}, >diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/facets.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/facets.inc >index a72b586..bacbfaf 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/facets.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/facets.inc >@@ -16,6 +16,7 @@ > [% IF ( facets_loo.type_label_Places ) %]Places[% END %] > [% IF ( facets_loo.type_label_Series ) %]Series[% END %] > [% IF ( facets_loo.type_label_Libraries ) %]Libraries[% END %] >+[% IF ( facets_loo.type_label_Location ) %]Locations[% END %] > <ul> > [% FOREACH facet IN facets_loo.facets %]<li><a href="/cgi-bin/koha/catalogue/search.pl?[% query_cgi |html %][% limit_cgi |html %][% IF ( sort_by ) %]&sort_by=[% sort_by %][% END %]&limit=[% facet.type_link_value %]:[% facet.facet_link_value %]" title="[% facet.facet_title_value %]">[% facet.facet_label_value %]</a> [% IF ( displayFacetCount ) %]([% facet.facet_count %])[% END %]</li>[% END %][% IF ( facets_loo.expandable ) %] > <li class="showmore"><a href="/cgi-bin/koha/catalogue/search.pl?[% query_cgi |html %][% limit_cgi |html %][% IF ( sort_by ) %]&sort_by=[% sort_by %][% END %][% IF ( offset ) %]&offset=[% offset %][% END %]&expand=[% facets_loo.expand %]#[% facets_loo.type_id %]">Show More</a></li> >diff --git a/koha-tmpl/opac-tmpl/prog/en/includes/opac-facets.inc b/koha-tmpl/opac-tmpl/prog/en/includes/opac-facets.inc >index ccb37b0..1afe7f6 100644 >--- a/koha-tmpl/opac-tmpl/prog/en/includes/opac-facets.inc >+++ b/koha-tmpl/opac-tmpl/prog/en/includes/opac-facets.inc >@@ -17,6 +17,7 @@ > [% UNLESS ( singleBranchMode ) %] > [% IF ( facets_loo.type_label_Libraries ) %]Libraries[% END %] > [% END %] >+[% IF ( facets_loo.type_label_Location ) %]Locations[% END %] > <ul> > [% FOREACH facet IN facets_loo.facets %]<li><a href="/cgi-bin/koha/opac-search.pl?[% query_cgi |html %][% limit_cgi |html %][% IF ( sort_by ) %]&sort_by=[% sort_by %][% END %]&limit=[% facet.type_link_value %]:[% facet.facet_link_value %]" title="[% facet.facet_title_value |html %]">[% facet.facet_label_value %]</a> [% IF ( displayFacetCount ) %]([% facet.facet_count %])[% END %]</li>[% END %][% IF ( facets_loo.expandable ) %] > <li class="showmore"><a href="/cgi-bin/koha/opac-search.pl?[% query_cgi |html %][% limit_cgi |html %][% IF ( sort_by ) %]&sort_by=[% sort_by %][% END %][% IF ( offset ) %]&offset=[% offset %][% END %]&expand=[% facets_loo.expand %]#[% facets_loo.type_id %]">Show More</a></li> >diff --git a/opac/opac-search.pl b/opac/opac-search.pl >index a70b152..e6e917e 100755 >--- a/opac/opac-search.pl >+++ b/opac/opac-search.pl >@@ -460,7 +460,7 @@ elsif (C4::Context->preference('NoZebra')) { > $pasarParams .= '&simple_query=' . $simple_query; > $pasarParams .= '&query_type=' . $query_type if ($query_type); > eval { >- ($error, $results_hashref, $facets) = getRecords($query,$simple_query,\@sort_by,\@servers,$results_per_page,$offset,$expanded_facet,$branches,$query_type,$scan); >+ ($error, $results_hashref, $facets) = getRecords($query,$simple_query,\@sort_by,\@servers,$results_per_page,$offset,$expanded_facet,$branches,$query_type,$scan,1); > }; > } > # This sorts the facets into alphabetical order >-- >1.7.2.3
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 7401
:
7040
|
7700
|
7741
|
8188
|
8189
|
10154
|
10210
|
10756
|
10817
|
10877
|
12241
|
12253
|
12254