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

(-)a/catalogue/search.pl (-43 / +47 lines)
Lines 168-175 my $cgi = CGI->new; Link Here
168
# decide which template to use
168
# decide which template to use
169
my $template_name;
169
my $template_name;
170
my $template_type;
170
my $template_type;
171
my @params = $cgi->multi_param("limit");
171
# limits are used to limit to results to a pre-defined category such as branch or language
172
if ((@params>=1) || (defined $cgi->param("q") && $cgi->param("q") ne "" ) || ($cgi->param('multibranchlimit')) || ($cgi->param('limit-yr')) ) {
172
my @limits = map uri_unescape($_), $cgi->multi_param("limit");
173
my @nolimits = map uri_unescape($_), $cgi->multi_param('nolimit');
174
my %is_nolimit = map { $_ => 1 } @nolimits;
175
@limits = grep { not $is_nolimit{$_} } @limits;
176
if  (
177
        !$cgi->param('edit_search') &&
178
        ( (@limits>=1) || (defined $cgi->param("q") && $cgi->param("q") ne "" ) || ($cgi->param('limit-yr')) )
179
    ) {
173
    $template_name = 'catalogue/results.tt';
180
    $template_name = 'catalogue/results.tt';
174
    $template_type = 'results';
181
    $template_type = 'results';
175
}
182
}
Lines 248-253 $template->param( searchid => scalar $cgi->param('searchid'), ); Link Here
248
# The following should only be loaded if we're bringing up the advanced search template
255
# The following should only be loaded if we're bringing up the advanced search template
249
if ( $template_type eq 'advsearch' ) {
256
if ( $template_type eq 'advsearch' ) {
250
257
258
    my $expanded = $cgi->param('expanded_options');
259
    if( $cgi->param('edit_search') ){
260
        my @operators = $cgi->multi_param('op');
261
        my @indexes   = $cgi->multi_param('idx');
262
        my %limit_hash;
263
        foreach my $limit (@limits){
264
            if ( $limit eq 'available' ){
265
                $template->param( limit_available => 1 );
266
            } else {
267
                my ($index,$value) = split(':',$limit);
268
                $value =~ s/"//g;
269
                if ( $index =~ /mc-/ ){
270
                    $limit_hash{$index . "_" . $value} = 1;
271
                } else {
272
                    push @{$limit_hash{$index}}, $value;
273
                }
274
            }
275
        };
276
        $expanded = 1 if scalar @operators || scalar @limits;
277
        $template->param( operators => \@operators );
278
        $template->param( limits => \%limit_hash );
279
        $template->param(
280
           indexes   => \@indexes,
281
           sort      => $cgi->param('sort_by'),
282
        );
283
    }
251
    # load the servers (used for searching -- to do federated searching, etc.)
284
    # load the servers (used for searching -- to do federated searching, etc.)
252
    my $primary_servers_loop;# = displayPrimaryServers();
285
    my $primary_servers_loop;# = displayPrimaryServers();
253
    $template->param(outer_servers_loop =>  $primary_servers_loop,);
286
    $template->param(outer_servers_loop =>  $primary_servers_loop,);
Lines 264-307 if ( $template_type eq 'advsearch' ) { Link Here
264
        $template->param( sort_by => $default_sort_by  );
297
        $template->param( sort_by => $default_sort_by  );
265
    }
298
    }
266
299
267
    # determine what to display next to the search boxes (ie, boolean option
300
    # determine what to display next to the search boxes
268
    # shouldn't appear on the first one, scan indexes should, adding a new
301
    my @queries = $cgi->multi_param('q');
269
    # box should only appear on the last, etc.
302
    while( scalar @queries < 3 ){
270
    my @search_boxes_array;
303
        push @queries, "";
271
    my $search_boxes_count = 3; # begin with 3 boxes
272
    # FIXME: all this junk can be done in TMPL using __first__ and __last__
273
    for (my $i=1;$i<=$search_boxes_count;$i++) {
274
        # if it's the first one, don't display boolean option, but show scan indexes
275
        if ($i==1) {
276
            push @search_boxes_array, {scan_index => 1};
277
        }
278
        # if it's the last one, show the 'add field' box
279
        elsif ($i==$search_boxes_count) {
280
            push @search_boxes_array,
281
                {
282
                boolean => 1,
283
                add_field => 1,
284
                };
285
        }
286
        else {
287
            push @search_boxes_array,
288
                {
289
                boolean => 1,
290
                };
291
        }
292
293
    }
304
    }
294
    $template->param(uc(C4::Context->preference("marcflavour")) => 1,
305
    $template->param(uc(C4::Context->preference("marcflavour")) =>1 );
295
                      search_boxes_loop => \@search_boxes_array);
296
306
297
    # load the language limits (for search)
307
    # load the language limits (for search)
298
    my $languages_limit_loop = getLanguages($lang, 1);
308
    my $languages_limit_loop = getLanguages($lang, 1);
299
    $template->param(search_languages_loop => $languages_limit_loop,);
309
    $template->param(search_languages_loop => $languages_limit_loop,);
310
    $template->param(       queries   => \@queries );
300
311
301
    # Expanded search options in advanced search:
312
    # Expanded search options in advanced search:
302
    # use the global setting by default, but let the user override it
313
    # use the global setting by default, but let the user override it
303
    {
314
    {
304
        my $expanded = $cgi->param('expanded_options');
305
        $expanded = C4::Context->preference("expandedSearchOption") || 0
315
        $expanded = C4::Context->preference("expandedSearchOption") || 0
306
            if !defined($expanded) || $expanded !~ /^0|1$/;
316
            if !defined($expanded) || $expanded !~ /^0|1$/;
307
        $template->param( expanded_options => $expanded );
317
        $template->param( expanded_options => $expanded );
Lines 372-383 if ($operands[0] && !$operands[1]) { Link Here
372
    $template->param(ms_value => $ms_query);
382
    $template->param(ms_value => $ms_query);
373
}
383
}
374
384
375
# limits are use to limit to results to a pre-defined category such as branch or language
376
my @limits = map uri_unescape($_), $cgi->multi_param('limit');
377
my @nolimits = map uri_unescape($_), $cgi->multi_param('nolimit');
378
my %is_nolimit = map { $_ => 1 } @nolimits;
379
@limits = grep { not $is_nolimit{$_} } @limits;
380
381
my $available;
385
my $available;
382
foreach my $limit(@limits) {
386
foreach my $limit(@limits) {
383
    if ($limit =~/available/) {
387
    if ($limit =~/available/) {
Lines 391-397 my $limit_yr; Link Here
391
my $limit_yr_value;
395
my $limit_yr_value;
392
if ($params->{'limit-yr'}) {
396
if ($params->{'limit-yr'}) {
393
    if ($params->{'limit-yr'} =~ /\d{4}/) {
397
    if ($params->{'limit-yr'} =~ /\d{4}/) {
394
        $limit_yr = "yr,st-numeric=$params->{'limit-yr'}";
398
        $limit_yr = "yr,st-numeric:$params->{'limit-yr'}";
395
        $limit_yr_value = $params->{'limit-yr'};
399
        $limit_yr_value = $params->{'limit-yr'};
396
    }
400
    }
397
    push @limits,$limit_yr;
401
    push @limits,$limit_yr;
Lines 570-575 for (my $i=0;$i<@servers;$i++) { Link Here
570
        # set up parameters if user wishes to re-run the search
574
        # set up parameters if user wishes to re-run the search
571
        # as a Z39.50 search
575
        # as a Z39.50 search
572
        $template->param (z3950_search_params => C4::Search::z3950_search_args($z3950par || $query_desc));
576
        $template->param (z3950_search_params => C4::Search::z3950_search_args($z3950par || $query_desc));
577
        $template->param(limit_cgi => $limit_cgi);
578
        $template->param(query_cgi => $query_cgi);
579
        $template->param(query_desc => $query_desc);
580
        $template->param(limit_desc => $limit_desc);
581
        $template->param(offset     => $offset);
573
582
574
        if ($hits) {
583
        if ($hits) {
575
            $template->param(total => $hits);
584
            $template->param(total => $hits);
Lines 578-588 for (my $i=0;$i<@servers;$i++) { Link Here
578
                $limit_cgi_not_availablity =~ s/&limit=available//g;
587
                $limit_cgi_not_availablity =~ s/&limit=available//g;
579
                $template->param(limit_cgi_not_availablity => $limit_cgi_not_availablity);
588
                $template->param(limit_cgi_not_availablity => $limit_cgi_not_availablity);
580
            }
589
            }
581
            $template->param(limit_cgi => $limit_cgi);
582
            $template->param(query_cgi => $query_cgi);
583
            $template->param(query_desc => $query_desc);
584
            $template->param(limit_desc => $limit_desc);
585
            $template->param(offset     => $offset);
586
            $template->param(DisplayMultiPlaceHold => $DisplayMultiPlaceHold);
590
            $template->param(DisplayMultiPlaceHold => $DisplayMultiPlaceHold);
587
            if ($query_desc || $limit_desc) {
591
            if ($query_desc || $limit_desc) {
588
                $template->param(searchdesc => 1);
592
                $template->param(searchdesc => 1);
(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/subtype_limits.inc (+49 lines)
Line 0 Link Here
1
[%- BLOCK subtype_limits_description -%]
2
    [%- SWITCH subtype_limit -%]
3
        [%- CASE  'aud:a' -%]<span>Preschool</span>
4
        [%- CASE  'aud:b' -%]<span>Primary</span>
5
        [%- CASE  'aud:c' -%]<span>Pre-adolescent</span>
6
        [%- CASE  'aud:d' -%]<span>Adolescent</span>
7
        [%- CASE  'aud:e' -%]<span>Adult</span>
8
        [%- CASE  'aud:f' -%]<span>Specialized</span>
9
        [%- CASE  'aud:g' -%]<span>General</span>
10
        [%- CASE  'aud:j' -%]<span>Juvenile</span>
11
        [%- CASE  'fic:1' -%]<span>Fiction</span>
12
        [%- CASE  'fic:0' -%]<span>Non-fiction</span>
13
        [%- CASE  'bio:b' -%]<span>Biography</span>
14
        [%- CASE  'mus:j' -%]<span>Musical recording</span>
15
        [%- CASE  'mus:i' -%]<span>Non-musical recording</span>
16
        [%- CASE  'l-format:ta' -%]<span>Regular print</span>
17
        [%- CASE  'l-format:tb' -%]<span>Large print</span>
18
        [%- CASE  'l-format:tc or l-format:fb' -%]<span>Braille</span>
19
        [%- CASE  '' -%]<span>-----------</span>
20
        [%- CASE  'l-format:sd' -%]<span>CD audio</span>
21
        [%- CASE  'l-format:ss' -%]<span>Cassette recording</span>
22
        [%- CASE  'l-format:vf' -%]<span>VHS tape / Videocassette</span>
23
        [%- CASE  'l-format:vd' -%]<span>DVD video / Videodisc</span>
24
        [%- CASE  'l-format:co' -%]<span>CD software</span>
25
        [%- CASE  'l-format:cr' -%]<span>Website</span>
26
        [%- CASE  'ctype:a' -%]<span>Abstracts / Summaries</span>
27
        [%- CASE  'ctype:b' -%]<span>Bibliographies</span>
28
        [%- CASE  'ctype:c' -%]<span>Catalogs</span>
29
        [%- CASE  'ctype:d' -%]<span>Dictionaries</span>
30
        [%- CASE  'ctype:e' -%]<span>Encyclopedias </span>
31
        [%- CASE  'ctype:f' -%]<span>Handbooks</span>
32
        [%- CASE  'ctype:g' -%]<span>Legal articles</span>
33
        [%- CASE  'ctype:i' -%]<span>Indexes</span>
34
        [%- CASE  'ctype:j' -%]<span>Patent document</span>
35
        [%- CASE  'ctype:k' -%]<span>Discographies</span>
36
        [%- CASE  'ctype:l' -%]<span>Legislation</span>
37
        [%- CASE  'ctype:m' -%]<span>Theses</span>
38
        [%- CASE  'ctype:n' -%]<span>Surveys</span>
39
        [%- CASE  'ctype:o' -%]<span>Reviews</span>
40
        [%- CASE  'ctype:p' -%]<span>Programmed texts</span>
41
        [%- CASE  'ctype:q' -%]<span>Filmographies</span>
42
        [%- CASE  'ctype:r' -%]<span>Directories</span>
43
        [%- CASE  'ctype:s' -%]<span>Statistics</span>
44
        [%- CASE  'ctype:t' -%]<span>Technical reports</span>
45
        [%- CASE  'ctype:v' -%]<span>Legal cases and case notes</span>
46
        [%- CASE  'ctype:w' -%]<span>Law reports and digests</span>
47
        [%- CASE  'ctype:z' -%]<span>Treaties </span>
48
    [%- END -%]
49
[%- END -%]
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/advsearch.tt (-35 / +119 lines)
Lines 12-18 Link Here
12
<select name="limit" id="[% ln_id | html %]">
12
<select name="limit" id="[% ln_id | html %]">
13
    <option value="">No limit</option>
13
    <option value="">No limit</option>
14
    [% FOREACH ln_loo IN ln_loop %]
14
    [% FOREACH ln_loo IN ln_loop %]
15
        [% IF ( ln_loo.selected ) %]
15
        [% IF ( ln_loo.selected or selected == ln_loo.iso639_2_code ) %]
16
            <option value="[% ln_index | html %],rtrn:[% ln_loo.iso639_2_code | html %]" selected="selected">
16
            <option value="[% ln_index | html %],rtrn:[% ln_loo.iso639_2_code | html %]" selected="selected">
17
                [% ln_loo.language_description | html %]
17
                [% ln_loo.language_description | html %]
18
            </option>
18
            </option>
Lines 105-135 Link Here
105
<!-- BOOLEAN SEARCH OPTIONS -->
105
<!-- BOOLEAN SEARCH OPTIONS -->
106
    <fieldset id="searchterms">
106
    <fieldset id="searchterms">
107
    <legend>Search for </legend>
107
    <legend>Search for </legend>
108
    [% FOREACH search_box IN search_boxes_loop %]
108
    [% FOREACH query IN queries %]
109
        [% IF ( search_boxes_label ) %]
109
        [% IF ( expanded_options ) %]
110
        <div class="search-term-row" style="text-indent: 4.5em;">
111
        [% ELSE %]
112
        <div class="search-term-row">
110
        <div class="search-term-row">
113
        [% END %]
111
            [% SET opindex = loop.index - 1 %]
114
			[% IF ( expanded_options ) %]
112
            <select name="op">
115
            [% IF ( search_box.boolean ) %]
113
            [% IF operators.$opindex == 'or' %]
116
                <select name="op">
114
                <option value="and">and</option>
117
                    <option value="and" selected="selected">and</option>
115
                <option value="or" selected="selected">or</option>
118
                    <option value="or">or</option>
116
                <option value="not">not</option>
119
                    <option value="not">not</option>
117
            [% ELSIF operators.$opindex == 'not' %]
120
                </select>
118
                <option value="and">and</option>
121
            [% END %] 
119
                <option value="or">or</option>
122
			[% END %]
120
                <option value="not" selected="selected">not</option>
123
			[% INCLUDE 'search_indexes.inc' %]
121
            [% ELSE %]
124
			<input type="text" size="30" name="q" title="Enter search terms" value="" />
122
                <option value="and" selected="selected">and</option>
125
            [% IF ( expanded_options ) %]
123
                <option value="or">or</option>
126
                [% IF ( search_box.add_field ) %]
124
                <option value="not">not</option>
127
                    <a href="JavaScript:add_field();" id="ButtonPlus" title="Add another field">[+]</a>
128
				[% END %]
129
              [% IF ( search_box.scan_index ) %]
130
                <label for="scan">Scan indexes:</label> <input type="checkbox" name="scan" id="scan" value="1" />
131
              [% END %]
132
            [% END %]
125
            [% END %]
126
            </select>
127
        [% ELSE %]
128
        <div>
129
        [% END %]
130
        [% SET preselect = 'ms_' _ indexes.${loop.index}.replace(',','comma') %]
131
        [% INCLUDE 'search_indexes.inc' %]
132
        <input type="text" size="30" name="q" title="Enter search terms" value="[% query | html %]" />
133
        [% IF ( expanded_options ) %]
134
            <a href="JavaScript:add_field();" id="ButtonPlus" title="Add another field">[+]</a>
135
          [% IF ( loop.first ) %]
136
            <label for="scan">Scan indexes:</label> <input type="checkbox" name="scan" id="scan" value="1" />
137
          [% END %]
138
        [% END %]
133
		</div>
139
		</div>
134
    [% END %]
140
    [% END %]
135
    [% IF Koha.Preference('SearchEngine') == 'Elasticsearch' %]
141
    [% IF Koha.Preference('SearchEngine') == 'Elasticsearch' %]
Lines 171-179 Link Here
171
    <table>
177
    <table>
172
        <tr>
178
        <tr>
173
    [% FOREACH itemtypeloo IN advsearchloo.code_loop %]
179
    [% FOREACH itemtypeloo IN advsearchloo.code_loop %]
174
        <td><input type="checkbox" id="[% itemtypeloo.ccl FILTER remove(',') | html %]-[% itemtypeloo.number | html %]" name="limit" value="mc-[% itemtypeloo.ccl | html %]:[% itemtypeloo.code | html %]"/><label for="[% itemtypeloo.ccl FILTER remove(',') | html %]-[% itemtypeloo.number | html %]">[% UNLESS ( Koha.Preference('OpacNoItemTypeImages') ) %][% IF ( itemtypeloo.imageurl ) %]<img src="[% itemtypeloo.imageurl | html %]" alt="[% itemtypeloo.description | html %]" />[% END %]&nbsp;[% END %]
180
        <td>
175
        [% itemtypeloo.description | html %]</label></td>
181
            [% SET limit_key = 'mc-' _ itemtypeloo.ccl _ "_" _ itemtypeloo.code %]
176
        [% IF ( loop.last ) %]</tr>[% ELSE %][% UNLESS ( loop.count % 5 ) %]</tr><tr>[% END %][% END %]
182
            [% IF limits.$limit_key.defined %]
183
                [% limits.delete( limit_key ) %]
184
                <input type="checkbox" checked="checked" id="[% itemtypeloo.ccl FILTER remove(',') | html %]-[% itemtypeloo.number | html %]" name="limit" value="mc-[% itemtypeloo.ccl | html %]:[% itemtypeloo.code | html %]"/>
185
            [% ELSE %]
186
                <input type="checkbox" id="[% itemtypeloo.ccl FILTER remove(',') | html %]-[% itemtypeloo.number | html %]" name="limit" value="mc-[% itemtypeloo.ccl | html %]:[% itemtypeloo.code | html %]"/>
187
            [% END %]
188
            <label for="[% itemtypeloo.ccl FILTER remove(',') | html %]-[% itemtypeloo.number | html %]">
189
        [% UNLESS ( Koha.Preference('OpacNoItemTypeImages') ) %]
190
            [% IF ( itemtypeloo.imageurl ) %]
191
                <img src="[% itemtypeloo.imageurl | html %]" alt="[% itemtypeloo.description | html %]" />
192
            [% END %]
193
                &nbsp;
194
        [% END %]
195
        [% itemtypeloo.description | html %]
196
            </label>
197
        </td>
198
        [% IF ( loop.last ) %]
199
        </tr>
200
        [% ELSE %]
201
            [% UNLESS ( loop.count % 5 ) %]
202
        </tr>
203
        <tr>
204
            [% END %]
205
        [% END %]
177
    [% END %]
206
    [% END %]
178
    </table>
207
    </table>
179
    </div>
208
    </div>
Lines 186-201 Link Here
186
<fieldset id="pubrange">
215
<fieldset id="pubrange">
187
<!-- PUB / COPY YEAR LIMIT --><!-- FIXME: add publication,copyright,acquisition options -->
216
<!-- PUB / COPY YEAR LIMIT --><!-- FIXME: add publication,copyright,acquisition options -->
188
	<p><label for="limit-yr">Year: </label>
217
	<p><label for="limit-yr">Year: </label>
189
		<input type="text" size="15" name="limit-yr" id="limit-yr" value=""/>&nbsp;&nbsp;(format: yyyy-yyyy)</p>
218
        [% SET year_limit_key = 'yr,st-numeric' %]
219
        <input type="text" size="15" name="limit-yr" id="limit-yr" value="[% limits.$year_limit_key.0 | html %]"/>&nbsp;&nbsp;(format: yyyy-yyyy)</p>
220
        [% IF limits.$year_limit_key.defined %]
221
            [% limits.delete(year_limit_key) %]
222
        [% END %]
190
<!-- /PUB / COPY YEAR LIMIT -->
223
<!-- /PUB / COPY YEAR LIMIT -->
191
</fieldset>
224
</fieldset>
192
<fieldset id="language">
225
<fieldset id="language">
193
<!-- LANGUAGE LIMIT -->
226
<!-- LANGUAGE LIMIT -->
194
    <p>
227
    <p>
195
        <label for="language-limit">Language: </label>
228
        <label for="language-limit">Language: </label>
196
        [% PROCESS language_limit_select ln_loop=search_languages_loop ln_id='language-limit' ln_index='ln' %]
229
        [% PROCESS language_limit_select ln_loop=search_languages_loop ln_id='language-limit' ln_index='ln' selected = limits.${'ln,rtrn'}.0 %]
230
        [% limits.delete( 'ln,rtrn' ) %]
197
        <label for="language-original-limit">Language of original: </label>
231
        <label for="language-original-limit">Language of original: </label>
198
        [% PROCESS language_limit_select ln_loop=search_languages_loop ln_id='language-original-limit' ln_index='language-original' %]
232
        [% PROCESS language_limit_select ln_loop=search_languages_loop ln_id='language-original-limit' ln_index='language-original' selected = limits.${'language-original,rtrn'}.0 %]
233
        [% limits.delete( 'language-original,rtrn' ) %]
199
    </p>
234
    </p>
200
<!-- /LANGUAGE LIMIT -->
235
<!-- /LANGUAGE LIMIT -->
201
</fieldset>
236
</fieldset>
Lines 207-216 Link Here
207
[% IF ( UNIMARC ) %]
242
[% IF ( UNIMARC ) %]
208
[% INCLUDE 'subtypes_unimarc.inc' %]
243
[% INCLUDE 'subtypes_unimarc.inc' %]
209
[% ELSE %]
244
[% ELSE %]
245
[% PROCESS 'subtype_limits.inc' %]
210
<!-- SUBTYPE LIMITS -->
246
<!-- SUBTYPE LIMITS -->
211
        <fieldset id="subtype">
247
        <fieldset id="subtype">
212
        <legend>Subtype limits</legend><p>
248
        <legend>Subtype limits</legend><p>
213
        
249
250
        <fieldset id="current_subtype_limits"><legend>Current subtype limits</legend>
251
        [% FOREACH subtype IN ['aud','fic','bio','ctype','l-format'] %]
252
            [% FOREACH limit IN limits.$subtype %]
253
                <span>
254
                    <input name="limit" value="[% subtype | html %]:[% limit | html %]" type="hidden">
255
                    <label for="subtype_limit_[% loop.index() | html %]">[% PROCESS subtype_limits_description subtype_limit = subtype _':' _ limit %]</label>
256
                    <input type="checkbox" class="toggle_limit" name="subtype_limit_[% loop.index() | html %]" checked="checked">
257
                </span>
258
           [% END %]
259
            [% limits.delete( subtype ) %]
260
        [% END %]
261
        </fieldset>
262
214
        <select name="limit" class="subtype">
263
        <select name="limit" class="subtype">
215
            <option value="" selected="selected" class="menuheader">Any audience</option>
264
            <option value="" selected="selected" class="menuheader">Any audience</option>
216
			<option value="aud:a">Preschool</option>
265
			<option value="aud:a">Preschool</option>
Lines 280-293 Link Here
280
<!-- AVAILABILITY LIMITS -->
329
<!-- AVAILABILITY LIMITS -->
281
    <fieldset id="availability"><legend>Location and availability</legend>
330
    <fieldset id="availability"><legend>Location and availability</legend>
282
<fieldset id="currently-avail">
331
<fieldset id="currently-avail">
283
        <p><label for="available-items">Only items currently available:</label> <input type="checkbox" id="available-items" name="limit" value="available" /></p>
332
        [% IF limit_available %]
333
            <p><label for="available-items">Only items currently available:</label> <input type="checkbox" id="available-items" name="limit" value="available"  checked="checked" /></p>
334
        [% ELSE %]
335
            <p><label for="available-items">Only items currently available:</label> <input type="checkbox" id="available-items" name="limit" value="available" /></p>
336
        [% END %]
284
</fieldset>
337
</fieldset>
285
338
286
<fieldset id="select-libs">
339
<fieldset id="select-libs">
287
        <p><label for="branchloop">Individual libraries:</label><select name="limit" id="branchloop">
340
        <p><label for="branchloop">Individual libraries:</label><select name="limit" id="branchloop">
288
        <option value="">All libraries</option>
341
        <option value="">All libraries</option>
289
        [%# FIXME Should not we filter the libraries displayed? %]
342
        [%# FIXME Should not we filter the libraries displayed? %]
290
        [% PROCESS options_for_libraries prefix => "branch:" libraries => Branches.all( unfiltered => 1, do_not_select_my_library => 1 ) %]
343
        [% PROCESS options_for_libraries prefix => "branch:" libraries => Branches.all( unfiltered => 1, do_not_select_my_library => 1, selected => limits.branch.0 ) %]
344
        [% limits.delete('branch') %]
291
        </select></p>
345
        </select></p>
292
        [% IF search_groups %]
346
        [% IF search_groups %]
293
            <p>OR</p>
347
            <p>OR</p>
Lines 298-306 Link Here
298
                    <option value=""> -- none -- </option>
352
                    <option value=""> -- none -- </option>
299
                    [% FOREACH sg IN search_groups %]
353
                    [% FOREACH sg IN search_groups %]
300
                        [% UNLESS sg.branchcode %]
354
                        [% UNLESS sg.branchcode %]
301
                            <option value="multibranchlimit:[% sg.id | html %]">[% sg.title | html %]</option>
355
                            [% IF limits.multibranchlimit.0 == sg.id %]
356
                                <option selected="selected" value="multibranchlimit:[% sg.id | html %]">[% sg.title | html %]</option>
357
                            [% ELSE %]
358
                                <option value="multibranchlimit:[% sg.id | html %]">[% sg.title | html %]</option>
359
                            [% END %]
302
                        [% END %]
360
                        [% END %]
303
                    [% END %]
361
                    [% END %]
362
                    [% limits.delete('multibranchlimit') %]
304
                </select>
363
                </select>
305
            </p>
364
            </p>
306
    [% END %]
365
    [% END %]
Lines 308-318 Link Here
308
    </fieldset>
367
    </fieldset>
309
<!-- /AVAILABILITY LIMITS -->
368
<!-- /AVAILABILITY LIMITS -->
310
369
370
<!-- OTHER LIMITS (facets, etc.) -->
371
[% IF limits.size %]
372
<fieldset id=""><legend>Other limits</legend>
373
    <p>
374
    [% FOREACH key IN limits.keys %]
375
        [% FOREACH limit IN limits.$key %]
376
            <span>
377
                <input type="hidden" name="limit" value="[% key | html %]:[% limit | html %]">
378
                <label for="other_[% key _ loop.index() | html %]">[% key | html %]:[% limit | html %]</label>
379
                <input type="checkbox" class="toggle_limit" name="other_[% key _ loop.index() | html %]" checked="checked">
380
            </span>
381
        [% END %]
382
    [% END %]
383
    </p>
384
</fieldset>
385
[% END %]
386
<!-- /OTHER LIMITS (facets, etc.) -->
387
311
<!-- RANK LIMITS -->
388
<!-- RANK LIMITS -->
312
<fieldset id="sortby"><legend>Sorting</legend>
389
<fieldset id="sortby"><legend>Sorting</legend>
313
    <p>
390
    <p>
314
    <label for="sort_by">Sort by: </label><select id="sort_by" name="sort_by">
391
    <label for="sort_by">Sort by: </label><select id="sort_by" name="sort_by">
315
  [% INCLUDE 'resort_form.inc' %]
392
  [% INCLUDE 'resort_form.inc' sort_by = sort %]
316
    </select>
393
    </select>
317
        </p>
394
        </p>
318
</fieldset>
395
</fieldset>
Lines 366-371 Link Here
366
                });
443
                });
367
            [% END %]
444
            [% END %]
368
445
446
            if( $("#current_subtype_limits input").length == 0 ){
447
                $("#current_subtype_limits").hide();
448
            }
449
            $(".toggle_limit").on('click',function(){
450
                $(this).siblings("[type='hidden']").prop('disabled', !this.checked);
451
            });
452
369
            [% IF searchid %]
453
            [% IF searchid %]
370
                browser = KOHA.browser('[% searchid | html %]');
454
                browser = KOHA.browser('[% searchid | html %]');
371
                browser.show_back_link();
455
                browser.show_back_link();
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/results.tt (-2 / +2 lines)
Lines 74-79 Link Here
74
                    <h3>
74
                    <h3>
75
                        [% total | html %] result(s) found [% IF ( query_desc ) %]for <span class="results_query_desc">'[% query_desc | html %]'</span>[% END %][% IF limit_desc  %]&nbsp;with limit(s): <span class="results_limit_desc">'[% limit_desc | html %]'</span>[% END %][% IF ( LibraryName ) %] in [% LibraryName | html %] Catalog[% END %].
75
                        [% total | html %] result(s) found [% IF ( query_desc ) %]for <span class="results_query_desc">'[% query_desc | html %]'</span>[% END %][% IF limit_desc  %]&nbsp;with limit(s): <span class="results_limit_desc">'[% limit_desc | html %]'</span>[% END %][% IF ( LibraryName ) %] in [% LibraryName | html %] Catalog[% END %].
76
                    </h3>
76
                    </h3>
77
                    <a href="/cgi-bin/koha/catalogue/search.pl?advsearch=1&edit_search=1&[% query_cgi | $raw %]&[% limit_cgi | $raw %]&sort_by=[% sort_by | $raw %]">Edit this search</a>
77
78
78
                    <div class="searchheader" id="searchheader">
79
                    <div class="searchheader" id="searchheader">
79
                        <div id="selection_ops">
80
                        <div id="selection_ops">
Lines 327-332 Link Here
327
                            [% IF CAN_user_acquisition_order_manage && searchtoorder_basketno && searchtoorder_vendorid %][%# Coming from the basket or vendor view %]
328
                            [% IF CAN_user_acquisition_order_manage && searchtoorder_basketno && searchtoorder_vendorid %][%# Coming from the basket or vendor view %]
328
                                <p><a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% searchtoorder_basketno | uri %]">View basket<a></p>
329
                                <p><a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% searchtoorder_basketno | uri %]">View basket<a></p>
329
                            [% END %]
330
                            [% END %]
331
                            <a href="/cgi-bin/koha/catalogue/search.pl?advsearch=1&edit_search=1&[% query_cgi | $raw %]&[% limit_cgi | $raw %]&sort_by=[% sort_by | $raw %]">Edit this search</a>
330
                        [% ELSE %]
332
                        [% ELSE %]
331
                            <p>You did not specify any search criteria.</p>
333
                            <p>You did not specify any search criteria.</p>
332
                        [% END %]
334
                        [% END %]
Lines 728-734 Link Here
728
            query_desc: "[% To.json( query_desc ) | $raw %]",
730
            query_desc: "[% To.json( query_desc ) | $raw %]",
729
            query_cgi: "[% query_cgi | html %]",
731
            query_cgi: "[% query_cgi | html %]",
730
            limit_cgi: "[% limit_cgi | html %]",
732
            limit_cgi: "[% limit_cgi | html %]",
731
            sort_cgi: "[% sort_cgi | html %]",
732
            sort_by: "[% sort_by | html %]",
733
            sort_by: "[% sort_by | html %]",
733
            gotoPage: "[% gotoPage | html %]",
734
            gotoPage: "[% gotoPage | html %]",
734
            gotoNumber: "[% gotoNumber | html %]",
735
            gotoNumber: "[% gotoNumber | html %]",
735
- 

Return to bug 22605