<?php
/**
- * See skin.txt
+ * Simple: A lightweight skin with a simple white-background sidebar and no
+ * top bar.
*
- * @todo document
- * @package MediaWiki
- * @subpackage Skins
+ * @file
+ * @ingroup Skins
*/
if( !defined( 'MEDIAWIKI' ) )
- die();
+ die( -1 );
/** */
-require_once('MonoBook.php');
+require_once( dirname(__FILE__) . '/MonoBook.php' );
/**
- * @todo document
- * @package MediaWiki
- * @subpackage Skins
+ * Inherit main code from SkinTemplate, set the CSS and template filter.
+ * @ingroup Skins
*/
class SkinSimple extends SkinTemplate {
- function initPage( &$out ) {
- SkinTemplate::initPage( $out );
- $this->skinname = 'simple';
- $this->stylename = 'simple';
- $this->template = 'MonoBookTemplate';
- }
+ var $skinname = 'simple', $stylename = 'simple',
+ $template = 'MonoBookTemplate', $useHeadElement = true;
- function reallyDoGetUserStyles() {
- global $wgUser;
- $s = '';
- if (($undopt = $wgUser->getOption("underline")) != 2) {
- $underline = $undopt ? 'underline' : 'none';
- $s .= "a { text-decoration: $underline; }\n";
- }
- if ($wgUser->getOption('highlightbroken')) {
- $s .= "a.new, #quickbar a.new { text-decoration: line-through; }\n";
- } else {
- $s .= <<<END
-a.new, #quickbar a.new,
-a.stub, #quickbar a.stub {
- color: inherit;
- text-decoration: inherit;
-}
-a.new:after, #quickbar a.new:after {
- content: "?";
- color: #CC2200;
- text-decoration: $underline;
-}
-a.stub:after, #quickbar a.stub:after {
- content: "!";
- color: #772233;
- text-decoration: $underline;
-}
-END;
- }
- if ($wgUser->getOption('justify')) {
- $s .= "#article, #bodyContent { text-align: justify; }\n";
- }
- if (!$wgUser->getOption('showtoc')) {
- $s .= "#toc { display: none; }\n";
+ /**
+ * @param $out OutputPage
+ */
+ function setupSkinUserCss( OutputPage $out ) {
+ parent::setupSkinUserCss( $out );
+
+ $out->addModuleStyles( 'skins.simple' );
+
+ /* Add some userprefs specific CSS styling */
+ $rules = array();
+ $underline = "";
+
+ if ( $this->getUser()->getOption( 'underline' ) < 2 ) {
+ $underline = "text-decoration: " . $this->getUser()->getOption( 'underline' ) ? 'underline !important' : 'none' . ";";
}
- if (!$wgUser->getOption('editsection')) {
- $s .= ".editsection { display: none; }\n";
+
+ /* Also inherits from resourceloader */
+ if( !$this->getUser()->getOption( 'highlightbroken' ) ) {
+ $rules[] = "a.new, a.stub { color: inherit; text-decoration: inherit;}";
+ $rules[] = "a.new:after { color: #CC2200; $underline;}";
+ $rules[] = "a.stub:after { $underline; }";
}
- return $s;
+ $style = implode( "\n", $rules );
+ $out->addInlineStyle( $style, 'flip' );
+
}
}
-
-?>