VuFind API Documentation

SolrCN extends Solr
in package

Solr Call Number Autocomplete Module

This class provides smart call number suggestions by using the local Solr index.

Tags
category

VuFind

author

Demian Katz demian.katz@villanova.edu

license

http://opensource.org/licenses/gpl-2.0.php GNU General Public License

link

Wiki

Table of Contents

$defaultDisplayField  : string
Default Solr display field if none is configured
$displayField  : string
Solr field to use for display
$filters  : array<string|int, mixed>
Filters to apply to Solr search
$handler  : string
Autocomplete handler
$resultsManager  : PluginManager
Results plugin manager
$searchClassId  : string
Search object family to use
$searchObject  : Results
Search results object
$sortField  : string
Solr field to use for sorting
__construct()  : mixed
Constructor
addFilters()  : void
Add filters (in addition to the configured ones)
getSuggestions()  : array<string|int, mixed>
This method returns an array of strings matching the user's query for display in the autocomplete box.
setConfig()  : void
Set parameters that affect the behavior of the autocomplete handler.
getSuggestionsFromSearch()  : array<string|int, mixed>
Try to turn an array of record drivers into an array of suggestions.
initSearchObject()  : void
Initialize the search object used for finding recommendations.
matchQueryTerms()  : bool
Return true if all terms in the query occurs in the field data string.
mungeQuery()  : string
Process the user query to make it suitable for a Solr query.
pickBestMatch()  : bool|string
Given the values from a Solr field and the user's search query, pick the best match to display as a recommendation.
setDisplayField()  : void
Set the display field list. Useful for child classes.
setSortField()  : void
Set the sort field list. Useful for child classes.

Properties

$defaultDisplayField

Default Solr display field if none is configured

protected string $defaultDisplayField = 'title'

$displayField

Solr field to use for display

protected string $displayField

$filters

Filters to apply to Solr search

protected array<string|int, mixed> $filters

$handler

Autocomplete handler

protected string $handler

$searchClassId

Search object family to use

protected string $searchClassId = 'Solr'

$searchObject

Search results object

protected Results $searchObject

$sortField

Solr field to use for sorting

protected string $sortField

Methods

__construct()

Constructor

public __construct(PluginManager $results) : mixed
Parameters
$results : PluginManager

Results plugin manager

Return values
mixed

addFilters()

Add filters (in addition to the configured ones)

public addFilters(array<string|int, mixed> $filters) : void
Parameters
$filters : array<string|int, mixed>

Filters to add

Return values
void

getSuggestions()

This method returns an array of strings matching the user's query for display in the autocomplete box.

public getSuggestions(string $query) : array<string|int, mixed>
Parameters
$query : string

The user query

Return values
array<string|int, mixed>

The suggestions for the provided query

setConfig()

Set parameters that affect the behavior of the autocomplete handler.

public setConfig(string $params) : void

These values normally come from the search configuration file.

Parameters
$params : string

Parameters to set

Return values
void

getSuggestionsFromSearch()

Try to turn an array of record drivers into an array of suggestions.

protected getSuggestionsFromSearch(array<string|int, mixed> $searchResults, string $query, bool $exact) : array<string|int, mixed>
Parameters
$searchResults : array<string|int, mixed>

An array of record drivers

$query : string

User search query

$exact : bool

Ignore non-exact matches?

Return values
array<string|int, mixed>

initSearchObject()

Initialize the search object used for finding recommendations.

protected initSearchObject() : void
Return values
void

matchQueryTerms()

Return true if all terms in the query occurs in the field data string.

protected matchQueryTerms(string $data, string $query) : bool
Parameters
$data : string

The data field returned from solr

$query : string

The query string entered by the user

Return values
bool

mungeQuery()

Process the user query to make it suitable for a Solr query.

protected mungeQuery(string $query) : string
Parameters
$query : string

Incoming user query

Return values
string

Processed query

pickBestMatch()

Given the values from a Solr field and the user's search query, pick the best match to display as a recommendation.

protected pickBestMatch(array<string|int, mixed>|string $value, string $query, bool $exact) : bool|string
Parameters
$value : array<string|int, mixed>|string

Field value (or array of field values)

$query : string

User search query

$exact : bool

Ignore non-exact matches?

Return values
bool|string

String to use as recommendation, or false if no appropriate value was found.

setDisplayField()

Set the display field list. Useful for child classes.

protected setDisplayField(array<string|int, mixed> $new) : void
Parameters
$new : array<string|int, mixed>

Display field list.

Return values
void

setSortField()

Set the sort field list. Useful for child classes.

protected setSortField(string $new) : void
Parameters
$new : string

Sort field list.

Return values
void

Search results