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

(-)a/C4/Search.pm (-1 / +2 lines)
Lines 21-26 use C4::Biblio qw( TransformMarcToKoha GetMarcFromKohaField GetFrameworkCode Get Link Here
21
use C4::Koha qw( getFacets GetVariationsOfISBN GetNormalizedUPC GetNormalizedEAN GetNormalizedOCLCNumber GetNormalizedISBN getitemtypeimagelocation );
21
use C4::Koha qw( getFacets GetVariationsOfISBN GetNormalizedUPC GetNormalizedEAN GetNormalizedOCLCNumber GetNormalizedISBN getitemtypeimagelocation );
22
use Koha::DateUtils;
22
use Koha::DateUtils;
23
use Koha::Libraries;
23
use Koha::Libraries;
24
use Koha::SearchEngine::QueryBuilder;
24
use Lingua::Stem;
25
use Lingua::Stem;
25
use XML::Simple;
26
use XML::Simple;
26
use C4::XSLT qw( XSLTParse4Display );
27
use C4::XSLT qw( XSLTParse4Display );
Lines 33-38 use Koha::Logger; Link Here
33
use Koha::Patrons;
34
use Koha::Patrons;
34
use Koha::Recalls;
35
use Koha::Recalls;
35
use Koha::RecordProcessor;
36
use Koha::RecordProcessor;
37
use Koha::SearchFilters;
36
use URI::Escape;
38
use URI::Escape;
37
use Business::ISBN;
39
use Business::ISBN;
38
use MARC::Record;
40
use MARC::Record;
Lines 1538-1544 sub buildQuery { Link Here
1538
    }
1540
    }
1539
    Koha::Logger->get->debug("QUERY BEFORE LIMITS: >$query<");
1541
    Koha::Logger->get->debug("QUERY BEFORE LIMITS: >$query<");
1540
1542
1541
1542
    # Normalize the query and limit strings
1543
    # Normalize the query and limit strings
1543
    # This is flawed , means we can't search anything with : in it
1544
    # This is flawed , means we can't search anything with : in it
1544
    # if user wants to do ccl or cql, start the query with that
1545
    # if user wants to do ccl or cql, start the query with that
(-)a/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm (-2 / +10 lines)
Lines 806-812 sub _convert_index_strings_freeform { Link Here
806
    # Lower case field names
806
    # Lower case field names
807
    $search =~ s/($field_name_pattern)(?:,[\w-]*)?($multi_field_pattern):/\L$1\E$2:/og;
807
    $search =~ s/($field_name_pattern)(?:,[\w-]*)?($multi_field_pattern):/\L$1\E$2:/og;
808
    # Resolve possible field aliases
808
    # Resolve possible field aliases
809
    $search =~ s/($field_name_pattern)($multi_field_pattern):/(exists $index_field_convert{$1} ? $index_field_convert{$1} : $1)."$2:"/oge;
809
    $search =~ s/($field_name_pattern)($multi_field_pattern):/(exists $index_field_convert{$1} ? $index_field_convert{$1} : $1).($1 eq 'kw' ? "$2" : "$2:")/oge;
810
    return $search;
810
    return $search;
811
}
811
}
812
812
Lines 1069-1074 sub _fix_limit_special_cases { Link Here
1069
            next unless defined($start) && defined($end);
1069
            next unless defined($start) && defined($end);
1070
            push @new_lim, "date-of-publication:[$start TO $end]";
1070
            push @new_lim, "date-of-publication:[$start TO $end]";
1071
        }
1071
        }
1072
        elsif( $l =~ /^search_filter:/ ){
1073
            my ($filter_id) = ( $l =~ /^search_filter:(.*)$/ );
1074
            my $search_filter = Koha::SearchFilters->find( $filter_id );
1075
            next unless $search_filter;
1076
            my $expanded = $search_filter->expand_filter;
1077
            foreach my $e ( @{$self->_fix_limit_special_cases($expanded)} ) {
1078
                push @new_lim, $self->clean_search_term( $e );
1079
            }
1080
        }
1072
        elsif ( $l =~ /^yr,st-numeric[=:]/ ) {
1081
        elsif ( $l =~ /^yr,st-numeric[=:]/ ) {
1073
            my ($date) = ( $l =~ /^yr,st-numeric[=:](.*)$/ );
1082
            my ($date) = ( $l =~ /^yr,st-numeric[=:](.*)$/ );
1074
            next unless defined($date);
1083
            next unless defined($date);
1075
- 

Return to bug 17170