Make base font repository path configurable via $wgULSFontRepositoryBasePath

This patch adds a configuration variable, '$wgULSFontRepositoryBasePath', which
specifies the base path to the font repository. By default, the variable is set
to its existing value, which is $wgExtensionAssetsPath +
'/UniversalLanguageSelector/data/fontrepo/fonts/'. However, adding a discrete
configuration variable makes it possible to configure ULS to use a custom URL
scheme that is more suitable for large static assets that change infrequently.

Change-Id: Idbe57072c4f3258757eb691e54cab5429cadcfda
This commit is contained in:
Ori Livneh
2013-10-14 02:01:36 -07:00
parent e7539a341e
commit 03e40f7215
3 changed files with 18 additions and 3 deletions

View File

@@ -256,7 +256,8 @@ class UniversalLanguageSelectorHooks {
*/ */
public static function addConfig( &$vars ) { public static function addConfig( &$vars ) {
global $wgULSGeoService, $wgULSIMEEnabled, $wgULSPosition, $wgULSNoWebfontsSelectors, global $wgULSGeoService, $wgULSIMEEnabled, $wgULSPosition, $wgULSNoWebfontsSelectors,
$wgULSAnonCanChangeLanguage, $wgULSEventLogging, $wgULSNoImeSelectors; $wgULSAnonCanChangeLanguage, $wgULSEventLogging, $wgULSNoImeSelectors,
$wgULSFontRepositoryBasePath, $wgExtensionAssetsPath;
// Place constant stuff here (not depending on request context) // Place constant stuff here (not depending on request context)
if ( is_string( $wgULSGeoService ) ) { if ( is_string( $wgULSGeoService ) ) {
@@ -269,6 +270,13 @@ class UniversalLanguageSelectorHooks {
$vars['wgULSNoImeSelectors'] = $wgULSNoImeSelectors; $vars['wgULSNoImeSelectors'] = $wgULSNoImeSelectors;
$vars['wgULSNoWebfontsSelectors'] = $wgULSNoWebfontsSelectors; $vars['wgULSNoWebfontsSelectors'] = $wgULSNoWebfontsSelectors;
if ( is_string( $wgULSFontRepositoryBasePath ) ) {
$vars['wgULSFontRepositoryBasePath'] = $wgULSFontRepositoryBasePath;
} else {
$vars['wgULSFontRepositoryBasePath'] = $wgExtensionAssetsPath .
'/UniversalLanguageSelector/data/fontrepo/fonts/';
}
return true; return true;
} }

View File

@@ -137,6 +137,14 @@ $wgULSNoImeSelectors = array( '#wpCaptchaWord', '.ve-ce-documentNode' );
*/ */
$wgULSNoWebfontsSelectors = array( '#p-lang li > a' ); $wgULSNoWebfontsSelectors = array( '#p-lang li > a' );
/**
* Base path of ULS font repository.
* If not set, will be set to 'UniversalLanguageSelector/data/fontrepo/fonts/',
* relative to $wgExtensionAssetsPath.
* @since 2013.10
*/
$wgULSFontRepositoryBasePath = false;
// Internationalization // Internationalization
$wgExtensionMessagesFiles['UniversalLanguageSelector'] = $wgExtensionMessagesFiles['UniversalLanguageSelector'] =
__DIR__ . '/UniversalLanguageSelector.i18n.php'; __DIR__ . '/UniversalLanguageSelector.i18n.php';

View File

@@ -47,8 +47,7 @@
}; };
mediawikiFontRepository = $.webfonts.repository; mediawikiFontRepository = $.webfonts.repository;
mediawikiFontRepository.base = mw.config.get( 'wgExtensionAssetsPath' ) + mediawikiFontRepository.base = mw.config.get( 'wgULSFontRepositoryBasePath' );
'/UniversalLanguageSelector/data/fontrepo/fonts/';
mw.webfonts.setup = function () { mw.webfonts.setup = function () {
// Initialize webfonts // Initialize webfonts