because query parser isn't reinstantiated after each search.
I alse modified boolean.tt2 so it displays filters just like advanced search
Signed-off-by: Fredrick T Parks <fparks@catalystitservices.com>
modified: Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/metabib.pm
modified: Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
modified: Open-ILS/src/templates/opac/parts/advanced/boolean.tt2
_initialize_parser($parser) unless $parser->initialization_complete;
#If this is a boolean search set the human readable operators
- #XXX hard coded to just use english for now. Needs to be able to take forign keywords
if(exists $args{"_boolean"}) {
$operators = retreave_boolean_keywords($args{"_boolean"});
$log->debug("Full QueryParser query: $query", DEBUG);
- return query_parser_fts($self, $client, query => $query, _simple_plan => $base_plan->simple_plan );
+ my $results = query_parser_fts($self, $client, query => $query, _simple_plan => $base_plan->simple_plan );
+
+ #If this is a boolean keyword search reset to the default operators, so standard searches are not affected
+ if(exists $args{"_boolean"}) {
+ $parser->reset_operators();
+ }
+
+ return $results;
}
__PACKAGE__->register_method(
api_name => "open-ils.storage.biblio.multiclass.staged.search_fts",
return $parser_config{$class}{operators};
}
+=head2 reset_operators
+
+Resets the operators to %parser_config
+=cut
+
+sub reset_operators {
+ my $class = shift;
+
+ #foreach my $op (keys %parser_config{$class}{operators}) {
+ # $class->operator($op, $parser_config{$class}{operators}{$op});
+ #}
+ for my $o (keys %{QueryParser->operators}) {
+ $class->operator($o => QueryParser->operator($o));
+ }
+
+ return $class->operators();
+}
+
sub allow_nested_modifiers {
my $class = shift;
my $v = shift;
<span>
<input id='search-submit-go' type="submit" value="[% l('Search') %]" alt="[% l('Search') %]" class="opac-button"
onclick='setTimeout(function(){$("search-submit-spinner").className=""; $("search-submit-go").className="hidden"}, 2000)'/>
- <img id='search-submit-spinner' src='/opac/images/progressbar_green.gif' class='hidden' alt=''/>
+ <img id='search-submit-spinner' src='/opac/images/progressbar_green.gif'
+ class='hidden' alt="[% l('Search in progress icon') %]"/>
</span>
</div>
NEXT IF adv_chunk.adv_hide;
IF in_row == 0;
in_row = 1; %]
- <div id='adv_filter_block'>
+ <div class='adv_filter_block'>
[%
END; %]
- <div id='adv_filter_block_item'>
+ <div class='adv_filter_block_item'>
<div valign='top'[% IF adv_chunk.js_only %]
id='adv_chunk_[% adv_chunk.adv_special %]'
class='hidden'[% END %]>
</div>
[%
CASE "pub_year"; %]
- <select name='pubdate' onchange='
- if(this.selectedIndex == 3)
+ <select name='pubdate'
+ onchange='if(this.selectedIndex == 3)
unHideMe($("adv_global_pub_date_2_span"));
else
hideMe($("adv_global_pub_date_2_span"));'>
END;
END; %]
- </div>
</div>
</div>
</div>