Bugzilla – Attachment 26258 Details for
Bug 10855
Custom fields for subscriptions
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 10855: search with exact match if linked to an AV
Bug-10855-search-with-exact-match-if-linked-to-an-.patch (text/plain), 4.34 KB, created by
Jonathan Druart
on 2014-03-13 11:06:22 UTC
(
hide
)
Description:
Bug 10855: search with exact match if linked to an AV
Filename:
MIME Type:
Creator:
Jonathan Druart
Created:
2014-03-13 11:06:22 UTC
Size:
4.34 KB
patch
obsolete
>From fa7bcec4eeb3a5f019afde96243afa0b4adcf04e Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@biblibre.com> >Date: Mon, 23 Dec 2013 10:43:52 +0100 >Subject: [PATCH] Bug 10855: search with exact match if linked to an AV > >If a field is linked to an AV, the search should be an exact match. >--- > Koha/AdditionalField.pm | 2 +- > .../intranet-tmpl/prog/en/modules/serials/serials-search.tt | 4 ++-- > serials/serials-search.pl | 9 ++++++--- > 3 files changed, 9 insertions(+), 6 deletions(-) > >diff --git a/Koha/AdditionalField.pm b/Koha/AdditionalField.pm >index 2f3f44b..55f041b 100644 >--- a/Koha/AdditionalField.pm >+++ b/Koha/AdditionalField.pm >@@ -230,7 +230,7 @@ sub get_matching_record_ids { > ) AS values$i |; > $subquery .= ' USING (record_id)' if $i > 1; > push @subqueries, $subquery; >- push @args, $field->{name}, $tablename, ( $exact_match ? $field->{value} : "%$field->{value}%" ); >+ push @args, $field->{name}, $tablename, ( $exact_match or $field->{authorised_value_category} ? $field->{value} : "%$field->{value}%" ); > } > $query .= join( ' LEFT JOIN ', @subqueries ) . ' WHERE 1'; > for my $j ( 1 .. $i ) { >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-search.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-search.tt >index 61c031e..b581466 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-search.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-search.tt >@@ -425,7 +425,7 @@ > <select id="additional_field_[% field.id %]" name="additional_field_[% field.id %]_filter"> > <option value="">All</option> > [% FOREACH av IN field.authorised_value_choices %] >- [% IF av.authorised_value == additional_field_filters.${field.name} %] >+ [% IF av.authorised_value == additional_field_filters.${field.name}.value %] > <option value="[% av.authorised_value %]" selected="selected">[% av.lib %]</option> > [% ELSE %] > <option value="[% av.authorised_value %]">[% av.lib %]</option> >@@ -433,7 +433,7 @@ > [% END %] > </select> > [% ELSE %] >- <input id="additional_field_[% field.id %]" type="text" value="[% additional_field_filters.${field.name} %]" name="additional_field_[% field.id %]_filter" /> >+ <input id="additional_field_[% field.id %]" type="text" value="[% additional_field_filters.${field.name}.value %]" name="additional_field_[% field.id %]_filter" /> > [% END %] > </li> > [% END %] >diff --git a/serials/serials-search.pl b/serials/serials-search.pl >index b612c70..eb3b74e 100755 >--- a/serials/serials-search.pl >+++ b/serials/serials-search.pl >@@ -82,8 +82,11 @@ my $additional_fields = Koha::AdditionalField->all( { tablename => 'subscription > my $additional_field_filters; > for my $field ( @$additional_fields ) { > my $filter_value = $query->param('additional_field_' . $field->{id} . '_filter'); >- if ( defined ( $filter_value ) ) { >- $additional_field_filters->{ $field->{name} } = $filter_value; >+ if ( defined $filter_value and $filter_value ne q|| ) { >+ $additional_field_filters->{ $field->{name} } = { >+ value => $filter_value, >+ authorised_value_category => $field->{authorised_value_category}, >+ }; > } > if ( $field->{authorised_value_category} ) { > $field->{authorised_value_choices} = GetAuthorisedValues( $field->{authorised_value_category} ); >@@ -103,7 +106,7 @@ if ($searched){ > publisher => $publisher, > bookseller => $bookseller, > branch => $branch, >- additional_fields => [ map{ { name => $_, value => $additional_field_filters->{$_}} } keys %$additional_field_filters ], >+ additional_fields => [ map{ { name => $_, value => $additional_field_filters->{$_}{value}, authorised_value_category => $additional_field_filters->{$_}{authorised_value_category} } } keys %$additional_field_filters ], > location => $location, > expiration_date => $expiration_date_dt, > } >-- >1.7.10.4
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 10855
:
20937
|
20938
|
20939
|
20940
|
20941
|
20942
|
20943
|
20944
|
21184
|
21185
|
21186
|
21187
|
21188
|
21189
|
21190
|
21191
|
21663
|
22049
|
22050
|
22051
|
22052
|
22053
|
22054
|
22055
|
22056
|
22057
|
22359
|
22360
|
22600
|
22601
|
22602
|
22603
|
22604
|
22605
|
22606
|
22607
|
22608
|
22616
|
22698
|
22699
|
22700
|
22701
|
22702
|
22703
|
22722
|
22768
|
22769
|
22869
|
23052
|
23053
|
23142
|
23143
|
23301
|
23302
|
23594
|
23595
|
23596
|
23597
|
23598
|
23599
|
23600
|
23601
|
23602
|
23774
|
23775
|
23961
|
23962
|
23963
|
23964
|
24452
|
24453
|
24454
|
24455
|
24456
|
24457
|
24569
|
24570
|
26091
|
26092
|
26093
|
26094
|
26095
|
26096
|
26097
|
26254
|
26255
|
26256
|
26257
|
26258
|
26259
|
26260
|
26276
|
26651
|
26655
|
28929
|
28930
|
28931
|
28932
|
28933
|
28934
|
28935
|
28936
|
28937
|
28938
|
28939
|
28940
|
28941
|
29095
|
29161
|
35211
|
35212
|
35213
|
35214
|
35215
|
35216
|
35217
|
35218
|
35219
|
35220
|
35221
|
35309
|
35310
|
35369
|
35556
|
36359
|
36362
|
36363
|
36364
|
36365
|
36366
|
36367
|
36368
|
36369
|
36370
|
36371
|
36372
|
36373
|
36374
|
38549
|
38550
|
38551
|
38552
|
38553
|
38554
|
38555
|
38556
|
38557
|
38558
|
38559
|
38560
|
38561
|
42296
|
42297
|
42298
|
42299
|
42300
|
42301
|
42302
|
42303
|
42304
|
42305
|
42306
|
42307
|
42308
|
42309
|
42310
|
42332
|
42333
|
43076