X-Git-Url: https://git.cyclocoop.org/%242?a=blobdiff_plain;f=includes%2Fresourceloader%2FResourceLoaderUserCSSPrefsModule.php;h=04b04349c89bdd5806924d79fd6a8152f6a4377c;hb=bcd377cd008f8a8628ab727c3fa90090725d6c10;hp=65d770e23f8e0112d19ff980b3981ed927971474;hpb=8195fd3551c484cfe140fd54ac9c16c2d8c4bc4a;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/resourceloader/ResourceLoaderUserCSSPrefsModule.php b/includes/resourceloader/ResourceLoaderUserCSSPrefsModule.php index 65d770e23f..aef1c74452 100644 --- a/includes/resourceloader/ResourceLoaderUserCSSPrefsModule.php +++ b/includes/resourceloader/ResourceLoaderUserCSSPrefsModule.php @@ -1,6 +1,6 @@ getConfig()->get( 'AllowUserCssPrefs' ) ) { - return array(); + return []; } $options = $context->getUserObj()->getOptions(); // Build CSS rules - $rules = array(); + $rules = []; - // Underline: 2 = browser default, 1 = always, 0 = never + // Underline: 2 = skin default, 1 = always, 0 = never if ( $options['underline'] < 2 ) { $rules[] = "a { text-decoration: " . ( $options['underline'] ? 'underline' : 'none' ) . "; }"; - } else { - # The scripts of these languages are very hard to read with underlines - $rules[] = 'a:lang(ar), a:lang(kk-arab), a:lang(mzn), ' . - 'a:lang(ps), a:lang(ur) { text-decoration: none; }'; - } - if ( $options['editfont'] !== 'default' ) { - // Double-check that $options['editfont'] consists of safe characters only - if ( preg_match( '/^[a-zA-Z0-9_, -]+$/', $options['editfont'] ) ) { - $rules[] = "textarea { font-family: {$options['editfont']}; }\n"; - } } $style = implode( "\n", $rules ); if ( $this->getFlip( $context ) ) { $style = CSSJanus::transform( $style, true, false ); } - return array( 'all' => $style ); + return [ 'all' => $style ]; + } + + /** + * @param ResourceLoaderContext $context + * @return bool + */ + public function isKnownEmpty( ResourceLoaderContext $context ) { + $styles = $this->getStyles( $context ); + return isset( $styles['all'] ) && $styles['all'] === ''; } /** @@ -78,4 +77,11 @@ class ResourceLoaderUserCSSPrefsModule extends ResourceLoaderModule { public function getGroup() { return 'private'; } + + /** + * @return string + */ + public function getType() { + return self::LOAD_STYLES; + } }