From 1526b9956e3421ed533fe9f0fdd60fecee6b1500 Mon Sep 17 00:00:00 2001 From: miker Date: Sat, 1 Mar 2008 16:31:38 +0000 Subject: [PATCH] adjusting cql qualifier logic git-svn-id: svn://svn.open-ils.org/ILS/trunk@8846 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm | 28 +++++++++++-------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm b/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm index 60a041ebb4..8c8bfaef37 100644 --- a/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm +++ b/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm @@ -1449,26 +1449,32 @@ sub sru_search { my $relation = $self->getRelation(); my $query; - if ( $qualifier and $qualifier_map{lc($qualifier)} ) { - my $base = $relation->getBase(); - my @modifiers = $relation->getModifiers(); - - foreach my $m ( @modifiers ) { - if( $m->[ 1 ] eq 'fuzzy' ) { - $term = "$term~"; - } + if ( $qualifier ) { + + if ( exists($qualifier_map{lc($qualifier)}) ) { + $qualifier = 'kw' unless ( defined($qualifier_map{lc($qualifier)}) ); } + + #my @modifiers = $relation->getModifiers(); + + #foreach my $m ( @modifiers ) { + # if( $m->[ 1 ] eq 'fuzzy' ) { + # $term = "$term~"; + # } + #} + + my $base = $relation->getBase(); if( $base eq '=' ) { $base = ':'; } else { croak( "Evergreen doesn't support relations other than '='" ); } + return "$qualifier$base$term"; - } elsif ($qualifier) { - return "kw:$term"; + } else { - return ""; + return "kw:$term"; } } } -- 2.43.2