View | Details | Raw Unified | Return to bug 14715
Collapse All | Expand All

(-)a/catalogue/search.pl (-9 / +4 lines)
Lines 148-154 use C4::Koha; Link Here
148
use URI::Escape;
148
use URI::Escape;
149
use POSIX qw(ceil floor);
149
use POSIX qw(ceil floor);
150
use C4::Search::History;
150
use C4::Search::History;
151
use String::Random;
152
use Koha::ItemTypes;
151
use Koha::ItemTypes;
153
use Koha::Library::Groups;
152
use Koha::Library::Groups;
154
use Koha::Patrons;
153
use Koha::Patrons;
Lines 445-458 for (my $ii = 0; $ii < @operands; ++$ii) Link Here
445
# Params that can only have one value
444
# Params that can only have one value
446
my $scan = $params->{'scan'};
445
my $scan = $params->{'scan'};
447
my $count = C4::Context->preference('numSearchResults') || 20;
446
my $count = C4::Context->preference('numSearchResults') || 20;
448
my @results_per_page_options = grep /^\d+$/,
447
my $results_per_page = $count;
449
                               map {s/\s+//g;$_;}
448
if ( C4::Context->preference('numSearchResultsDropdown') ){
450
                               split /,/, C4::Context->preference('numSearchResultsPerPage');
449
    $results_per_page = $params->{'results_per_page'} || $cgi->cookie("results_per_page");
451
push(@results_per_page_options, $count);
450
}
452
@results_per_page_options = do { my %seen; grep { !$seen{$_}++ } @results_per_page_options };
453
@results_per_page_options = sort {$a <=> $b} @results_per_page_options;
454
455
my $results_per_page = $params->{'results_per_page'} || $cgi->cookie("results_per_page") || $count;
456
my $page = $cgi->param('page') || 1;
451
my $page = $cgi->param('page') || 1;
457
my $offset = $params->{'offset'} || 0;
452
my $offset = $params->{'offset'} || 0;
458
$offset = 0 if $offset < 0;
453
$offset = 0 if $offset < 0;
(-)a/installer/data/mysql/atomicupdate/bug_14715-searchresults_syspref.sql (-2 lines)
Lines 1-2 Link Here
1
INSERT IGNORE INTO systempreferences (`variable`, `value`, `options`, `explanation`,`type`) VALUES ('OPACnumSearchResultsPerPage', '10,20,40,60,80,100', NULL, 'Option list of number of results per page to show in OPAC search results','YesNo');
2
INSERT IGNORE INTO systempreferences (`variable`, `value`, `options`, `explanation`,`type`) VALUES ('numSearchResultsPerPage', '10,20,40,60,80,100', NULL, 'Option list of number of results per page to show in staff client search results','YesNo');
(-)a/installer/data/mysql/atomicupdate/bug_14715_-_results_per_page_dropdown_sysprefs.sql (+3 lines)
Line 0 Link Here
1
INSERT IGNORE INTO systempreferences (`variable`, `value`, `options`, `explanation`,`type`) VALUES
2
('OPACnumSearchResultsDropdown', 0, NULL, 'Option list of number of results per page to show in OPAC search results','YesNo'),
3
('numSearchResultsDropdown', 0, NULL, 'Option list of number of results per page to show in staff client search results','YesNo');
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/searching.pref (+16 lines)
Lines 132-137 Searching: Link Here
132
            - 'the operator "phr" in the callnumber and standard number staff client searches'
132
            - 'the operator "phr" in the callnumber and standard number staff client searches'
133
    Results Display:
133
    Results Display:
134
        -
134
        -
135
            - pref: numSearchResultsDropdown
136
              type: boolean
137
              default: no
138
              choices:
139
                  yes: Show
140
                  no: "Don't show"
141
            - results per page dropdown on staff client search results.
142
        -
143
            - pref: OPACnumSearchResultsDropdown
144
              type: boolean
145
              default: no
146
              choices:
147
                  yes: Show
148
                  no: "Don't show"
149
            - results per page dropdown on OPAC search results.
150
        -
135
            - By default, sort search results in the staff client by
151
            - By default, sort search results in the staff client by
136
            - pref: defaultSortField
152
            - pref: defaultSortField
137
              default: relevance
153
              default: relevance
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/results.tt (-1 / +3 lines)
Lines 13-19 Link Here
13
[% ELSE %]
13
[% ELSE %]
14
    [% SET DetailPage="detail.pl" %]
14
    [% SET DetailPage="detail.pl" %]
15
[% END %]
15
[% END %]
16
<<<<<<< HEAD
17
[% INCLUDE 'doc-head-open.inc' %]
16
[% INCLUDE 'doc-head-open.inc' %]
18
<title>Koha &rsaquo; Catalog &rsaquo; [% IF ( searchdesc ) %]Results of search [% IF ( query_desc ) %]for '[% query_desc | html %]'[% END %][% IF ( limit_desc ) %]&nbsp;with limit(s):&nbsp;'[% limit_desc | html %]'[% END %][% ELSE %]You did not specify any search criteria[% END %]</title>
17
<title>Koha &rsaquo; Catalog &rsaquo; [% IF ( searchdesc ) %]Results of search [% IF ( query_desc ) %]for '[% query_desc | html %]'[% END %][% IF ( limit_desc ) %]&nbsp;with limit(s):&nbsp;'[% limit_desc | html %]'[% END %][% ELSE %]You did not specify any search criteria[% END %]</title>
19
[% INCLUDE 'doc-head-close.inc' %]
18
[% INCLUDE 'doc-head-close.inc' %]
Lines 75-88 Link Here
75
                    </select>
74
                    </select>
76
                <!-- RESORT END -->
75
                <!-- RESORT END -->
77
                <!-- RESULTS_PER_PAGE START -->
76
                <!-- RESULTS_PER_PAGE START -->
77
                [% IF Koha.Preference('numSearchResultsDropdown') %]
78
                    <label for="results_per_page">Results per page: </label>
78
                    <label for="results_per_page">Results per page: </label>
79
                    <select id="results_per_page" name="results_per_page">
79
                    <select id="results_per_page" name="results_per_page">
80
                        [% IF Koha.Preference('numSearchResults') %]<option value="[% Koha.Preference('numSearchResults') %]" selected="selected">Library default: [% Koha.Preference('numSearchResults') %]</option>[% ELSE %]<option value="[% Koha.Preference('numSearchResults') %]">Library default: [% Koha.Preference('numSearchResults') %]</option>[% END %]
80
                        [% IF results_per_page == '20' %]<option value="20" selected="selected">20</option>[% ELSE %]<option value="20">20</option>[% END %]
81
                        [% IF results_per_page == '20' %]<option value="20" selected="selected">20</option>[% ELSE %]<option value="20">20</option>[% END %]
81
                        [% IF results_per_page == '40' %]<option value="40" selected="selected">40</option>[% ELSE %]<option value="40">40</option>[% END %]
82
                        [% IF results_per_page == '40' %]<option value="40" selected="selected">40</option>[% ELSE %]<option value="40">40</option>[% END %]
82
                        [% IF results_per_page == '60' %]<option value="60" selected="selected">60</option>[% ELSE %]<option value="60">60</option>[% END %]
83
                        [% IF results_per_page == '60' %]<option value="60" selected="selected">60</option>[% ELSE %]<option value="60">60</option>[% END %]
83
                        [% IF results_per_page == '80' %]<option value="80" selected="selected">80</option>[% ELSE %]<option value="80">80</option>[% END %]
84
                        [% IF results_per_page == '80' %]<option value="80" selected="selected">80</option>[% ELSE %]<option value="80">80</option>[% END %]
84
                        [% IF results_per_page == '100' %]<option value="100" selected="selected">100</option>[% ELSE %]<option value="100">100</option>[% END %]
85
                        [% IF results_per_page == '100' %]<option value="100" selected="selected">100</option>[% ELSE %]<option value="100">100</option>[% END %]
85
                    </select>
86
                    </select>
87
                [% END %]
86
                <!-- RESULTS_PER_PAGE END -->
88
                <!-- RESULTS_PER_PAGE END -->
87
                    <input type="submit" value="Go" />
89
                    <input type="submit" value="Go" />
88
            </form>
90
            </form>
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-results.tt (-2 / +3 lines)
Lines 146-161 Link Here
146
                                    [% UNLESS tag %]
146
                                    [% UNLESS tag %]
147
                                        <div class="sort_by pull-right">
147
                                        <div class="sort_by pull-right">
148
                                            <select id="sort_by" class="resort" name="sort_by"> [% INCLUDE 'resort_form.inc' %] </select>
148
                                            <select id="sort_by" class="resort" name="sort_by"> [% INCLUDE 'resort_form.inc' %] </select>
149
149
                                        [% IF Koha.Preference('OPACnumSearchResultsDropdown') %]
150
                                            <label for="results_per_page">Results per page: </label>
150
                                            <label for="results_per_page">Results per page: </label>
151
                                            <select id="results_per_page" name="results_per_page">
151
                                            <select id="results_per_page" name="results_per_page">
152
                                                [% IF Koha.Preference('OPACnumSearchResults') %]<option value="[% Koha.Preference('OPACnumSearchResults') %]" selected="selected">Library default: [% Koha.Preference('OPACnumSearchResults') %]</option>[% ELSE %]<option value="[% Koha.Preference('OPACnumSearchResults') %]">Library default: [% Koha.Preference('OPACnumSearchResults') %]</option>[% END %]
152
                                                [% IF results_per_page == '20' %]<option value="20" selected="selected">20</option>[% ELSE %]<option value="20">20</option>[% END %]
153
                                                [% IF results_per_page == '20' %]<option value="20" selected="selected">20</option>[% ELSE %]<option value="20">20</option>[% END %]
153
                                                [% IF results_per_page == '40' %]<option value="40" selected="selected">40</option>[% ELSE %]<option value="40">40</option>[% END %]
154
                                                [% IF results_per_page == '40' %]<option value="40" selected="selected">40</option>[% ELSE %]<option value="40">40</option>[% END %]
154
                                                [% IF results_per_page == '60' %]<option value="60" selected="selected">60</option>[% ELSE %]<option value="60">60</option>[% END %]
155
                                                [% IF results_per_page == '60' %]<option value="60" selected="selected">60</option>[% ELSE %]<option value="60">60</option>[% END %]
155
                                                [% IF results_per_page == '80' %]<option value="80" selected="selected">80</option>[% ELSE %]<option value="80">80</option>[% END %]
156
                                                [% IF results_per_page == '80' %]<option value="80" selected="selected">80</option>[% ELSE %]<option value="80">80</option>[% END %]
156
                                                [% IF results_per_page == '100' %]<option value="100" selected="selected">100</option>[% ELSE %]<option value="100">100</option>[% END %]
157
                                                [% IF results_per_page == '100' %]<option value="100" selected="selected">100</option>[% ELSE %]<option value="100">100</option>[% END %]
157
                                            </select>
158
                                            </select>
158
159
                                        [% END %]
159
                                            <input type="submit" class="btn btn-small clearfix" id="sortsubmit" value="Go" />
160
                                            <input type="submit" class="btn btn-small clearfix" id="sortsubmit" value="Go" />
160
                                        </div>
161
                                        </div>
161
                                    [% END %]
162
                                    [% END %]
(-)a/opac/opac-search.pl (-3 / +5 lines)
Lines 519-525 if ($params->{'limit-yr'}) { Link Here
519
my $scan = $params->{'scan'};
519
my $scan = $params->{'scan'};
520
my $count = C4::Context->preference('OPACnumSearchResults') || 20;
520
my $count = C4::Context->preference('OPACnumSearchResults') || 20;
521
my $countRSS         = C4::Context->preference('numSearchRSSResults') || 50;
521
my $countRSS         = C4::Context->preference('numSearchRSSResults') || 50;
522
my $results_per_page = $params->{'results_per_page'} || $cgi->cookie("results_per_page") || $count;
522
my $results_per_page = $count;
523
if ( C4::Context->preference('OPACnumSearchResultsDropdown') ){
524
    $results_per_page = $params->{'results_per_page'} || $cgi->cookie("results_per_page");
525
}
523
my $page = $cgi->param('page') || 1;
526
my $page = $cgi->param('page') || 1;
524
my $offset = $params->{'offset'} || 0;
527
my $offset = $params->{'offset'} || 0;
525
$offset = 0 if $offset < 0;
528
$offset = 0 if $offset < 0;
Lines 596-602 if ($tag) { Link Here
596
    # FIXME: No facets for tags search.
599
    # FIXME: No facets for tags search.
597
} elsif ($build_grouped_results) {
600
} elsif ($build_grouped_results) {
598
    eval {
601
    eval {
599
        ($error, $results_hashref, $facets) = C4::Search::pazGetRecords($query,$simple_query,\@sort_by,\@servers,$results_per_page,$offset,$expanded_facet,$query_type,$scan);
602
        ($error, $results_hashref, $facets) = C4::Search::pazGetRecords($query,$simple_query,\@sort_by,\@servers,$results_per_page,$offset,$expanded_facet,undef,$query_type,$scan);
600
    };
603
    };
601
} else {
604
} else {
602
    $pasarParams .= '&amp;query=' . uri_escape_utf8($query);
605
    $pasarParams .= '&amp;query=' . uri_escape_utf8($query);
603
- 

Return to bug 14715