MediaWiki REL1_35
SearchEngineConfig Class Reference

Configuration handling class for SearchEngine. More...

Collaboration diagram for SearchEngineConfig:

Public Member Functions

 __construct (Config $config, Language $lang, HookContainer $hookContainer, array $mappings)
 
 defaultNamespaces ()
 An array of namespaces indexes to be searched by default.
 
 getConfig ()
 Retrieve original config.
 
 getSearchMappings ()
 Returns the mappings between canonical search name and underlying PHP class.
 
 getSearchType ()
 Return the search engine configured in $wgSearchType, etc.
 
 getSearchTypes ()
 Return the search engines we support.
 
 namespacesAsText ( $namespaces)
 Get a list of namespace names useful for showing in tooltips and preferences.
 
 searchableNamespaces ()
 Make a list of searchable namespaces and their canonical names.
 
 userNamespaces ( $user)
 Extract default namespaces to search from the given user's settings, returning a list of index numbers.
 

Private Attributes

Config $config
 Config object from which the settings will be derived.
 
array $engineMappings
 Search Engine Mappings.
 
HookRunner $hookRunner
 
Language $language
 Current language.
 

Detailed Description

Configuration handling class for SearchEngine.

Provides added service over plain configuration.

Since
1.27

Definition at line 12 of file SearchEngineConfig.php.

Constructor & Destructor Documentation

◆ __construct()

SearchEngineConfig::__construct ( Config  $config,
Language  $lang,
HookContainer  $hookContainer,
array  $mappings 
)
Parameters
Config$config
Language$lang
HookContainer$hookContainer
array$mappings

Definition at line 47 of file SearchEngineConfig.php.

References $lang.

Member Function Documentation

◆ defaultNamespaces()

SearchEngineConfig::defaultNamespaces ( )

An array of namespaces indexes to be searched by default.

Returns
int[] Namespace IDs

Definition at line 104 of file SearchEngineConfig.php.

◆ getConfig()

SearchEngineConfig::getConfig ( )

Retrieve original config.

Returns
Config

Definition at line 60 of file SearchEngineConfig.php.

◆ getSearchMappings()

SearchEngineConfig::getSearchMappings ( )

Returns the mappings between canonical search name and underlying PHP class.

Key is the canonical name (used in $wgSearchType and $wgSearchTypeAlternatives). Value is a specification for ObjectFactory.

For example to be able to use 'foobarsearch' in $wgSearchType and $wgSearchTypeAlternatives but the PHP class for 'foobarsearch' is 'MediaWiki\Extensions\FoobarSearch\FoobarSearch' set:

extension.json Example:
"SearchMappings": {
"foobarsearch": { "class": "MediaWiki\\\\Extensions\\\\FoobarSearch\\\\FoobarSearch" }
}
Since
1.35
Returns
array

Definition at line 150 of file SearchEngineConfig.php.

◆ getSearchType()

SearchEngineConfig::getSearchType ( )

Return the search engine configured in $wgSearchType, etc.

Returns
string|null

Definition at line 126 of file SearchEngineConfig.php.

◆ getSearchTypes()

SearchEngineConfig::getSearchTypes ( )

Return the search engines we support.

If only $wgSearchType is set, it'll be an array of just that one item.

Returns
array

Definition at line 114 of file SearchEngineConfig.php.

◆ namespacesAsText()

SearchEngineConfig::namespacesAsText (   $namespaces)

Get a list of namespace names useful for showing in tooltips and preferences.

Parameters
int[]$namespaces
Returns
string[] List of names

Definition at line 161 of file SearchEngineConfig.php.

References wfMessage().

◆ searchableNamespaces()

SearchEngineConfig::searchableNamespaces ( )

Make a list of searchable namespaces and their canonical names.

Returns
string[] Namespace ID => name -return array<int,string>

Definition at line 69 of file SearchEngineConfig.php.

References NS_MAIN.

Referenced by userNamespaces().

◆ userNamespaces()

SearchEngineConfig::userNamespaces (   $user)

Extract default namespaces to search from the given user's settings, returning a list of index numbers.

Parameters
user$user
Returns
int[]

Definition at line 88 of file SearchEngineConfig.php.

References searchableNamespaces().

Member Data Documentation

◆ $config

Config SearchEngineConfig::$config
private

Config object from which the settings will be derived.

Definition at line 18 of file SearchEngineConfig.php.

◆ $engineMappings

array SearchEngineConfig::$engineMappings
private

Search Engine Mappings.

Key is the canonical name (used in $wgSearchType and $wgSearchTypeAlternatives). Value is a specification for ObjectFactory.

Definition at line 34 of file SearchEngineConfig.php.

◆ $hookRunner

HookRunner SearchEngineConfig::$hookRunner
private

Definition at line 39 of file SearchEngineConfig.php.

◆ $language

Language SearchEngineConfig::$language
private

Current language.

Definition at line 24 of file SearchEngineConfig.php.


The documentation for this class was generated from the following file: