. * * @file * @ingroup Skins */ declare( strict_types=1 ); namespace MediaWiki\Skins\Citizen\Hooks; use Config; use ExtensionRegistry; use MediaWiki\ResourceLoader as RL; /** * Hooks to run relating to the resource loader */ class ResourceLoaderHooks { /** * Passes config variables to skins.citizen.scripts ResourceLoader module. * @param RL\Context $context * @param Config $config * @return array */ public static function getCitizenResourceLoaderConfig( RL\Context $context, Config $config ) { return [ 'wgCitizenEnablePreferences' => $config->get( 'CitizenEnablePreferences' ), 'wgCitizenSearchModule' => $config->get( 'CitizenSearchModule' ), 'wgCitizenTableNowrapClasses' => $config->get( 'CitizenTableNowrapClasses' ), ]; } /** * Passes config variables to skins.citizen.preferences ResourceLoader module. * @param RL\Context $context * @param Config $config * @return array */ public static function getCitizenPreferencesResourceLoaderConfig( RL\Context $context, Config $config ) { return [ 'wgCitizenThemeDefault' => $config->get( 'CitizenThemeDefault' ), ]; } /** * Passes config variables to skins.citizen.search ResourceLoader module. * @param RL\Context $context * @param Config $config * @return array */ public static function getCitizenSearchResourceLoaderConfig( RL\Context $context, Config $config ) { return [ 'wgCitizenSearchGateway' => $config->get( 'CitizenSearchGateway' ), 'wgCitizenSearchDescriptionSource' => $config->get( 'CitizenSearchDescriptionSource' ), 'wgCitizenMaxSearchResults' => $config->get( 'CitizenMaxSearchResults' ), 'wgCitizenSearchSmwAskApiQueryTemplate' => $config->get( 'CitizenSearchSmwAskApiQueryTemplate' ), 'wgScriptPath' => $config->get( 'ScriptPath' ), 'wgSearchSuggestCacheExpiry' => $config->get( 'SearchSuggestCacheExpiry' ), 'isMediaSearchExtensionEnabled' => ExtensionRegistry::getInstance()->isLoaded( 'MediaSearch' ), ]; } }