mediawiki-extensions-Cite/includes/CiteCSSFileModule.php
Thiemo Kreuz 3e2d1a23e0 Fix all PHPCS issues and add missing array type hints
* I used https://codesearch.wmflabs.org to make sure the private
constants are indeed not used anywhere.

* The added type hints are safe, as far as I can tell. There is no way
one of these parameters can contain anything else. Otherwise the code
would fail already.

Change-Id: Iaa7615e9864805760fa652700b58b69680b4f17e
2019-10-17 09:23:20 +02:00

41 lines
1 KiB
PHP

<?php
use MediaWiki\MediaWikiServices;
/**
* ResourceLoaderFileModule for adding the content language Cite CSS
*
* @copyright 2011-2018 VisualEditor Team's Cite sub-team and others; see AUTHORS.txt
* @license MIT
*/
class CiteCSSFileModule extends ResourceLoaderFileModule {
/**
* @inheritDoc
*/
public function __construct(
array $options = [],
$localBasePath = null,
$remoteBasePath = null
) {
$contLang = MediaWikiServices::getInstance()->getContentLanguage();
parent::__construct( $options, $localBasePath, $remoteBasePath );
// Get the content language code, and all the fallbacks. The first that
// has a ext.cite.style.<lang code>.css file present will be used.
$langCodes = array_merge(
[ $contLang->getCode() ],
$contLang->getFallbackLanguages()
);
foreach ( $langCodes as $lang ) {
$langStyleFile = 'ext.cite.style.' . $lang . '.css';
$localPath = $this->getLocalPath( $langStyleFile );
if ( file_exists( $localPath ) ) {
$this->styles[] = $langStyleFile;
break;
}
}
}
}