diff options
author | Pierre Schmitz <pierre@archlinux.de> | 2012-05-03 13:01:35 +0200 |
---|---|---|
committer | Pierre Schmitz <pierre@archlinux.de> | 2012-05-03 13:01:35 +0200 |
commit | d9022f63880ce039446fba8364f68e656b7bf4cb (patch) | |
tree | 16b40fbf17bf7c9ee6f4ead25b16dd192378050a /skins | |
parent | 27cf83d177256813e2e802241085fce5dd0f3fb9 (diff) |
Update to MediaWiki 1.19.0
Diffstat (limited to 'skins')
58 files changed, 1591 insertions, 2424 deletions
diff --git a/skins/ArchLinux.php b/skins/ArchLinux.php index 02598641..7a30b6e2 100644 --- a/skins/ArchLinux.php +++ b/skins/ArchLinux.php @@ -20,6 +20,9 @@ class SkinArchLinux extends SkinTemplate { var $skinname = 'archlinux', $stylename = 'archlinux', $template = 'ArchLinuxTemplate', $useHeadElement = true; + /** + * @param $out OutputPage + */ function setupSkinUserCss( OutputPage $out ) { global $wgHandheldStyle; parent::setupSkinUserCss( $out ); @@ -33,8 +36,6 @@ class SkinArchLinux extends SkinTemplate { } // TODO: Migrate all of these - $out->addStyle( 'archlinux/IE50Fixes.css', 'screen', 'lt IE 5.5000' ); - $out->addStyle( 'archlinux/IE55Fixes.css', 'screen', 'IE 5.5000' ); $out->addStyle( 'archlinux/IE60Fixes.css', 'screen', 'IE 6' ); $out->addStyle( 'archlinux/IE70Fixes.css', 'screen', 'IE 7' ); @@ -48,11 +49,6 @@ class SkinArchLinux extends SkinTemplate { class ArchLinuxTemplate extends BaseTemplate { /** - * @var Skin - */ - var $skin; - - /** * Template filter callback for ArchLinux skin. * Takes an associative array of data set from a SkinTemplate-based * class, and a wrapper for MediaWiki's localization database, and @@ -62,8 +58,6 @@ class ArchLinuxTemplate extends BaseTemplate { */ function execute() { global $wgArchNavBar, $wgArchHome, $wgArchNavBarSelected, $wgArchNavBarSelectedDefault; - $this->skin = $this->data['skin']; - // Suppress warnings to prevent notices about missing indexes in $this->data wfSuppressWarnings(); @@ -98,8 +92,8 @@ class ArchLinuxTemplate extends BaseTemplate { <a id="top"></a> <?php if($this->data['sitenotice']) { ?><div id="siteNotice"><?php $this->html('sitenotice') ?></div><?php } ?> - <h1 id="firstHeading" class="firstHeading"><?php $this->html('title') ?></h1> - <div id="bodyContent"> + <h1 id="firstHeading" class="firstHeading"><span dir="auto"><?php $this->html('title') ?></span></h1> + <div id="bodyContent" class="mw-body"> <div id="siteSub"><?php $this->msg('tagline') ?></div> <div id="contentSub"<?php $this->html('userlangattributes') ?>><?php $this->html('subtitle') ?></div> <?php if($this->data['undelete']) { ?> @@ -107,7 +101,7 @@ class ArchLinuxTemplate extends BaseTemplate { <?php } ?><?php if($this->data['newtalk'] ) { ?> <div class="usermessage"><?php $this->html('newtalk') ?></div> <?php } ?><?php if($this->data['showjumplinks']) { ?> - <div id="jump-to-nav"><?php $this->msg('jumpto') ?> <a href="#column-one"><?php $this->msg('jumptonavigation') ?></a>, <a href="#searchInput"><?php $this->msg('jumptosearch') ?></a></div> + <div id="jump-to-nav" class="mw-jump"><?php $this->msg('jumpto') ?> <a href="#column-one"><?php $this->msg('jumptonavigation') ?></a>, <a href="#searchInput"><?php $this->msg('jumptosearch') ?></a></div> <?php } ?> <!-- start content --> <?php $this->html('bodytext') ?> @@ -131,15 +125,13 @@ class ArchLinuxTemplate extends BaseTemplate { </div> </div> <div class="portlet" id="p-logo"> - <?php - $logoAttribs = array() + Linker::tooltipAndAccesskeyAttribs('p-logo'); - $logoAttribs['style'] = "background-image: url({$this->data['logopath']});"; - $logoAttribs['href'] = $this->data['nav_urls']['mainpage']['href']; - echo Html::element( 'a', $logoAttribs ); - ?> +<?php + echo Html::element( 'a', array( + 'href' => $this->data['nav_urls']['mainpage']['href'], + 'style' => "background-image: url({$this->data['logopath']});" ) + + Linker::tooltipAndAccesskeyAttribs('p-logo') ); ?> </div> - <script type="<?php $this->text('jsmimetype') ?>"> if (window.isMSIE55) fixalpha(); </script> <?php $this->renderPortals( $this->data['sidebar'] ); ?> @@ -159,7 +151,7 @@ class ArchLinuxTemplate extends BaseTemplate { foreach ( $validFooterIcons as $blockName => $footerIcons ) { ?> <div id="f-<?php echo htmlspecialchars($blockName); ?>ico"> <?php foreach ( $footerIcons as $icon ) { ?> - <?php echo $this->skin->makeFooterIcon( $icon ); ?> + <?php echo $this->getSkin()->makeFooterIcon( $icon ); ?> <?php } ?> @@ -245,25 +237,8 @@ echo $footerEnd; <div class="pBody"> <ul><?php foreach($this->data['content_actions'] as $key => $tab) { - $linkAttribs = array( 'href' => $tab['href'] ); - - if( isset( $tab["tooltiponly"] ) && $tab["tooltiponly"] ) { - $title = Linker::titleAttrib( "ca-$key" ); - if ( $title !== false ) { - $linkAttribs['title'] = $title; - } - } else { - $linkAttribs += Linker::tooltipAndAccesskeyAttribs( "ca-$key" ); - } - $linkHtml = Html::element( 'a', $linkAttribs, $tab['text'] ); - - /* Surround with a <li> */ - $liAttribs = array( 'id' => Sanitizer::escapeId( "ca-$key" ) ); - if( $tab['class'] ) { - $liAttribs['class'] = $tab['class']; - } - echo ' - ' . Html::rawElement( 'li', $liAttribs, $linkHtml ); + echo ' + ' . $this->makeListItem( $key, $tab ); } ?> </ul> diff --git a/skins/Chick.php b/skins/Chick.php index b7cef695..2362263c 100644 --- a/skins/Chick.php +++ b/skins/Chick.php @@ -21,14 +21,15 @@ class SkinChick extends SkinTemplate { var $skinname = 'chick', $stylename = 'chick', $template = 'MonoBookTemplate', $useHeadElement = true; + /** + * @param $out OutputPage + */ function setupSkinUserCss( OutputPage $out ){ parent::setupSkinUserCss( $out ); $out->addModuleStyles( 'skins.chick' ); // TODO: Migrate all of these to RL - $out->addStyle( 'chick/IE50Fixes.css', 'screen,handheld', 'lt IE 5.5000' ); - $out->addStyle( 'chick/IE55Fixes.css', 'screen,handheld', 'IE 5.5000' ); $out->addStyle( 'chick/IE60Fixes.css', 'screen,handheld', 'IE 6' ); } } diff --git a/skins/CologneBlue.php b/skins/CologneBlue.php index 58b00fc6..c5b3b11d 100644 --- a/skins/CologneBlue.php +++ b/skins/CologneBlue.php @@ -19,6 +19,9 @@ class SkinCologneBlue extends SkinLegacy { var $skinname = 'cologneblue', $stylename = 'cologneblue', $template = 'CologneBlueTemplate'; + /** + * @param $out OutputPage + */ function setupSkinUserCss( OutputPage $out ){ parent::setupSkinUserCss( $out ); $out->addModuleStyles( 'skins.cologneblue' ); @@ -55,6 +58,9 @@ class SkinCologneBlue extends SkinLegacy { class CologneBlueTemplate extends LegacyTemplate { + /** + * @return string + */ function doBeforeContent() { $mainPageObj = Title::newMainPage(); @@ -62,7 +68,7 @@ class CologneBlueTemplate extends LegacyTemplate { '<table width="100%" border="0" cellspacing="0" cellpadding="8"><tr>'; $s .= '<td class="top" nowrap="nowrap">'; - $s .= '<a href="' . $mainPageObj->escapeLocalURL() . '">'; + $s .= '<a href="' . htmlspecialchars( $mainPageObj->getLocalURL() ) . '">'; $s .= '<span id="sitetitle">' . wfMsg( 'sitetitle' ) . '</span></a>'; $s .= '</td><td class="top" id="top-syslinks" width="100%">'; @@ -75,10 +81,9 @@ class CologneBlueTemplate extends LegacyTemplate { $s .= '<font size="-1"><span id="langlinks">'; $s .= str_replace( '<br />', '', $this->otherLanguages() ); - $cat = '<div id="catlinks" class="catlinks">' . $this->getSkin()->getCategoryLinks() . '</div>'; - if( $cat ) { - $s .= "<br />$cat\n"; - } + + $s .= $this->getSkin()->getCategories(); + $s .= '<br />' . $this->pageTitleLinks(); $s .= '</span></font>'; @@ -95,9 +100,10 @@ class CologneBlueTemplate extends LegacyTemplate { return $s; } + /** + * @return string + */ function doAfterContent(){ - global $wgLang; - $s = "\n</div><br clear='all' />\n"; $s .= "\n<div id='footer'>"; @@ -106,7 +112,7 @@ class CologneBlueTemplate extends LegacyTemplate { $s .= '<td class="bottom">'; $s .= $this->bottomLinks(); - $s .= $wgLang->pipeList( array( + $s .= $this->getSkin()->getLanguage()->pipeList( array( "\n<br />" . Linker::link( Title::newMainPage(), null, @@ -129,8 +135,10 @@ class CologneBlueTemplate extends LegacyTemplate { return $s; } + /** + * @return string + */ function sysLinks() { - global $wgUser, $wgLang; $li = SpecialPage::getTitleFor( 'Userlogin' ); $lo = SpecialPage::getTitleFor( 'Userlogout' ); @@ -165,7 +173,7 @@ class CologneBlueTemplate extends LegacyTemplate { if( $this->extensionTabLinks() ) { $s[] = $this->extensionTabLinks(); } - if ( $wgUser->isLoggedIn() ) { + if ( $this->data['loggedin'] ) { $s[] = Linker::linkKnown( $lo, wfMsg( 'logout' ), @@ -181,18 +189,16 @@ class CologneBlueTemplate extends LegacyTemplate { ); } - return $wgLang->pipeList( $s ); + return $this->getSkin()->getLanguage()->pipeList( $s ); } /** * Compute the sidebar * @access private + * + * @return string */ function quickBar(){ - global $wgOut, $wgUser; - - $tns = $this->getSkin()->getTitle()->getNamespace(); - $s = "\n<div id='quickbar'>"; $sep = '<br />'; @@ -229,7 +235,9 @@ class CologneBlueTemplate extends LegacyTemplate { $barnumber++; } - if ( $wgOut->isArticle() ) { + $user = $this->getSkin()->getUser(); + + if ( $this->data['isarticle'] ) { $s .= $this->menuHead( 'qbedit' ); $s .= '<strong>' . $this->editThisPage() . '</strong>'; @@ -238,16 +246,16 @@ class CologneBlueTemplate extends LegacyTemplate { wfMsg( 'edithelp' ) ); - if( $wgUser->isLoggedIn() ) { + if( $this->data['loggedin'] ) { $s .= $sep . $this->moveThisPage(); } - if ( $wgUser->isAllowed( 'delete' ) ) { + if ( $user->isAllowed( 'delete' ) ) { $dtp = $this->deleteThisPage(); if ( $dtp != '' ) { $s .= $sep . $dtp; } } - if ( $wgUser->isAllowed( 'protect' ) ) { + if ( $user->isAllowed( 'protect' ) ) { $ptp = $this->protectThisPage(); if ( $ptp != '' ) { $s .= $sep . $ptp; @@ -259,7 +267,7 @@ class CologneBlueTemplate extends LegacyTemplate { $s .= $this->talkLink() . $sep . $this->commentLink() . $sep . $this->printableLink(); - if ( $wgUser->isLoggedIn() ) { + if ( $this->data['loggedin'] ) { $s .= $sep . $this->watchThisPage(); } @@ -270,8 +278,10 @@ class CologneBlueTemplate extends LegacyTemplate { . $sep . $this->whatLinksHere() . $sep . $this->watchPageLinksLink(); - if( $tns == NS_USER || $tns == NS_USER_TALK ) { - $id = User::idFromName( $this->getSkin()->getTitle()->getText() ); + $title = $this->getSkin()->getTitle(); + $tns = $title->getNamespace(); + if ( $tns == NS_USER || $tns == NS_USER_TALK ) { + $id = User::idFromName( $title->getText() ); if( $id != 0 ) { $s .= $sep . $this->userContribsLink(); if( $this->getSkin()->showEmailUser( $id ) ) { @@ -283,20 +293,20 @@ class CologneBlueTemplate extends LegacyTemplate { } $s .= $this->menuHead( 'qbmyoptions' ); - if ( $wgUser->isLoggedIn() ) { + if ( $this->data['loggedin'] ) { $tl = Linker::link( - $wgUser->getTalkPage(), + $user->getTalkPage(), wfMsg( 'mytalk' ), array(), array(), array( 'known', 'noclasses' ) ); - if ( $wgUser->getNewtalk() ) { + if ( $user->getNewtalk() ) { $tl .= ' *'; } $s .= Linker::link( - $wgUser->getUserPage(), + $user->getUserPage(), wfMsg( 'mypage' ), array(), array(), @@ -304,7 +314,7 @@ class CologneBlueTemplate extends LegacyTemplate { ) . $sep . $tl . $sep . Linker::specialLink( 'Watchlist' ) . $sep . Linker::link( - SpecialPage::getSafeTitleFor( 'Contributions', $wgUser->getName() ), + SpecialPage::getSafeTitleFor( 'Contributions', $user->getName() ), wfMsg( 'mycontris' ), array(), array(), @@ -319,7 +329,7 @@ class CologneBlueTemplate extends LegacyTemplate { . Linker::specialLink( 'Newpages' ) . $sep . Linker::specialLink( 'Listfiles' ) . $sep . Linker::specialLink( 'Statistics' ); - if( UploadBase::isEnabled() && UploadBase::isAllowed( $wgUser ) === true ) { + if( UploadBase::isEnabled() && UploadBase::isAllowed( $user ) === true ) { $s .= $sep . $this->getUploadLink(); } @@ -342,15 +352,23 @@ class CologneBlueTemplate extends LegacyTemplate { return $s; } + /** + * @param $key string + * @return string + */ function menuHead( $key ) { $s = "\n<h6>" . wfMsg( $key ) . "</h6>"; return $s; } + /** + * @param $label string + * @return string + */ function searchForm( $label = '' ) { - global $wgRequest, $wgUseTwoButtonsSearchForm; + global $wgUseTwoButtonsSearchForm; - $search = $wgRequest->getText( 'search' ); + $search = $this->getSkin()->getRequest()->getText( 'search' ); $action = $this->data['searchaction']; $s = "<form id=\"searchform{$this->searchboxes}\" method=\"get\" class=\"inline\" action=\"$action\">"; if( $label != '' ) { diff --git a/skins/Modern.php b/skins/Modern.php index c4070b5d..ebd574f4 100644 --- a/skins/Modern.php +++ b/skins/Modern.php @@ -21,6 +21,9 @@ class SkinModern extends SkinTemplate { var $skinname = 'modern', $stylename = 'modern', $template = 'ModernTemplate', $useHeadElement = true; + /** + * @param $out OutputPage + */ function setupSkinUserCss( OutputPage $out ){ parent::setupSkinUserCss( $out ); $out->addModuleStyles ('skins.modern'); @@ -34,10 +37,6 @@ class SkinModern extends SkinTemplate { class ModernTemplate extends MonoBookTemplate { /** - * @var Skin - */ - var $skin; - /** * Template filter callback for Modern skin. * Takes an associative array of data set from a SkinTemplate-based * class, and a wrapper for MediaWiki's localization database, and @@ -46,8 +45,6 @@ class ModernTemplate extends MonoBookTemplate { * @access private */ function execute() { - $this->skin = $skin = $this->data['skin']; - // Suppress warnings to prevent notices about missing indexes in $this->data wfSuppressWarnings(); @@ -55,7 +52,7 @@ class ModernTemplate extends MonoBookTemplate { ?> <!-- heading --> - <div id="mw_header"><h1 id="firstHeading"><?php $this->html('title') ?></h1></div> + <div id="mw_header"><h1 id="firstHeading"><span dir="auto"><?php $this->html('title') ?></span></h1></div> <div id="mw_main"> <div id="mw_contentwrapper"> @@ -134,7 +131,7 @@ class ModernTemplate extends MonoBookTemplate { <div id="mw_<?php echo htmlspecialchars($blockName); ?>"> <?php foreach ( $footerIcons as $icon ) { ?> - <?php echo $this->skin->makeFooterIcon( $icon, 'withoutImage' ); ?> + <?php echo $this->getSkin()->makeFooterIcon( $icon, 'withoutImage' ); ?> <?php } ?> diff --git a/skins/MonoBook.php b/skins/MonoBook.php index 0cf72e93..f1fe5090 100644 --- a/skins/MonoBook.php +++ b/skins/MonoBook.php @@ -23,6 +23,9 @@ class SkinMonoBook extends SkinTemplate { var $skinname = 'monobook', $stylename = 'monobook', $template = 'MonoBookTemplate', $useHeadElement = true; + /** + * @param $out OutputPage + */ function setupSkinUserCss( OutputPage $out ) { global $wgHandheldStyle; parent::setupSkinUserCss( $out ); @@ -36,8 +39,6 @@ class SkinMonoBook extends SkinTemplate { } // TODO: Migrate all of these - $out->addStyle( 'monobook/IE50Fixes.css', 'screen', 'lt IE 5.5000' ); - $out->addStyle( 'monobook/IE55Fixes.css', 'screen', 'IE 5.5000' ); $out->addStyle( 'monobook/IE60Fixes.css', 'screen', 'IE 6' ); $out->addStyle( 'monobook/IE70Fixes.css', 'screen', 'IE 7' ); @@ -51,11 +52,6 @@ class SkinMonoBook extends SkinTemplate { class MonoBookTemplate extends BaseTemplate { /** - * @var Skin - */ - var $skin; - - /** * Template filter callback for MonoBook skin. * Takes an associative array of data set from a SkinTemplate-based * class, and a wrapper for MediaWiki's localization database, and @@ -64,8 +60,6 @@ class MonoBookTemplate extends BaseTemplate { * @access private */ function execute() { - $this->skin = $this->data['skin']; - // Suppress warnings to prevent notices about missing indexes in $this->data wfSuppressWarnings(); @@ -75,8 +69,8 @@ class MonoBookTemplate extends BaseTemplate { <a id="top"></a> <?php if($this->data['sitenotice']) { ?><div id="siteNotice"><?php $this->html('sitenotice') ?></div><?php } ?> - <h1 id="firstHeading" class="firstHeading"><?php $this->html('title') ?></h1> - <div id="bodyContent"> + <h1 id="firstHeading" class="firstHeading"><span dir="auto"><?php $this->html('title') ?></span></h1> + <div id="bodyContent" class="mw-body"> <div id="siteSub"><?php $this->msg('tagline') ?></div> <div id="contentSub"<?php $this->html('userlangattributes') ?>><?php $this->html('subtitle') ?></div> <?php if($this->data['undelete']) { ?> @@ -84,7 +78,7 @@ class MonoBookTemplate extends BaseTemplate { <?php } ?><?php if($this->data['newtalk'] ) { ?> <div class="usermessage"><?php $this->html('newtalk') ?></div> <?php } ?><?php if($this->data['showjumplinks']) { ?> - <div id="jump-to-nav"><?php $this->msg('jumpto') ?> <a href="#column-one"><?php $this->msg('jumptonavigation') ?></a>, <a href="#searchInput"><?php $this->msg('jumptosearch') ?></a></div> + <div id="jump-to-nav" class="mw-jump"><?php $this->msg('jumpto') ?> <a href="#column-one"><?php $this->msg('jumptonavigation') ?></a>, <a href="#searchInput"><?php $this->msg('jumptosearch') ?></a></div> <?php } ?> <!-- start content --> <?php $this->html('bodytext') ?> @@ -108,15 +102,13 @@ class MonoBookTemplate extends BaseTemplate { </div> </div> <div class="portlet" id="p-logo"> - <?php - $logoAttribs = array() + Linker::tooltipAndAccesskeyAttribs('p-logo'); - $logoAttribs['style'] = "background-image: url({$this->data['logopath']});"; - $logoAttribs['href'] = $this->data['nav_urls']['mainpage']['href']; - echo Html::element( 'a', $logoAttribs ); - ?> +<?php + echo Html::element( 'a', array( + 'href' => $this->data['nav_urls']['mainpage']['href'], + 'style' => "background-image: url({$this->data['logopath']});" ) + + Linker::tooltipAndAccesskeyAttribs('p-logo') ); ?> </div> - <script type="<?php $this->text('jsmimetype') ?>"> if (window.isMSIE55) fixalpha(); </script> <?php $this->renderPortals( $this->data['sidebar'] ); ?> @@ -136,7 +128,7 @@ class MonoBookTemplate extends BaseTemplate { foreach ( $validFooterIcons as $blockName => $footerIcons ) { ?> <div id="f-<?php echo htmlspecialchars($blockName); ?>ico"> <?php foreach ( $footerIcons as $icon ) { ?> - <?php echo $this->skin->makeFooterIcon( $icon ); ?> + <?php echo $this->getSkin()->makeFooterIcon( $icon ); ?> <?php } ?> @@ -222,25 +214,8 @@ echo $footerEnd; <div class="pBody"> <ul><?php foreach($this->data['content_actions'] as $key => $tab) { - $linkAttribs = array( 'href' => $tab['href'] ); - - if( isset( $tab["tooltiponly"] ) && $tab["tooltiponly"] ) { - $title = Linker::titleAttrib( "ca-$key" ); - if ( $title !== false ) { - $linkAttribs['title'] = $title; - } - } else { - $linkAttribs += Linker::tooltipAndAccesskeyAttribs( "ca-$key" ); - } - $linkHtml = Html::element( 'a', $linkAttribs, $tab['text'] ); - - /* Surround with a <li> */ - $liAttribs = array( 'id' => Sanitizer::escapeId( "ca-$key" ) ); - if( $tab['class'] ) { - $liAttribs['class'] = $tab['class']; - } - echo ' - ' . Html::rawElement( 'li', $liAttribs, $linkHtml ); + echo ' + ' . $this->makeListItem( $key, $tab ); } ?> </ul> diff --git a/skins/Nostalgia.php b/skins/Nostalgia.php index a4fd985d..21d3578d 100644 --- a/skins/Nostalgia.php +++ b/skins/Nostalgia.php @@ -18,6 +18,9 @@ class SkinNostalgia extends SkinLegacy { var $skinname = 'nostalgia', $stylename = 'nostalgia', $template = 'NostalgiaTemplate'; + /** + * @param $out OutputPage + */ function setupSkinUserCss( OutputPage $out ){ parent::setupSkinUserCss( $out ); $out->addModuleStyles( 'skins.nostalgia' ); @@ -27,6 +30,9 @@ class SkinNostalgia extends SkinLegacy { class NostalgiaTemplate extends LegacyTemplate { + /** + * @return string + */ function doBeforeContent() { $s = "\n<div id='content'>\n<div id='top'>\n"; $s .= '<div id="logo">' . $this->getSkin()->logoText( 'right' ) . '</div>'; @@ -48,10 +54,7 @@ class NostalgiaTemplate extends LegacyTemplate { $s .= '<br />' . $ol; } - $cat = '<div id="catlinks" class="catlinks">' . $this->getSkin()->getCategoryLinks() . '</div>'; - if( $cat ) { - $s .= '<br />' . $cat; - } + $s .= $this->getSkin()->getCategories(); $s .= "<br clear='all' /></div><hr />\n</div>\n"; $s .= "\n<div id='article'>"; @@ -59,14 +62,16 @@ class NostalgiaTemplate extends LegacyTemplate { return $s; } + /** + * @return string + */ function topLinks() { - global $wgOut, $wgUser; $sep = " |\n"; $s = $this->getSkin()->mainPageLink() . $sep . Linker::specialLink( 'Recentchanges' ); - if ( $wgOut->isArticle() ) { + if ( $this->data['isarticle'] ) { $s .= $sep . '<strong>' . $this->editThisPage() . '</strong>' . $sep . $this->talkLink() . $sep . $this->historyLink(); } @@ -74,30 +79,31 @@ class NostalgiaTemplate extends LegacyTemplate { /* show links to different language variants */ $s .= $this->variantLinks(); $s .= $this->extensionTabLinks(); - if ( $wgUser->isAnon() ) { + if ( !$this->data['loggedin'] ) { $s .= $sep . Linker::specialLink( 'Userlogin' ); } else { /* show user page and user talk links */ - $s .= $sep . Linker::link( $wgUser->getUserPage(), wfMsgHtml( 'mypage' ) ); - $s .= $sep . Linker::link( $wgUser->getTalkPage(), wfMsgHtml( 'mytalk' ) ); - if ( $wgUser->getNewtalk() ) { + $user = $this->getSkin()->getUser(); + $s .= $sep . Linker::link( $user->getUserPage(), wfMsgHtml( 'mypage' ) ); + $s .= $sep . Linker::link( $user->getTalkPage(), wfMsgHtml( 'mytalk' ) ); + if ( $user->getNewtalk() ) { $s .= ' *'; } /* show watchlist link */ $s .= $sep . Linker::specialLink( 'Watchlist' ); /* show my contributions link */ $s .= $sep . Linker::link( - SpecialPage::getSafeTitleFor( 'Contributions', $wgUser->getName() ), + SpecialPage::getSafeTitleFor( 'Contributions', $this->data['username'] ), wfMsgHtml( 'mycontris' ) ); /* show my preferences link */ $s .= $sep . Linker::specialLink( 'Preferences' ); /* show upload file link */ - if( UploadBase::isEnabled() && UploadBase::isAllowed( $wgUser ) === true ) { + if( UploadBase::isEnabled() && UploadBase::isAllowed( $user ) === true ) { $s .= $sep . $this->getUploadLink(); } /* show log out link */ - $s .= $sep . $this->getSkin()->specialLink( 'Userlogout' ); + $s .= $sep . Linker::specialLink( 'Userlogout' ); } $s .= $sep . $this->specialPagesList(); @@ -105,6 +111,9 @@ class NostalgiaTemplate extends LegacyTemplate { return $s; } + /** + * @return string + */ function doAfterContent() { $s = "\n</div><br clear='all' />\n"; diff --git a/skins/Simple.php b/skins/Simple.php index 61b6e786..54be9f7d 100644 --- a/skins/Simple.php +++ b/skins/Simple.php @@ -21,22 +21,24 @@ class SkinSimple extends SkinTemplate { var $skinname = 'simple', $stylename = 'simple', $template = 'MonoBookTemplate', $useHeadElement = true; + /** + * @param $out OutputPage + */ function setupSkinUserCss( OutputPage $out ) { parent::setupSkinUserCss( $out ); $out->addModuleStyles( 'skins.simple' ); /* Add some userprefs specific CSS styling */ - global $wgUser; $rules = array(); $underline = ""; - if ( $wgUser->getOption( 'underline' ) < 2 ) { - $underline = "text-decoration: " . $wgUser->getOption( 'underline' ) ? 'underline !important' : 'none' . ";"; + if ( $this->getUser()->getOption( 'underline' ) < 2 ) { + $underline = "text-decoration: " . $this->getUser()->getOption( 'underline' ) ? 'underline !important' : 'none' . ";"; } /* Also inherits from resourceloader */ - if( !$wgUser->getOption( 'highlightbroken' ) ) { + 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; }"; diff --git a/skins/Standard.php b/skins/Standard.php index 8ae4b3b1..bd0c41a5 100644 --- a/skins/Standard.php +++ b/skins/Standard.php @@ -18,9 +18,12 @@ class SkinStandard extends SkinLegacy { var $skinname = 'standard', $stylename = 'standard', $template = 'StandardTemplate'; + /** + * @param $out OutputPage + */ function setupSkinUserCss( OutputPage $out ){ parent::setupSkinUserCss( $out ); - $out->AddModuleStyles( 'skins.standard' ); + $out->addModuleStyles( 'skins.standard' ); $qb = $this->qbSetting(); $rules = array(); @@ -37,12 +40,12 @@ class SkinStandard extends SkinLegacy { $rules[] = "/* @noflip */#quickbar { position: fixed; padding: 4px; }"; } } elseif ( 4 == $qb ) { - $rules[] = "/* @noflip */#quickbar { position: fixed; right: 0px; top: 0px; padding: 4px;}"; + $rules[] = "/* @noflip */#quickbar { position: fixed; right: 0; top: 0; padding: 4px; }"; $rules[] = "/* @noflip */#quickbar { border-right: 1px solid gray; }"; $rules[] = "/* @noflip */#article, #mw-data-after-content { margin-right: 152px; margin-left: 4px; }"; $rules[] = "/* @noflip */#topbar, #footer { margin-right: 152px; }"; } - $style = implode( "\n", $rules ); + $style = implode( "\n", $rules ); $out->addInlineStyle( $style, 'flip' ); } @@ -50,8 +53,10 @@ class SkinStandard extends SkinLegacy { class StandardTemplate extends LegacyTemplate { + /** + * @return string + */ function doAfterContent() { - global $wgContLang, $wgLang; wfProfileIn( __METHOD__ ); wfProfileIn( __METHOD__ . '-1' ); @@ -61,11 +66,11 @@ class StandardTemplate extends LegacyTemplate { wfProfileOut( __METHOD__ . '-1' ); wfProfileIn( __METHOD__ . '-2' ); - $l = $this->getSkin()->getLang()->alignStart(); + $l = $this->getSkin()->getLanguage()->alignStart(); $s .= "<td class='bottom' align='$l' valign='top'>"; $s .= $this->bottomLinks(); - $s .= "\n<br />" . $wgLang->pipeList( array( + $s .= "\n<br />" . $this->getSkin()->getLanguage()->pipeList( array( $this->getSkin()->mainPageLink(), $this->getSkin()->aboutLink(), Linker::specialLink( 'Recentchanges' ), @@ -85,14 +90,18 @@ class StandardTemplate extends LegacyTemplate { return $s; } + /** + * @return string + */ function quickBar() { - global $wgOut, $wgUser, $wgRequest, $wgContLang; + global $wgContLang; wfProfileIn( __METHOD__ ); - $action = $wgRequest->getText( 'action' ); - $wpPreview = $wgRequest->getBool( 'wpPreview' ); - $tns = $this->getSkin()->getTitle()->getNamespace(); + $action = $this->getSkin()->getRequest()->getText( 'action' ); + $wpPreview = $this->getSkin()->getRequest()->getBool( 'wpPreview' ); + $title = $this->getSkin()->getTitle(); + $tns = $title->getNamespace(); $s = "\n<div id='quickbar'>"; $s .= "\n" . $this->getSkin()->logoText() . "\n<hr class='sep' />"; @@ -120,13 +129,13 @@ class StandardTemplate extends LegacyTemplate { } if ( $barnumber == 1 ) { // only show watchlist link if logged in - if( $wgUser->isLoggedIn() ) { + if( $this->data['loggedin'] ) { $s.= Linker::specialLink( 'Watchlist' ) ; $s .= $sep . Linker::linkKnown( SpecialPage::getTitleFor( 'Contributions' ), wfMsg( 'mycontris' ), array(), - array( 'target' => $wgUser->getName() ) + array( 'target' => $this->data['username'] ) ); } } @@ -134,9 +143,9 @@ class StandardTemplate extends LegacyTemplate { } $s .= "\n<hr class='sep' />"; - $articleExists = $this->getSkin()->getTitle()->getArticleId(); - if ( $wgOut->isArticle() || $action == 'edit' || $action == 'history' || $wpPreview ) { - if( $wgOut->isArticle() ) { + $articleExists = $title->getArticleId(); + if ( $this->data['isarticle'] || $action == 'edit' || $action == 'history' || $wpPreview ) { + if( $this->data['isarticle'] ) { $s .= '<strong>' . $this->editThisPage() . '</strong>'; } else { # backlink to the article in edit or history mode if( $articleExists ){ # no backlink if no article @@ -179,14 +188,14 @@ class StandardTemplate extends LegacyTemplate { $text = wfMsg( 'articlepage' ); } - $link = $this->getSkin()->getTitle()->getText(); + $link = $title->getText(); $nstext = $wgContLang->getNsText( $tns ); if( $nstext ) { # add namespace if necessary $link = $nstext . ':' . $link; } $s .= Linker::link( Title::newFromText( $link ), $text ); - } elseif( $this->getSkin()->getTitle()->getNamespace() != NS_SPECIAL ) { + } elseif( $title->getNamespace() != NS_SPECIAL ) { # we just throw in a "New page" text to tell the user that he's in edit mode, # and to avoid messing with the separator that is prepended to the next item $s .= '<strong>' . wfMsg( 'newpage' ) . '</strong>'; @@ -194,32 +203,31 @@ class StandardTemplate extends LegacyTemplate { } # "Post a comment" link - if( ( $this->getSkin()->getTitle()->isTalkPage() || $wgOut->showNewSectionLink() ) && $action != 'edit' && !$wpPreview ) - $s .= '<br />' . $this->getSkin()->link( - $this->getSkin()->getTitle(), + if( ( $title->isTalkPage() || $this->getSkin()->getOutput()->showNewSectionLink() ) && $action != 'edit' && !$wpPreview ) + $s .= '<br />' . Linker::link( + $title, wfMsg( 'postcomment' ), array(), array( 'action' => 'edit', 'section' => 'new' - ), - array( 'known', 'noclasses' ) + ) ); - /* - watching could cause problems in edit mode: - if user edits article, then loads "watch this article" in background and then saves - article with "Watch this article" checkbox disabled, the article is transparently - unwatched. Therefore we do not show the "Watch this page" link in edit mode - */ - if ( $wgUser->isLoggedIn() && $articleExists ) { + /** + * Watching could cause problems in edit mode: + * if user edits article, then loads "watch this article" in background and then saves + * article with "Watch this article" checkbox disabled, the article is transparently + * unwatched. Therefore we do not show the "Watch this page" link in edit mode. + */ + if ( $this->data['loggedin'] && $articleExists ) { if( $action != 'edit' && $action != 'submit' ) { $s .= $sep . $this->watchThisPage(); } - if ( $this->getSkin()->getTitle()->userCan( 'edit' ) ) + if ( $title->userCan( 'edit' ) ) $s .= $sep . $this->moveThisPage(); } - if ( $wgUser->isAllowed( 'delete' ) && $articleExists ) { + if ( $this->getSkin()->getUser()->isAllowed( 'delete' ) && $articleExists ) { $s .= $sep . $this->deleteThisPage() . $sep . $this->protectThisPage(); } @@ -229,17 +237,17 @@ class StandardTemplate extends LegacyTemplate { } $s .= $sep . $this->whatLinksHere(); - if( $wgOut->isArticleRelated() ) { + if( $this->getSkin()->getOutput()->isArticleRelated() ) { $s .= $sep . $this->watchPageLinksLink(); } if ( - NS_USER == $this->getSkin()->getTitle()->getNamespace() || - $this->getSkin()->getTitle()->getNamespace() == NS_USER_TALK + NS_USER == $title->getNamespace() || + $title->getNamespace() == NS_USER_TALK ) { - $id = User::idFromName( $this->getSkin()->getTitle()->getText() ); - $ip = User::isIP( $this->getSkin()->getTitle()->getText() ); + $id = User::idFromName( $title->getText() ); + $ip = User::isIP( $title->getText() ); if( $id || $ip ){ $s .= $sep . $this->userContribsLink(); @@ -251,7 +259,7 @@ class StandardTemplate extends LegacyTemplate { $s .= "\n<br /><hr class='sep' />"; } - if( UploadBase::isEnabled() && UploadBase::isAllowed( $wgUser ) === true ) { + if( UploadBase::isEnabled() && UploadBase::isAllowed( $this->getSkin()->getUser() ) === true ) { $s .= $this->getUploadLink() . $sep; } @@ -260,7 +268,7 @@ class StandardTemplate extends LegacyTemplate { global $wgSiteSupportPage; if( $wgSiteSupportPage ) { $s .= "\n<br /><a href=\"" . htmlspecialchars( $wgSiteSupportPage ) . - '" class="internal">' . wfMsg( 'sitesupport' ) . '</a>'; + '" class="internal">' . wfMsg( 'sitesupport' ) . '</a>'; } $s .= "\n<br /></div>\n"; diff --git a/skins/Vector.php b/skins/Vector.php index 97161611..4b6433d6 100644 --- a/skins/Vector.php +++ b/skins/Vector.php @@ -26,14 +26,14 @@ class SkinVector extends SkinTemplate { * @param $out OutputPage object to initialize */ public function initPage( OutputPage $out ) { - global $wgLocalStylePath, $wgRequest; + global $wgLocalStylePath; parent::initPage( $out ); // Append CSS which includes IE only behavior fixes for hover support - // this is better than including this in a CSS fille since it doesn't // wait for the CSS file to load before fetching the HTC file. - $min = $wgRequest->getFuzzyBool( 'debug' ) ? '' : '.min'; + $min = $this->getRequest()->getFuzzyBool( 'debug' ) ? '' : '.min'; $out->addHeadItem( 'csshover', '<!--[if lt IE 7]><style type="text/css">body{behavior:url("' . htmlspecialchars( $wgLocalStylePath ) . @@ -60,29 +60,19 @@ class SkinVector extends SkinTemplate { */ class VectorTemplate extends BaseTemplate { - /* Members */ - - /** - * @var Skin Cached skin object - */ - var $skin; - /* Functions */ /** * Outputs the entire contents of the (X)HTML page */ public function execute() { - global $wgLang, $wgVectorUseIconWatch; - - $this->skin = $this->data['skin']; + global $wgVectorUseIconWatch; // Build additional attributes for navigation urls - //$nav = $this->skin->buildNavigationUrls(); $nav = $this->data['content_navigation']; if ( $wgVectorUseIconWatch ) { - $mode = $this->skin->getTitle()->userIsWatching() ? 'unwatch' : 'watch'; + $mode = $this->getSkin()->getTitle()->userIsWatching() ? 'unwatch' : 'watch'; if ( isset( $nav['actions'][$mode] ) ) { $nav['views'][$mode] = $nav['actions'][$mode]; $nav['views'][$mode]['class'] = rtrim( 'icon ' . $nav['views'][$mode]['class'], ' ' ); @@ -121,7 +111,7 @@ class VectorTemplate extends BaseTemplate { $this->data['variant_urls'] = $nav['variants']; // Reverse horizontally rendered navigation elements - if ( $wgLang->isRTL() ) { + if ( $this->data['rtl'] ) { $this->data['view_urls'] = array_reverse( $this->data['view_urls'] ); $this->data['namespace_urls'] = @@ -135,7 +125,7 @@ class VectorTemplate extends BaseTemplate { <div id="mw-page-base" class="noprint"></div> <div id="mw-head-base" class="noprint"></div> <!-- content --> - <div id="content"> + <div id="content" class="mw-body"> <a id="top"></a> <div id="mw-js-message" style="display:none;"<?php $this->html( 'userlangattributes' ) ?>></div> <?php if ( $this->data['sitenotice'] ): ?> @@ -144,7 +134,9 @@ class VectorTemplate extends BaseTemplate { <!-- /sitenotice --> <?php endif; ?> <!-- firstHeading --> - <h1 id="firstHeading" class="firstHeading"><?php $this->html( 'title' ) ?></h1> + <h1 id="firstHeading" class="firstHeading"> + <span dir="auto"><?php $this->html( 'title' ) ?></span> + </h1> <!-- /firstHeading --> <!-- bodyContent --> <div id="bodyContent"> @@ -168,7 +160,7 @@ class VectorTemplate extends BaseTemplate { <?php endif; ?> <?php if ( $this->data['showjumplinks'] ): ?> <!-- jumpto --> - <div id="jump-to-nav"> + <div id="jump-to-nav" class="mw-jump"> <?php $this->msg( 'jumpto' ) ?> <a href="#mw-head"><?php $this->msg( 'jumptonavigation' ) ?></a>, <a href="#p-search"><?php $this->msg( 'jumptosearch' ) ?></a> </div> @@ -236,7 +228,7 @@ class VectorTemplate extends BaseTemplate { <?php foreach ( $footericons as $blockName => $footerIcons ): ?> <li id="footer-<?php echo htmlspecialchars( $blockName ); ?>ico"> <?php foreach ( $footerIcons as $icon ): ?> - <?php echo $this->skin->makeFooterIcon( $icon ); ?> + <?php echo $this->getSkin()->makeFooterIcon( $icon ); ?> <?php endforeach; ?> </li> @@ -246,9 +238,6 @@ class VectorTemplate extends BaseTemplate { <div style="clear:both"></div> </div> <!-- /footer --> - <!-- fixalpha --> - <script type="<?php $this->text( 'jsmimetype' ) ?>"> if ( window.isMSIE55 ) fixalpha(); </script> - <!-- /fixalpha --> <?php $this->printTrail(); ?> </body> @@ -298,7 +287,7 @@ class VectorTemplate extends BaseTemplate { } private function renderPortal( $name, $content, $msg = null, $hook = null ) { - if ( !isset( $msg ) ) { + if ( $msg === null ) { $msg = $name; } ?> @@ -314,7 +303,7 @@ class VectorTemplate extends BaseTemplate { <?php endforeach; - if ( isset( $hook ) ) { + if ( $hook !== null ) { wfRunHooks( $hook, array( &$this, true ) ); } ?> @@ -332,16 +321,18 @@ class VectorTemplate extends BaseTemplate { /** * Render one or more navigations elements by name, automatically reveresed * when UI is in RTL mode + * + * @param $elements array */ private function renderNavigation( $elements ) { - global $wgVectorUseSimpleSearch, $wgVectorShowVariantName, $wgUser, $wgLang; + global $wgVectorUseSimpleSearch; // If only one element was given, wrap it in an array, allowing more // flexible arguments if ( !is_array( $elements ) ) { $elements = array( $elements ); // If there's a series of elements, reverse them when in RTL mode - } elseif ( $wgLang->isRTL() ) { + } elseif ( $this->data['rtl'] ) { $elements = array_reverse( $elements ); } // Render elements @@ -363,15 +354,13 @@ class VectorTemplate extends BaseTemplate { case 'VARIANTS': ?> <div id="p-variants" class="vectorMenu<?php if ( count( $this->data['variant_urls'] ) == 0 ) echo ' emptyPortlet'; ?>"> - <?php if ( $wgVectorShowVariantName ): ?> - <h4> - <?php foreach ( $this->data['variant_urls'] as $link ): ?> - <?php if ( stripos( $link['attributes'], 'selected' ) !== false ): ?> - <?php echo htmlspecialchars( $link['text'] ) ?> - <?php endif; ?> - <?php endforeach; ?> - </h4> - <?php endif; ?> + <h4> + <?php foreach ( $this->data['variant_urls'] as $link ): ?> + <?php if ( stripos( $link['attributes'], 'selected' ) !== false ): ?> + <?php echo htmlspecialchars( $link['text'] ) ?> + <?php endif; ?> + <?php endforeach; ?> + </h4> <h5><span><?php $this->msg( 'variants' ) ?></span><a href="#"></a></h5> <div class="menu"> <ul<?php $this->html( 'userlangattributes' ) ?>> @@ -432,22 +421,23 @@ class VectorTemplate extends BaseTemplate { <div id="p-search"> <h5<?php $this->html( 'userlangattributes' ) ?>><label for="searchInput"><?php $this->msg( 'search' ) ?></label></h5> <form action="<?php $this->text( 'wgScript' ) ?>" id="searchform"> - <input type='hidden' name="title" value="<?php $this->text( 'searchtitle' ) ?>"/> - <?php if ( $wgVectorUseSimpleSearch && $wgUser->getOption( 'vector-simplesearch' ) ): ?> + <?php if ( $wgVectorUseSimpleSearch && $this->getSkin()->getUser()->getOption( 'vector-simplesearch' ) ): ?> <div id="simpleSearch"> <?php if ( $this->data['rtl'] ): ?> - <?php echo $this->makeSearchButton( 'image', array( 'id' => 'searchButton', 'src' => $this->skin->getSkinStylePath( 'images/search-rtl.png' ) ) ); ?> + <?php echo $this->makeSearchButton( 'image', array( 'id' => 'searchButton', 'src' => $this->getSkin()->getSkinStylePath( 'images/search-rtl.png' ) ) ); ?> <?php endif; ?> <?php echo $this->makeSearchInput( array( 'id' => 'searchInput', 'type' => 'text' ) ); ?> <?php if ( !$this->data['rtl'] ): ?> - <?php echo $this->makeSearchButton( 'image', array( 'id' => 'searchButton', 'src' => $this->skin->getSkinStylePath( 'images/search-ltr.png' ) ) ); ?> + <?php echo $this->makeSearchButton( 'image', array( 'id' => 'searchButton', 'src' => $this->getSkin()->getSkinStylePath( 'images/search-ltr.png' ) ) ); ?> <?php endif; ?> - </div> <?php else: ?> - <?php echo $this->makeSearchInput( array( 'id' => 'searchInput' ) ); ?> - <?php echo $this->makeSearchButton( 'go', array( 'id' => 'searchGoButton', 'class' => 'searchButton' ) ); ?> - <?php echo $this->makeSearchButton( 'fulltext', array( 'id' => 'mw-searchButton', 'class' => 'searchButton' ) ); ?> + <div> + <?php echo $this->makeSearchInput( array( 'id' => 'searchInput' ) ); ?> + <?php echo $this->makeSearchButton( 'go', array( 'id' => 'searchGoButton', 'class' => 'searchButton' ) ); ?> + <?php echo $this->makeSearchButton( 'fulltext', array( 'id' => 'mw-searchButton', 'class' => 'searchButton' ) ); ?> <?php endif; ?> + <input type='hidden' name="title" value="<?php $this->text( 'searchtitle' ) ?>"/> + </div> </form> </div> <?php diff --git a/skins/archlinux/IE50Fixes.css b/skins/archlinux/IE50Fixes.css deleted file mode 100644 index a054a91f..00000000 --- a/skins/archlinux/IE50Fixes.css +++ /dev/null @@ -1,67 +0,0 @@ -/* -** IE5.0 Fix Stylesheet -*/ - -div#column-content { - margin: 0 !important; - float: none; -} -div#column-content #content { - margin-top: 3em; - height: 1%; -} -div#column-one { - position: absolute; - overflow: visible; - top: 0; - left: 0; - z-index: 3; -} -div#footer { - margin: 0 0 0 13.6em; -} - -/* IE 5 & 5.5 interpret keyword sizes one off */ -body { font-size: xx-small; } -/* -** the edit tabs -*/ -#p-cactions li { - float: left; - padding-top: 0; - padding-bottom: 0 !important; - height: 0.9em; -} -#p-cactions li a { - display: block; - padding-bottom: 0.045em; -} -#p-cactions li.selected a { - padding-bottom: 0.17em; -} -#p-cactions li a:hover { - padding-bottom: 0.17em; -} -/* 5.0 doesn't like the background icon for external links and user */ -.link-external, -.external { - background: none; - padding: 0; -} -#p-personal ul { float: right } -#p-personal li { float: left } -li#pt-userpage, -li#pt-anonuserpage, -li#pt-login, -li#pt-logout { - background: none; - padding-left: none; -} -.visualClear { - width: 100%; - height: 0px; - padding:0; - margin: 0; -} -#firstHeading { margin-bottom: .3em; } -/*div{ border:1px solid Red !important;}*/ diff --git a/skins/archlinux/IE55Fixes.css b/skins/archlinux/IE55Fixes.css deleted file mode 100644 index f3c2cde7..00000000 --- a/skins/archlinux/IE55Fixes.css +++ /dev/null @@ -1,85 +0,0 @@ -/* IE5.5/win- only fixes */ - -div#column-content { - float: none; - margin-left: 0; - height: 1%; -} -div#column-content #content { - position: relative; - z-index: 5; - margin-left: 12.2em; - margin-top: 3em; - height: 1%; -} -div#column-one { - position: absolute; - top: 0; - left: 0; - z-index: 4; - width: 100%; -} -div#footer { - margin-left: 13.6em; - border-left: 1px solid #fabd23; -} - -/*#bodyContent div, -#bodyContent pre { overflow: auto; }*/ - -#p-personal { padding-bottom: .1em; } - -body { font-size: xx-small; } - -#p-cactions { - width: 76% !important; - z-index: 3 !important; - float: none; -} -#p-cactions li { - padding-bottom: 0 !important; - border: none; - background-color: transparent; - cursor: default; - float: none !important; -} -#p-cactions li a { - display: inline-block !important; - vertical-align: top; - padding-bottom: 0; - border: solid #aaa; - border-width: 1px 1px 0; -} -#p-cactions li.selected a { - border-color: #fabd23; - padding-bottom: 0.17em; -} -#p-cactions li a:hover { - padding-bottom: 0.17em; -} -#p-navigation a { - display: inline-block; - width: 100%; -} -.portlet { - overflow: hidden; -} -#bodyContent a.external { - background: url(external.png) center right no-repeat; - padding-right: 13px; -} -/* show the hand */ -#p-logo a, -#p-logo a:hover { - cursor: pointer; -} -.visualClear { - width: 90%; - height: 1px; - padding: 0; - margin: 0; -} - -#editform { - width: 100%; -} diff --git a/skins/archlinux/IE60Fixes.css b/skins/archlinux/IE60Fixes.css index 3bcd0479..ec1ce430 100644 --- a/skins/archlinux/IE60Fixes.css +++ b/skins/archlinux/IE60Fixes.css @@ -36,9 +36,6 @@ div#footer { border-right: 1px solid #fabd23; } - /* the tabs */ - - /* the tabs */ #p-cactions { diff --git a/skins/archlinux/IE70Fixes.css b/skins/archlinux/IE70Fixes.css index fc009e6e..e8d3a8f8 100644 --- a/skins/archlinux/IE70Fixes.css +++ b/skins/archlinux/IE70Fixes.css @@ -8,8 +8,10 @@ div#column-content div#content { margin-top: 3em; height: 1%; } - -.rtl div#column-content div#content { margin-right: 12.2em; margin-left: 0; } +.rtl div#column-content div#content { + margin-right: 12.2em; + margin-left: 0; +} .rtl div#column-one { diff --git a/skins/archlinux/main.css b/skins/archlinux/main.css index edf79abb..9a8eac1c 100644 --- a/skins/archlinux/main.css +++ b/skins/archlinux/main.css @@ -59,135 +59,21 @@ div#globalWrapper { } /* general styles */ - -table { - font-size: 100%; -} a { - text-decoration: none; color: #002bb8; - background: none; } a:visited { color: #5a3696; } -a:active { - color: #faa700; -} -a:hover { - text-decoration: underline; -} -a.stub { - color: #772233; -} -a.new, #p-personal a.new { +a.new, +#p-personal a.new { color: #cc2200; } -a.new:visited, #p-personal a.new:visited { - color: #a55858; -} - -img { - border: none; - vertical-align: middle; -} -p { - margin: .4em 0 .5em 0; - line-height: 1.5em; -} -p img { - margin: 0; -} - -hr { - height: 1px; - color: #aaa; - background-color: #aaa; - border: 0; - margin: .2em 0 .2em 0; -} - -h1, h2, h3, h4, h5, h6 { - color: black; - background: none; - font-weight: normal; - margin: 0; - overflow: hidden; - padding-top: .5em; - padding-bottom: .17em; - border-bottom: 1px solid #aaa; -} -h1 { font-size: 188%; } -h1 .editsection { font-size: 53%; } -h2 { font-size: 150%; } -h2 .editsection { font-size: 67%; } -h3, h4, h5, h6 { - border-bottom: none; - font-weight: bold; -} -h3 { font-size: 132%; } -h3 .editsection { font-size: 76%; font-weight: normal; } -h4 { font-size: 116%; } -h4 .editsection { font-size: 86%; font-weight: normal; } -h5 { font-size: 100%; } -h5 .editsection { font-weight: normal; } -h6 { font-size: 80%; } -h6 .editsection { font-size: 125%; font-weight: normal; } ul { - line-height: 1.5em; - list-style-type: square; - margin: .3em 0 0 1.5em; - padding: 0; /* @embed */ list-style-image: url(bullet.gif); } -ol { - line-height: 1.5em; - margin: .3em 0 0 3.2em; - padding: 0; - list-style-image: none; -} -li { - margin-bottom: .1em; -} -dt { - font-weight: bold; - margin-bottom: .1em; -} -dl { - margin-top: .2em; - margin-bottom: .5em; -} -dd { - line-height: 1.5em; - margin-left: 2em; - margin-bottom: .1em; -} - -fieldset { - border: 1px solid #2f6fab; - margin: 1em 0 1em 0; - padding: 0 1em 1em; - line-height: 1.5em; -} -fieldset.nested { - margin: 0 0 0.5em 0; - padding: 0 0.5em 0.5em; -} -legend { - padding: .5em; - font-size: 95%; -} -form { - border: none; - margin: 0; -} - -textarea { - width: 100%; - padding: .1em; -} input.historysubmit { padding: 0 .3em .3em .3em !important; @@ -196,26 +82,8 @@ input.historysubmit { height: 1.7em !important; margin-left: 1.6em; } -select { - vertical-align: top; -} -q { - font-family: Times, "Times New Roman", serif; - font-style: italic; -} -/* disabled for now -blockquote { - font-family: Times, "Times New Roman", serif; - font-style: italic; -}*/ -code { - background-color: #f9f9f9; -} + pre { - padding: 1em; - border: 1px dashed #2f6fab; - color: black; - background-color: #f9f9f9; line-height: 1.1em; } @@ -223,211 +91,16 @@ pre { ** the main content area */ -#siteSub { - display: none; -} -#jump-to-nav { - display: none; -} - -#contentSub, #contentSub2 { - font-size: 84%; - line-height: 1.2em; - margin: 0 0 1.4em 1em; - color: #7d7d7d; - width: auto; -} -span.subpages { - display: block; -} - -/* Some space under the headers in the content area */ -#bodyContent h1, #bodyContent h2 { - margin-bottom: .6em; -} -#bodyContent h3, #bodyContent h4, #bodyContent h5 { - margin-bottom: .3em; -} -#firstHeading { - margin-bottom: .1em; - /* These two rules hack around bug 2013 (fix for more limited bug 11325). - When bug 2013 is fixed properly, they should be removed. */ - line-height: 1.2em; - padding-bottom: 0; -} - -/* user notification thing */ -.usermessage { - background-color: #ffce7b; - border: 1px solid #ffa500; - color: black; - font-weight: bold; - margin: 2em 0 1em; - padding: .5em 1em; - vertical-align: middle; -} #siteNotice { - position: relative; - text-align: center; font-size: 95%; padding: 0 0.9em; } -#siteNotice p { +#localNotice { margin: 0; - padding: 0; } - -.catlinks { - border: 1px solid #aaa; - background-color: #f9f9f9; - padding: 5px; - margin-top: 1em; - clear: both; -} -/* currently unused, intended to be used by a metadata box -in the bottom-right corner of the content area */ -.documentDescription { - /* The summary text describing the document */ - font-weight: bold; - display: block; - margin: 1em 0; - line-height: 1.5em; -} -.documentByLine { - text-align: right; - font-size: 90%; - clear: both; - font-weight: normal; - color: #76797c; -} - -/* emulate center */ -.center { - width: 100%; - text-align: center; -} -*.center * { - margin-left: auto; - margin-right: auto; -} -/* small for tables and similar */ -.small { - font-size: 94%; -} -table.small { - font-size: 100%; -} - -/* -** content styles -*/ - -#toc, -.toc, -.mw-warning { - border: 1px solid #aaa; - background-color: #f9f9f9; - padding: 5px; - font-size: 95%; -} -#toc h2, -.toc h2 { - display: inline; - border: none; - padding: 0; - font-size: 100%; - font-weight: bold; -} -#toc #toctitle, -.toc #toctitle, -#toc .toctitle, -.toc .toctitle { - text-align: center; -} -#toc ul, -.toc ul { - list-style-type: none; - list-style-image: none; - margin-left: 0; +#siteNotice p { + margin: 0; padding: 0; - text-align: left; -} -#toc ul ul, -.toc ul ul { - margin: 0 0 0 2em; -} -#toc .toctoggle, -.toc .toctoggle { - font-size: 94%; -} - -.mw-warning { - margin-left: 50px; - margin-right: 50px; - text-align: center; -} - -/* images */ -/* @noflip */div.floatright, table.floatright { - margin: 0 0 .5em .5em; - border: 0; -/* - border: .5em solid white; - border-width: .5em 0 .8em 1.4em; -*/ -} -div.floatright p { font-style: italic; } -/* @noflip */div.floatleft, table.floatleft { - margin: 0 .5em .5em 0; - border: 0; -/* - margin: .3em .5em .5em 0; - border: .5em solid white; - border-width: .5em 1.4em .8em 0; -*/ -} -div.floatleft p { font-style: italic; } -/* thumbnails */ -div.thumb { - margin-bottom: .5em; - width: auto; -} -div.thumbinner { - border: 1px solid #ccc; - padding: 3px !important; - background-color: #f9f9f9; - font-size: 94%; - text-align: center; - overflow: hidden; -} -html .thumbimage { - border: 1px solid #ccc; -} -html .thumbcaption { - border: none; - text-align: left; - line-height: 1.4em; - padding: 3px !important; - font-size: 94%; -} -div.magnify { - float: right; - border: none !important; - background: none !important; -} -div.magnify a, div.magnify img { - display: block; - border: none !important; - background: none !important; -} -/* @noflip */div.tright { - margin: .5em 0 1.3em 1.4em; -} -/* @noflip */div.tleft { - margin: .5em 1.4em 1.3em 0; -} -img.thumbborder { - border: 1px solid #dddddd; } /* @@ -446,12 +119,6 @@ table.rimage { margin-bottom: 1em; text-align: center; } -.toccolours { - border: 1px solid #aaa; - background-color: #f9f9f9; - padding: 5px; - font-size: 95%; -} /* ** edit views etc @@ -484,7 +151,7 @@ table.rimage { background: url(mail_icon.gif) center right no-repeat; padding-right: 18px; } -#bodyContent a.external[href ^="news://"] { +#bodyContent a.external[href ^="news:"] { /* @embed */ background: url(news_icon.png) center right no-repeat; padding-right: 18px; @@ -510,7 +177,7 @@ table.rimage { #bodyContent a.external[href $=".wma"], #bodyContent a.external[href $=".WMA"], .link-audio { /* @embed */ - background: url("audio.png") center right no-repeat; + background: url(audio.png) center right no-repeat; padding-right: 13px; } #bodyContent a.external[href $=".ogm"], #bodyContent a.external[href $=".OGM"], @@ -519,7 +186,7 @@ table.rimage { #bodyContent a.external[href $=".mpg"], #bodyContent a.external[href $=".MPG"], .link-video { /* @embed */ - background: url("video.png") center right no-repeat; + background: url(video.png) center right no-repeat; padding-right: 13px; } #bodyContent a.external[href $=".pdf"], #bodyContent a.external[href $=".PDF"], @@ -527,35 +194,20 @@ table.rimage { #bodyContent a.external[href *=".pdf?"], #bodyContent a.external[href *=".PDF?"], .link-document { /* @embed */ - background: url("document.png") center right no-repeat; + background: url(document.png) center right no-repeat; padding-right: 12px; } - + /* Interwiki Styling */ #bodyContent a.extiw, #bodyContent a.extiw:active { color: #36b; - /* Don't show icons for interwiki links */ - background: none; - padding: 0; -} -#bodyContent a.extiw:visited { - color: #636; -} -#bodyContent a.extiw:active { - color: #b63; } /* External links */ #bodyContent a.external { color: #36b; } -#bodyContent a.external:visited { - color: #636; /* bug 3112 */ -} -#bodyContent a.external:active { - color: #b63; -} /* ** Structural Elements @@ -839,7 +491,10 @@ li#pt-login { li#ca-talk { margin-right: 1.6em; } -li#ca-watch, li#ca-unwatch, li#ca-varlang-0, li#ca-print { +li#ca-watch, +li#ca-unwatch, +li#ca-varlang-0, +li#ca-print { margin-left: 1.6em; } #p-cactions .pBody { @@ -997,8 +652,8 @@ td.htmlform-tip { margin-top: 2em; } -div#userloginForm form, -div#userlogin form#userlogin2 { +div#userloginForm, +div#userlogin { margin: 0 3em 1em 0; border: 1px solid #aaa; clear: both; @@ -1008,12 +663,12 @@ div#userlogin form#userlogin2 { } div#userloginForm table, -div#userlogin form#userlogin2 table { +div#userlogin table { background-color: #f9f9f9; } div#userloginForm h2, -div#userlogin form#userlogin2 h2 { +div#userlogin h2 { padding-top: 0; } @@ -1052,15 +707,21 @@ div#userloginForm .captcha { ** @import("IEMacFixes.css"); */ /* tabs: border on the a, not the div */ -* > html #p-cactions li { border: none; } +* > html #p-cactions li { + border: none; +} * > html #p-cactions li a { border: 1px solid #aaa; border-bottom: none; } -* > html #p-cactions li.selected a { border-color: #fabd23; } +* > html #p-cactions li.selected a { + border-color: #fabd23; +} /* footer icons need a fixed width */ * > html #f-poweredbyico, -* > html #f-copyrightico { width: 88px; } +* > html #f-copyrightico { + width: 88px; +} * > html #bodyContent, * > html #bodyContent pre { overflow-x: auto; @@ -1070,12 +731,16 @@ div#userloginForm .captcha { /* more IE fixes */ /* float/negative margin brokenness */ -* html div#footer {margin-top: 0;} +* html div#footer { + margin-top: 0; +} * html div#column-content { display: inline; margin-bottom: 0; } -#pagehistory li.selected { position: relative; } +#pagehistory li.selected { + position: relative; +} /* Mac IE 5.0 fix; floated content turns invisible */ * > html div#column-content { @@ -1131,7 +796,8 @@ span.updatedmarker { } /* @bug 1714 */ -input#wpSave, input#wpDiff { +input#wpSave, +input#wpDiff { margin-right: 0.33em; } @@ -1148,17 +814,17 @@ div.noarticletext { } div#searchTargetContainer { - left: 10px; - top: 10px; - width: 90%; + left: 10px; + top: 10px; + width: 90%; background: white; } div#searchTarget { - padding: 3px; - margin: 5px; + padding: 3px; + margin: 5px; background: #F0F0F0; - border: solid 1px blue; + border: solid 1px blue; } div#searchTarget ul li { @@ -1171,10 +837,10 @@ div#searchTarget ul li:before { } div#searchTargetHide { - float:right; - border:solid 1px black; - background:#DCDCDC; - padding:2px; + float: right; + border: solid 1px black; + background: #DCDCDC; + padding: 2px; } #powersearch p { @@ -1202,7 +868,9 @@ table.multipageimage td { text-align: center; } -.templatesUsed { margin-top: 1.5em; } +.templatesUsed { + margin-top: 1.5em; +} .mw-summary-preview { margin: 0.1em 0; diff --git a/skins/chick/IE50Fixes.css b/skins/chick/IE50Fixes.css deleted file mode 100644 index 4a193e94..00000000 --- a/skins/chick/IE50Fixes.css +++ /dev/null @@ -1,67 +0,0 @@ -/* -** IE5.0 Fix Stylesheet -*/ - -#column-content { - margin: 0 !important; - float: none; -} -#column-content #content { - margin-top: 3em; - height: 1%; -} -#column-one { - position: absolute; - overflow: visible; - top: 0; - left: 0; - z-index: 3; -} -#footer { - margin: 0 0 0 13.6em; -} - -/* IE 5 & 5.5 interpret keyword sizes one off */ -body { font-size: xx-small; } -/* -** the edit tabs -*/ -#p-cactions li { - float: left; - padding-top: 0; - padding-bottom: 0 !important; - height: 0.9em; -} -#p-cactions li a { - display: block; - padding-bottom: 0.045em; -} -#p-cactions li.selected a { - padding-bottom: 0.17em; -} -#p-cactions li a:hover { - padding-bottom: 0.17em; -} -/* 5.0 doesn't like the background icon for external links and user */ -.link-external, -.external { - background: none; - padding: 0; -} -#p-personal ul { float: right } -#p-personal li { float: left } -li#pt-userpage, -li#pt-anonuserpage, -li#pt-login, -li#pt-logout { - background: none; - padding-left: none; -} -.visualClear { - width:100%; - height: 0px; - padding:0; - margin:0; -} -#firstHeading { margin-bottom: 0.3em; } -/*div{ border:1px solid Red !important;}*/ diff --git a/skins/chick/IE55Fixes.css b/skins/chick/IE55Fixes.css deleted file mode 100644 index 2f785612..00000000 --- a/skins/chick/IE55Fixes.css +++ /dev/null @@ -1,81 +0,0 @@ -/* IE5.5/win- only fixes */ - -#column-content { - float: none; - margin-left: 0; - height: 1%; -} -#column-content #content { - position: relative; - z-index: 5; - margin-left: 12.2em; - margin-top: 3em; - height: 1%; -} -#column-one { - position: absolute; - top: 0; - left: 0; - z-index: 4; - width: 100%; -} -#footer { - margin-left: 13.6em; - border-left: 1px solid #fabd23; -} - -/*#bodyContent div, -#bodyContent pre { overflow: auto; }*/ - -#p-personal { padding-bottom: 0.1em; } - -body { font-size: xx-small; } - -#p-cactions { - width: 76% !important; - z-index: 3 !important; - float: none; -} -#p-cactions li { - padding-bottom: 0 !important; - border: none; - background-color: transparent; - cursor: default; - float: none !important; -} -#p-cactions li a { - display: inline-block !important; - vertical-align: top; - padding-bottom: 0; - border: solid #aaa; - border-width: 1px 1px 0; -} -#p-cactions li.selected a { - border-color: #fabd23; - padding-bottom: 0.17em; -} -#p-cactions li a:hover { - padding-bottom: 0.17em; -} -.portlet { - overflow:hidden; -} -#bodyContent a.external { - background: url(external.png) center right no-repeat; - padding-right: 13px; -} -/* show the hand */ -#p-logo a, -#p-logo a:hover { - cursor: pointer; -} -.visualClear { - width:90%; - height: 1px; - padding:0; - margin:0; -} - -#editform { - width: 100%; -} diff --git a/skins/chick/IE60Fixes.css b/skins/chick/IE60Fixes.css index feec15f1..18e9655d 100644 --- a/skins/chick/IE60Fixes.css +++ b/skins/chick/IE60Fixes.css @@ -1,8 +1,8 @@ /* 6.0 - only fixes */ -/* content area */ +/* content area */ /* workaround for various ie float bugs */ -#column-content { - float: none; +#column-content { + float: none; margin-left: 0; height: 1%; } diff --git a/skins/chick/main.css b/skins/chick/main.css index 4501ccd0..3787d820 100644 --- a/skins/chick/main.css +++ b/skins/chick/main.css @@ -203,24 +203,6 @@ span.subpages { display: block; } } .catlinks { margin: 0; padding: 0; } - -/* currently unused, intended to be used by a metadata box -in the bottom-right corner of the content area */ -.documentDescription { - /* The summary text describing the document */ - font-weight: bold; - display: block; - margin: 1em 0em; - line-height: 1.5em; -} -.documentByLine { - text-align: right; - font-size: 90%; - clear: both; - font-weight: normal; - color: #76797c; -} - /* emulate center */ .center { width: 100%; diff --git a/skins/cologneblue/screen.css b/skins/cologneblue/screen.css index 03504b99..cf8ca12e 100644 --- a/skins/cologneblue/screen.css +++ b/skins/cologneblue/screen.css @@ -1,6 +1,6 @@ body { - margin: 0px; - padding: 0px; + margin: 0; + padding: 0; color: black; } @@ -21,7 +21,7 @@ body { } #topbar { - padding: 0px; + padding: 0; } #powersearch { @@ -103,10 +103,6 @@ td#top-syslinks { td.top-linkcollection { text-align: right; } -td.top-subheader { - vertical-align: top; -} - /** * Overrides text justification (user preference) * See bug 31990 @@ -114,6 +110,9 @@ td.top-subheader { td.top-linkcollection #catlinks { text-align: right; } +td.top-subheader { + vertical-align: top; +} td.bottom { font-family: Verdana, Arial, sans-serif; font-size: 10pt; diff --git a/skins/common/IE80Fixes.css b/skins/common/IE80Fixes.css index b6360f60..6e5cb8a4 100644 --- a/skins/common/IE80Fixes.css +++ b/skins/common/IE80Fixes.css @@ -1,5 +1,5 @@ /** - * Fixes textarea scrolling bug (bug #19334). The bug only occurs when a + * Fixes textarea scrolling bug (bug #19334). The bug only occurs when a * percentage width is given, so instead of width: 100%, use min-width: 100%; * max-width: 100%. We also need to give a fixed width for the actual width * property for the hack to work, although the actual value (500px here) ends diff --git a/skins/common/IEFixes.js b/skins/common/IEFixes.js index 7f3b9c0f..dd999ed4 100644 --- a/skins/common/IEFixes.js +++ b/skins/common/IEFixes.js @@ -63,6 +63,11 @@ window.fixalpha = function( logoId ) { } }; +if ( isMSIE55 ) { + // ondomready + $( fixalpha ); +} + // fix ie6 disappering float bug window.relativeforfloats = function() { var bc = document.getElementById( 'bodyContent' ); diff --git a/skins/common/ajax.js b/skins/common/ajax.js index 2a93373f..121f9d12 100644 --- a/skins/common/ajax.js +++ b/skins/common/ajax.js @@ -84,9 +84,7 @@ window.sajax_do_call = function(func_name, args, target) { var i, x, n; var uri; var post_data; - uri = wgServer + - ( ( wgScript == null ) ? ( wgScriptPath + '/index.php' ) : wgScript ) + - '?action=ajax'; + uri = mw.util.wikiScript() + '?action=ajax'; if ( sajax_request_type == 'GET' ) { if ( uri.indexOf( '?' ) == -1 ) { uri = uri + '?rs=' + encodeURIComponent( func_name ); diff --git a/skins/common/commonContent.css b/skins/common/commonContent.css new file mode 100644 index 00000000..61799187 --- /dev/null +++ b/skins/common/commonContent.css @@ -0,0 +1,122 @@ +/* +** MediaWiki style sheet for general styles on complex content +*/ + +/* Table of Contents */ +#toc, +.toc, +.mw-warning { + border: 1px solid #aaa; + background-color: #f9f9f9; + padding: 5px; + font-size: 95%; +} +#toc h2, +.toc h2 { + display: inline; + border: none; + padding: 0; + font-size: 100%; + font-weight: bold; +} +#toc #toctitle, +.toc #toctitle, +#toc .toctitle, +.toc .toctitle { + text-align: center; +} +#toc ul, +.toc ul { + list-style-type: none; + list-style-image: none; + margin-left: 0; + padding: 0; + text-align: left; +} +#toc ul ul, +.toc ul ul { + margin: 0 0 0 2em; +} +#toc .toctoggle, +.toc .toctoggle { + font-size: 94%; +} + +.toccolours { + border: 1px solid #aaa; + background-color: #f9f9f9; + padding: 5px; + font-size: 95%; +} + +/* Warning */ +.mw-warning { + margin-left: 50px; + margin-right: 50px; + text-align: center; +} + +/* Images */ +/* @noflip */div.floatright, table.floatright { + margin: 0 0 .5em .5em; + border: 0; +} +div.floatright p { font-style: italic; } +/* @noflip */div.floatleft, table.floatleft { + margin: 0 .5em .5em 0; + border: 0; +} +div.floatleft p { font-style: italic; } +/* Thumbnails */ +div.thumb { + margin-bottom: .5em; + width: auto; + background-color: transparent; +} +div.thumbinner { + border: 1px solid #ccc; + padding: 3px !important; + background-color: #f9f9f9; + font-size: 94%; + text-align: center; + overflow: hidden; +} +html .thumbimage { + border: 1px solid #ccc; +} +html .thumbcaption { + border: none; + text-align: left; + line-height: 1.4em; + padding: 3px !important; + font-size: 94%; +} +div.magnify { + float: right; + border: none !important; + background: none !important; +} +div.magnify a, div.magnify img { + display: block; + border: none !important; + background: none !important; +} +/* @noflip */div.tright { + margin: .5em 0 1.3em 1.4em; +} +/* @noflip */div.tleft { + margin: .5em 1.4em 1.3em 0; +} +img.thumbborder { + border: 1px solid #dddddd; +} + +/** + * Basic styles for the user login and create account forms + */ +#userlogin, #userloginForm { + border: solid 1px #cccccc; + padding: 1.2em; + margin: .5em; + float: left; +} diff --git a/skins/common/commonElements.css b/skins/common/commonElements.css new file mode 100644 index 00000000..5590bfa1 --- /dev/null +++ b/skins/common/commonElements.css @@ -0,0 +1,251 @@ +/* +** MediaWiki style sheet for general styles on basic content elements +*/ + +/* Links */ +a { + text-decoration: none; + color: #0645ad; + background: none; +} +a:visited { + color: #0b0080; +} +a:active { + color: #faa700; +} +a:hover, a:focus { + text-decoration: underline; +} +a.stub { + color: #772233; +} +a.new, #p-personal a.new { + color: #ba0000; +} +a.new:visited, #p-personal a.new:visited { + color: #a55858; +} + +/* Interwiki Styling */ +.mw-body a.extiw, +.mw-body a.extiw:active { + color: #36b; +} +.mw-body a.extiw:visited { + color: #636; +} +.mw-body a.extiw:active { + color: #b63; +} + +/* External links */ +.mw-body a.external { + color: #36b; +} +.mw-body a.external:visited { + color: #636; /* bug 3112 */ +} +.mw-body a.external:active { + color: #b63; +} + +/* Inline Elements */ +img { + border: none; + vertical-align: middle; +} +hr { + height: 1px; + color: #aaa; + background-color: #aaa; + border: 0; + margin: .2em 0; +} + +/* Structural Elements */ +h1, +h2, +h3, +h4, +h5, +h6 { + color: black; + background: none; + font-weight: normal; + margin: 0; + overflow: hidden; + padding-top: .5em; + padding-bottom: .17em; + border-bottom: 1px solid #aaa; + width: auto; +} +h1 { + font-size: 188%; +} +h1 .editsection { + font-size: 53%; +} +h2 { + font-size: 150%; +} +h2 .editsection { + font-size: 67%; +} +h3, +h4, +h5, +h6 { + border-bottom: none; + font-weight: bold; +} +h3 { + font-size: 132%; +} +h3 .editsection { + font-size: 76%; + font-weight: normal; +} +h4 { + font-size: 116%; +} +h4 .editsection { + font-size: 86%; + font-weight: normal; } +h5 { + font-size: 100%; +} +h5 .editsection { + font-weight: normal; +} +h6 { + font-size: 80%; +} +h6 .editsection { + font-size: 125%; + font-weight: normal; +} + +/* Some space under the headers in the content area */ +h1, +h2 { + margin-bottom: .6em; +} +h3, +h4, +h5 { + margin-bottom: .3em; +} + +p { + margin: .4em 0 .5em 0; + line-height: 1.5em; +} +p img { + margin: 0; +} + +ul { + line-height: 1.5em; + list-style-type: square; + margin: .3em 0 0 1.6em; + padding: 0; +} +ol { + line-height: 1.5em; + margin: .3em 0 0 3.2em; + padding: 0; + list-style-image: none; +} +li { + margin-bottom: .1em; +} +dt { + font-weight: bold; + margin-bottom: .1em; +} +dl { + margin-top: .2em; + margin-bottom: .5em; +} +dd { + line-height: 1.5em; + margin-left: 1.6em; + margin-bottom: .1em; +} + +q { + font-family: Times, "Times New Roman", serif; + font-style: italic; +} +/* Disabled for now +blockquote { + font-family: Times, "Times New Roman", serif; + font-style: italic; +}*/ +pre, code, tt, kbd, samp { + /* + * Some browsers will render the monospace text too small, namely Firefox, Chrome and Safari. + * Specifying any valid, second value will trigger correct behaviour without forcing a different font. + */ + font-family: monospace, Courier; +} +code { + background-color: #f9f9f9; +} +pre { + padding: 1em; + border: 1px dashed #2f6fab; + color: black; + background-color: #f9f9f9; +} + +/* Tables */ +table { + font-size: 100%; +} + +/* Forms */ +fieldset { + border: 1px solid #2f6fab; + margin: 1em 0 1em 0; + padding: 0 1em 1em; + line-height: 1.5em; +} +fieldset.nested { + margin: 0 0 0.5em 0; + padding: 0 0.5em 0.5em; +} +legend { + padding: .5em; + font-size: 95%; +} +form { + border: none; + margin: 0; +} +textarea { + width: 100%; + padding: .1em; +} +select { + vertical-align: top; +} + +/* Emulate Center */ +.center { + width: 100%; + text-align: center; +} +*.center * { + margin-left: auto; + margin-right: auto; +} +/* Small for tables and similar */ +.small { + font-size: 94%; +} +table.small { + font-size: 100%; +} + diff --git a/skins/common/commonInterface.css b/skins/common/commonInterface.css new file mode 100644 index 00000000..60d6436b --- /dev/null +++ b/skins/common/commonInterface.css @@ -0,0 +1,64 @@ +/* +** MediaWiki style sheet for common core styles on interfaces +*/ + +/* Categories */ +.catlinks { + border: 1px solid #aaa; + background-color: #f9f9f9; + padding: 5px; + margin-top: 1em; + clear: both; +} + +/* User Message */ +.usermessage { + background-color: #ffce7b; + border: 1px solid #ffa500; + color: black; + font-weight: bold; + margin: 2em 0 1em; + padding: .5em 1em; + vertical-align: middle; +} + +/* Site Notice (includes notices from CentralNotice extension) */ +#siteNotice { + position: relative; + text-align: center; + margin: 0; +} +#localNotice { + margin-bottom: 0.9em; +} + +/* First h1 */ +.firstHeading, +#firstHeading { + margin-bottom: .1em; + /* These two rules hack around bug 2013 (fix for more limited bug 11325). + * When bug 2013 is fixed properly, they should be removed. */ + line-height: 1.2em; + padding-bottom: 0; +} + +/* Sub-navigation */ +#siteSub { + display: none; +} +#jump-to-nav { + /* Negate #contentSub's margin and replicate it so that the jump to links don't affect the spacing */ + margin-top: -1.4em; + margin-bottom: 1.4em +} +#contentSub, #contentSub2 { + font-size: 84%; + line-height: 1.2em; + margin: 0 0 1.4em 1em; + color: #7d7d7d; + width: auto; +} +span.subpages { + display: block; +} + diff --git a/skins/common/commonPrint.css b/skins/common/commonPrint.css index 58703a33..4efabee3 100644 --- a/skins/common/commonPrint.css +++ b/skins/common/commonPrint.css @@ -1,10 +1,10 @@ -/* -** MediaWiki Print style sheet for CSS2-capable browsers. -** Copyright Gabriel Wicke, http://www.aulinx.de/ -** -** Derived from the plone (http://plone.org/) styles -** Copyright Alexander Limi -*/ +/** + * MediaWiki Print style sheet for CSS2-capable browsers. + * Copyright Gabriel Wicke, http://www.aulinx.de/ + * + * Derived from the plone (http://plone.org/) styles + * Copyright Alexander Limi + */ /* Thanks to A List Apart (http://alistapart.com/) for useful extras */ a.stub, @@ -18,12 +18,6 @@ a.new { background-color: #f9f9f9; padding: 5px; } -.tocindent { - margin-left: 2em; -} -.tocline { - margin-bottom: 0px; -} /* images */ div.floatright { @@ -105,15 +99,15 @@ table.rimage { } body { - background: White; - /*font-size: 11pt !important;*/ - color: Black; + background: white; + color: black; margin: 0; padding: 0; } .noprint, div#jump-to-nav, +.mw-jump, div.top, div#column-one, #colophon, @@ -125,9 +119,13 @@ div#f-copyrightico, li#viewcount, li#about, li#disclaimer, +li#mobileview, li#privacy, #footer-places, -#mw-hidden-catlinks { +.mw-hidden-catlinks, +tr.mw-metadata-show-hide-extended, +span.mw-filepage-other-resolutions, +#filetoc { /* Hides all the elements irrelevant for printing */ display: none; } @@ -138,9 +136,9 @@ ul { #content { background: none; - border: none ! important; - padding: 0 ! important; - margin: 0 ! important; + border: none !important; + padding: 0 !important; + margin: 0 !important; direction: ltr; } #footer { @@ -155,15 +153,11 @@ h1, h2, h3, h4, h5, h6 { font-weight: bold; } -p, .documentDescription { - margin: 1em 0 ! important; +p { + margin: 1em 0; line-height: 1.2em; } -.tocindent p { - margin: 0 0 0 0 ! important; -} - pre { border: 1pt dashed black; white-space: pre; @@ -181,7 +175,7 @@ table.listing td { } a { - color: Black !important; + color: black !important; background: none !important; padding: 0 !important; } @@ -192,7 +186,8 @@ a:link, a:visited { text-decoration: underline; } -#content a.external.text:after, #content a.external.autonumber:after { +#content a.external.text:after, +#content a.external.autonumber:after { /* Expand URLs for printing */ content: " (" attr(href) ") "; } @@ -215,16 +210,23 @@ a:link, a:visited { padding: 1em; margin: 0 !important; } + /* MSIE/Win doesn't understand 'inherit' */ -a, a.external, a.new, a.stub { - color: black ! important; - text-decoration: none ! important; +a, +a.external, +a.new, +a.stub { + color: black !important; + text-decoration: none !important; } /* Continue ... */ -a, a.external, a.new, a.stub { - color: inherit ! important; - text-decoration: inherit ! important; +a, +a.external, +a.new, +a.stub { + color: inherit !important; + text-decoration: inherit !important; } img { @@ -233,9 +235,13 @@ img { } /* math */ -span.texhtml { font-family: serif; } +span.texhtml { + font-family: serif; +} -#siteNotice { display: none; } +#siteNotice { + display: none; +} /* Galleries (see shared.css for more info) */ li.gallerybox { @@ -275,9 +281,10 @@ div.gallerytext { padding: 2px 4px; word-wrap: break-word; } -/* -** Diff rendering -*/ + +/** + * Diff rendering + */ table.diff { background: white; } @@ -307,31 +314,37 @@ td.diff-context { text-decoration: underline; } -/* -** Table rendering -** As on shared.css but with white background. -*/ -table.wikitable { +/** + * Table rendering + * As on shared.css but with white background. + */ +table.wikitable, +table.mw_metadata { margin: 1em 1em 1em 0; border: 1px #aaa solid; background: white; border-collapse: collapse; } -.wikitable th, .wikitable td { +table.wikitable > tr > th, table.wikitable > tr > td, +table.wikitable > * > tr > th, table.wikitable > * > tr > td, +.mw_metadata th, .mw_metadata td { border: 1px #aaa solid; padding: 0.2em; } -.wikitable th { +table.wikitable > tr > th, +table.wikitable > * > tr > th, +.mw_metadata th { text-align: center; background: white; font-weight: bold; } -.wikitable caption { +table.wikitable > caption, +.mw_metadata caption { font-weight: bold; } a.sortheader { - margin: 0px 0.3em; + margin: 0 0.3em; } /* Some pagination options */ @@ -351,7 +364,8 @@ p { */ .catlinks ul { display: inline; - margin: 0px; + margin: 0; + padding: 0; list-style: none; list-style-type: none; list-style-image: none; @@ -372,4 +386,3 @@ p { padding-left: .2em; border-left: none; } - diff --git a/skins/common/config-cc.css b/skins/common/config-cc.css index c629ad3f..d81218ec 100644 --- a/skins/common/config-cc.css +++ b/skins/common/config-cc.css @@ -3,54 +3,55 @@ */ body { - margin:0px; - background:#eee; - font-family:verdana; - color:#333; + margin: 0; + background: #eee; + font-family: Verdana; + color: #333; } #main { - border:1px solid #D0D0D0; - background:#fff; + border: 1px solid #D0D0D0; + background: #fff; margin: 0.5em; } -/* Looks like you have to specify the width of #menu -or IE5 Mac stretches it all the way across the div, and -Opera streches it half way. */ +/** + * Looks like you have to specify the width of #menu + * or IE5 Mac stretches it all the way across the div, and + * Opera streches it half way. + */ #main #menu { - border-left:1px dotted #ccc; - /* border-bottom:1px solid #000;*/ - float:right; - width:230px; - background:white; - margin:0px 0px 10px 10px; + border-left: 1px dotted #ccc; + float: right; + width: 230px; + background: white; + margin: 0 0 10px 10px; } -td, h3, p,h1,pre { - margin:0px 20px 20px 20px; - font-size:11px; - line-height:140%; +td, h3, p, h1, pre { + margin: 0 20px 20px 20px; + font-size: 11px; + line-height: 140%; } .header { padding-left: 10px; - padding-top:10px; + padding-top: 10px; } .nav { - padding-left:10px; - padding-bottom:10px; - font-size:11px; - margin-bottom:16px; + padding-left: 10px; + padding-bottom: 10px; + font-size: 11px; + margin-bottom: 16px; } -#menu p { - font-size:11px; +#menu p { + font-size: 11px; } .dent { - margin-left:64px; + margin-left: 64px; } diff --git a/skins/common/config.css b/skins/common/config.css index 434f27d5..aa982d32 100644 --- a/skins/common/config.css +++ b/skins/common/config.css @@ -133,9 +133,6 @@ padding: 0 !important; } -#config-memcachewrapper { - display: none; -} .config-download-link { font-size: 1.8em; margin-left: 2em; diff --git a/skins/common/config.js b/skins/common/config.js index e5af7d14..23f7302c 100644 --- a/skins/common/config.js +++ b/skins/common/config.js @@ -67,9 +67,9 @@ $( '.enableForOther' ).click( function() { var $textbox = $( '#' + $(this).attr( 'rel' ) ); if ( $(this).val() == 'other' ) { // FIXME: Ugh, this is ugly - $textbox.removeAttr( 'readonly' ).closest( '.config-block' ).slideDown( 'fast' ); + $textbox.removeProp( 'readonly' ).closest( '.config-block' ).slideDown( 'fast' ); } else { - $textbox.attr( 'readonly', 'readonly' ).closest( '.config-block' ).slideUp( 'fast' ); + $textbox.prop( 'readonly', true ).closest( '.config-block' ).slideUp( 'fast' ); } } ); diff --git a/skins/common/images/add.png b/skins/common/images/add.png Binary files differindex 3418db2c..f82f45db 100644 --- a/skins/common/images/add.png +++ b/skins/common/images/add.png diff --git a/skins/common/images/cc-0.png b/skins/common/images/cc-0.png Binary files differindex 59f27f30..18eb1773 100644 --- a/skins/common/images/cc-0.png +++ b/skins/common/images/cc-0.png diff --git a/skins/common/images/cc-by.png b/skins/common/images/cc-by.png Binary files differindex 822491ed..2658ee4d 100644 --- a/skins/common/images/cc-by.png +++ b/skins/common/images/cc-by.png diff --git a/skins/common/images/closewindow19x19.png b/skins/common/images/closewindow19x19.png Binary files differnew file mode 100644 index 00000000..762fd2a2 --- /dev/null +++ b/skins/common/images/closewindow19x19.png diff --git a/skins/common/images/critical-32.png b/skins/common/images/critical-32.png Binary files differindex 2bff7511..0b238c22 100644 --- a/skins/common/images/critical-32.png +++ b/skins/common/images/critical-32.png diff --git a/skins/common/images/sort_both.gif b/skins/common/images/sort_both.gif Binary files differdeleted file mode 100644 index 50ad15a0..00000000 --- a/skins/common/images/sort_both.gif +++ /dev/null diff --git a/skins/common/images/sort_down.gif b/skins/common/images/sort_down.gif Binary files differdeleted file mode 100644 index d97e8285..00000000 --- a/skins/common/images/sort_down.gif +++ /dev/null diff --git a/skins/common/images/sort_up.gif b/skins/common/images/sort_up.gif Binary files differdeleted file mode 100644 index 488cf279..00000000 --- a/skins/common/images/sort_up.gif +++ /dev/null diff --git a/skins/common/mwsuggest.js b/skins/common/mwsuggest.js index 6dbce050..dac59546 100644 --- a/skins/common/mwsuggest.js +++ b/skins/common/mwsuggest.js @@ -30,8 +30,8 @@ window.os_mouse_moved = false; // delay between keypress and suggestion (in ms) window.os_search_timeout = 250; // these pairs of inputs/forms will be autoloaded at startup -window.os_autoload_inputs = new Array('searchInput', 'searchInput2', 'powerSearchText', 'searchText'); -window.os_autoload_forms = new Array('searchform', 'searchform2', 'powersearch', 'search' ); +window.os_autoload_inputs = ['searchInput', 'searchInput2', 'powerSearchText', 'searchText']; +window.os_autoload_forms = ['searchform', 'searchform2', 'powersearch', 'search']; // if we stopped the service window.os_is_stopped = false; // max lines to show in suggest table @@ -423,7 +423,7 @@ window.os_setupDatalist = function( r, results ) { } s.setAttribute( 'list', r.container ); - r.results = new Array(); + r.results = []; r.resultCount = results.length; r.visible = true; for ( i = 0; i < results.length; i++ ) { @@ -436,7 +436,7 @@ window.os_setupDatalist = function( r, results ) { }; /** Fetch namespaces from checkboxes or hidden fields in the search form, - if none defined use wgSearchNamespaces global */ + if none defined use wgSearchNamespaces */ window.os_getNamespaces = function( r ) { var namespaces = ''; var elements = document.forms[r.searchform].elements; @@ -455,7 +455,7 @@ window.os_getNamespaces = function( r ) { } } if( namespaces == '' ) { - namespaces = wgSearchNamespaces.join('|'); + namespaces = mw.config.get( 'wgSearchNamespaces' ).join('|'); } return namespaces; }; @@ -478,7 +478,7 @@ window.os_delayedFetch = function() { var query = os_timer.query; os_timer = null; var path = mw.config.get( 'wgMWSuggestTemplate' ).replace( "{namespaces}", os_getNamespaces( r ) ) - .replace( "{dbname}", wgDBname ) + .replace( "{dbname}", mw.config.get( 'wgDBname' ) ) .replace( "{searchTerms}", os_encodeQuery( query ) ); // try to get from cache, if not fetch using ajax @@ -643,7 +643,7 @@ window.os_createResultTable = function( r, results ) { var c = document.getElementById( r.container ); var width = c.offsetWidth - os_operaWidthFix( c.offsetWidth ); var html = '<table class="os-suggest-results" id="' + r.resultTable + '" style="width: ' + width + 'px;">'; - r.results = new Array(); + r.results = []; r.resultCount = results.length; for( i = 0; i < results.length; i++ ) { var title = os_decodeValue( results[i] ); diff --git a/skins/common/oldshared.css b/skins/common/oldshared.css index 4be14f37..84d42c9f 100644 --- a/skins/common/oldshared.css +++ b/skins/common/oldshared.css @@ -1,11 +1,12 @@ -/* +/** * oldshared.css * This file contains CSS settings common to Wikistandard, Nostalgia and * CologneBlue, the old pre-Monobook skins */ -/* For clarity, explicitly state some recommendations from <http://www.w3.org/ - TR/CSS21/sample.html> to make sure the editsection links scale right */ +/* For clarity, explicitly state some recommendations from + * http://www.w3.org/TR/CSS21/sample.html to make sure the editsection links scale right + */ h1 { font-size: 2em; } h2 { font-size: 1.5em; } @@ -99,7 +100,8 @@ div.magnify { border: none !important; background: none !important; } -div.magnify a, div.magnify img { +div.magnify a, +div.magnify img { display: block; border: none !important; background: none !important; @@ -306,7 +308,8 @@ table.mw_metadata { border: none; border-collapse: collapse; } -table.mw_metadata td, table.mw_metadata th { +table.mw_metadata td, +table.mw_metadata th { border: 1px solid #aaaaaa; padding-left: 4px; padding-right: 4px; @@ -386,7 +389,9 @@ table.multipageimage td { .TablePager { border-collapse: collapse; } -.TablePager, .TablePager td, .TablePager th { +.TablePager, +.TablePager td, +.TablePager th { border: 0.15em solid #777777; padding: 0 0.15em 0 0.15em; } @@ -400,7 +405,8 @@ table.multipageimage td { background-color: #eeeeff; } -.imagelist td, .imagelist th { +.imagelist td, +.imagelist th { white-space: nowrap; } .imagelist .TablePager_col_links { diff --git a/skins/common/preview.js b/skins/common/preview.js index 82b27bc1..9e76ca09 100644 --- a/skins/common/preview.js +++ b/skins/common/preview.js @@ -37,8 +37,8 @@ // with the content of the loaded page var copyContent = page.find( copyElements[i] ).contents(); $(copyElements[i]).empty().append( copyContent ); - var newClasses = page.find( copyElements[i] ).attr('class'); - $(copyElements[i]).attr( 'class', newClasses ); + var newClasses = page.find( copyElements[i] ).prop('class'); + $(copyElements[i]).prop( 'class', newClasses ); } $.each( copyElements, function(k,v) { diff --git a/skins/common/protect.js b/skins/common/protect.js index b77c2e06..a23c0cbd 100644 --- a/skins/common/protect.js +++ b/skins/common/protect.js @@ -77,16 +77,20 @@ window.ProtectionForm = { }, /** - * Is this protection level cascadeable? - * @param level String - * - * @return boolean - * + * Checks if a cerain protection level is cascadeable. + * @param level {String} + * @return {Boolean} */ 'isCascadeableLevel': function( level ) { - for (var k = 0; k < wgCascadeableLevels.length; k++) { - if ( wgCascadeableLevels[k] == level ) { - return true; + var cascadeLevels, len, i; + + cascadeLevels = mw.config.get( 'wgCascadeableLevels' ); + // cascadeLevels isn't defined on all pages + if ( cascadeLevels ) { + for ( i = 0, len = cascadeLevels.length; i < len; i += 1 ) { + if ( cascadeLevels[i] === level ) { + return true; + } } } return false; @@ -252,7 +256,7 @@ window.ProtectionForm = { */ 'getLevelSelectors': function() { var all = document.getElementsByTagName("select"); - var ours = new Array(); + var ours = []; for (var i = 0; i < all.length; i++) { var element = all[i]; if (element.id.match(/^mwProtect-level-/)) { @@ -281,7 +285,7 @@ window.ProtectionForm = { */ 'getExpiryInputs': function() { var all = document.getElementsByTagName("input"); - var ours = new Array(); + var ours = []; for (var i = 0; i < all.length; i++) { var element = all[i]; if (element.name.match(/^mwProtect-expiry-/)) { @@ -309,7 +313,7 @@ window.ProtectionForm = { */ 'getExpirySelectors': function() { var all = document.getElementsByTagName("select"); - var ours = new Array(); + var ours = []; for (var i = 0; i < all.length; i++) { var element = all[i]; if (element.id.match(/^mwProtectExpirySelection-/)) { diff --git a/skins/common/shared.css b/skins/common/shared.css index 3612ee0f..824e3687 100644 --- a/skins/common/shared.css +++ b/skins/common/shared.css @@ -1,41 +1,86 @@ /** - * CSS in this file is used by *all* skins (that have any CSS at all). Be + * CSS in this file is used by *all* skins (that have any CSS at all). Be * careful what you put in here, since what looks good in one skin may not in * another, but don't ignore the poor pre-Monobook users either. */ /* GENERAL CLASSES FOR DIRECTIONALITY SUPPORT */ -/* These classes should be used for text depending on the content direction. -Content stuff like editsection, ul/ol and TOC depend on this. */ - /* @noflip */.mw-content-ltr { direction: ltr; } -/* @noflip */.mw-content-rtl { direction: rtl; } + +/** + * These classes should be used for text depending on the content direction. + * Content stuff like editsection, ul/ol and TOC depend on this. + */ +.mw-content-ltr { + /* @noflip */ + direction: ltr; +} +.mw-content-rtl { + /* @noflip */ + direction: rtl; +} + /* Most input fields should be in site direction */ -/* @noflip */.sitedir-ltr textarea, .sitedir-ltr input { direction: ltr; } -/* @noflip */.sitedir-rtl textarea, .sitedir-rtl input { direction: rtl; } +.sitedir-ltr textarea, +.sitedir-ltr input { + /* @noflip */ + direction: ltr; +} +.sitedir-rtl textarea, +.sitedir-rtl input { + /* @noflip */ + direction: rtl; +} + /* Input types that should follow user direction, like buttons */ -input[type="submit"], input[type="button"], input[type="reset"], input[type="file"] { direction: ltr; } +/* TODO: What about buttons in wikipage content ? */ +input[type="submit"], +input[type="button"], +input[type="reset"], +input[type="file"] { + direction: ltr; +} + /* Override default values */ -/* @noflip */textarea[dir="ltr"], input[dir="ltr"] { direction: ltr; } -/* @noflip */textarea[dir="rtl"], input[dir="rtl"] { direction: rtl; } +textarea[dir="ltr"], +input[dir="ltr"] { + /* @noflip */ + direction: ltr; +} +textarea[dir="rtl"], +input[dir="rtl"] { + /* @noflip */ + direction: rtl; +} /* Default style for semantic tags */ -abbr, acronym, .explain { - border-bottom: 1px dotted black; +abbr, +acronym, +.explain { + border-bottom: 1px dotted; cursor: help; } /* Colored watchlist and recent changes numbers */ -.mw-plusminus-pos { color: #006400; } /* dark green */ -.mw-plusminus-neg { color: #8b0000; } /* dark red */ -.mw-plusminus-null { color: #aaa; } /* gray */ +.mw-plusminus-pos { + color: #006400; /* dark green */ +} +.mw-plusminus-neg { + color: #8b0000; /* dark red */ +} +.mw-plusminus-null { + color: #aaa; /* gray */ +} -/* Links to redirects appear italicized on [[Special:AllPages]], [[Special:PrefixIndex]], - [[Special:Watchlist/edit]] and in category listings */ -.allpagesredirect, .redirect-in-category, .watchlistredir { +/** + * Links to redirects appear italicized on [[Special:AllPages]], [[Special:PrefixIndex]], + * [[Special:Watchlist/edit]] and in category listings. + */ +.allpagesredirect, +.redirect-in-category, +.watchlistredir { font-style: italic; } - /* Comment and username portions of RC entries */ span.comment { font-style: italic; @@ -50,15 +95,25 @@ span.changedby { direction: ltr; unicode-bidi: embed; } -img.tex { vertical-align: middle; } -span.texhtml { font-family: serif; } +img.tex { + vertical-align: middle; +} +span.texhtml { + font-family: serif; +} -/* add a bit of margin space between the preview and the toolbar */ -/* this replaces the ugly <p><br /></p> we used to insert into the page source */ -#wikiPreview.ontop { margin-bottom: 1em; } +/** + * Add a bit of margin space between the preview and the toolbar. + * This replaces the ugly <p><br /></p> we used to insert into the page source + */ +#wikiPreview.ontop { + margin-bottom: 1em; +} /* Stop floats from intruding into edit area in previews */ -#editform, #toolbar, #wpTextbox1 { +#editform, +#toolbar, +#wpTextbox1 { clear: both; } #toolbar img { @@ -77,8 +132,25 @@ div#mw-js-message { margin-left: 5px; } /* Correct directionality when page dir is different from site/user dir */ -/* @noflip */.mw-content-ltr .editsection, .mw-content-rtl .mw-content-ltr .editsection { float: right; } -/* @noflip */.mw-content-rtl .editsection, .mw-content-ltr .mw-content-rtl .editsection { float: left; } +.mw-content-ltr .editsection, +.mw-content-rtl .mw-content-ltr .editsection { + /* @noflip */ + float: right; +} +.mw-content-rtl .editsection, +.mw-content-ltr .mw-content-rtl .editsection { + /* @noflip */ + float: left; +} + +/** + * File description page + */ + +div.mw-filepage-resolutioninfo { + font-size: smaller; +} + /** * File histories */ @@ -102,10 +174,21 @@ table.filehistory td.filehistory-selected { font-weight: bold; } -/* +/** + * Add a checkered background image on hover for file + * description pages. (bug 26470) + */ +.filehistory a img, +#file img:hover { + /* @embed */ + background: white url(images/Checker-16x16.png) repeat; +} + +/** * rev_deleted stuff */ -li span.deleted, span.history-deleted { +li span.deleted, +span.history-deleted { text-decoration: line-through; color: #888; font-style: italic; @@ -131,17 +214,31 @@ div.patrollink { /** * Forms */ -td.mw-label { text-align: right; } -td.mw-input { text-align: left; } -td.mw-submit { text-align: left; } +td.mw-label { + text-align: right; +} +td.mw-input { + text-align: left; +} +td.mw-submit { + text-align: left; +} -td.mw-label { vertical-align: top; } -.prefsection td.mw-label { width: 20%; } -.prefsection table { width: 100%; } -td.mw-submit { white-space: nowrap; } +td.mw-label { + vertical-align: top; +} +.prefsection td.mw-label { + width: 20%; +} +.prefsection table { + width: 100%; +} +td.mw-submit { + white-space: nowrap; +} table.mw-htmlform-nolabel td.mw-label { - width: 0 !important; + width: 1px; } tr.mw-htmlform-vertical-label td.mw-label { @@ -151,7 +248,8 @@ tr.mw-htmlform-vertical-label td.mw-label { .mw-htmlform-invalid-input td.mw-input input { border-color: red; } -.mw-htmlform-multiselect-flatlist div.mw-htmlform-multiselect-item { + +.mw-htmlform-flatlist div.mw-htmlform-flatlist-item { display: inline; margin-right: 1em; white-space: nowrap; @@ -164,8 +262,12 @@ input#wpSummary { /** * Image captions */ -.thumbcaption { text-align: left; } -.magnify { float: right; } +.thumbcaption { + text-align: left; +} +.magnify { + float: right; +} /** * Categories @@ -177,56 +279,61 @@ input#wpSummary { */ text-align: left; } -#catlinks ul { - display:inline; - margin: 0px; - padding: 0px; +.catlinks ul { + display: inline; + margin: 0; + padding: 0; list-style: none; list-style-type: none; list-style-image: none; vertical-align: middle !ie; } -#catlinks li { - display:inline-block; - line-height: 1.35em; - padding: 0 .7em; +.catlinks li { + display: inline-block; + line-height: 1.25em; border-left: 1px solid #AAA; - margin: 0.3em 0; + margin: 0.125em 0; + padding: 0 0.5em; zoom: 1; - display:inline !ie; + display: inline !ie; } -#catlinks li:first-child { - padding-left: .4em; +.catlinks li:first-child { + padding-left: 0.25em; border-left: none; } /** * Hidden categories */ -.mw-hidden-cats-hidden { display: none; } -.catlinks-allhidden { display: none; } +.mw-hidden-cats-hidden { + display: none; +} +.catlinks-allhidden { + display: none; +} /* Convenience links to edit block, delete and protect reasons */ -p.mw-ipb-conveniencelinks, p.mw-protect-editreasons, -p.mw-filedelete-editreasons, p.mw-delete-editreasons, +p.mw-ipb-conveniencelinks, +p.mw-protect-editreasons, +p.mw-filedelete-editreasons, +p.mw-delete-editreasons, p.mw-revdel-editreasons { font-size: 90%; text-align: right; } -/* +/** * OpenSearch ajax suggestions */ .os-suggest { overflow: auto; overflow-x: hidden; position: absolute; - top: 0px; - left: 0px; - width: 0px; + top: 0; + left: 0; + width: 0; background-color: white; - background-color: Window; border-style: solid; border-color: #AAAAAA; border-width: 1px; @@ -242,12 +349,11 @@ table.os-suggest-results { width: 100%; } -.os-suggest-result, .os-suggest-result-hl { +.os-suggest-result, +.os-suggest-result-hl { white-space: nowrap; background-color: white; - background-color: Window; color: black; - color: WindowText; padding: 2px; } .os-suggest-result-hl, @@ -255,12 +361,6 @@ table.os-suggest-results { background-color: #4C59A6; color: white; } -.os-suggest-result-hl { - /* System colors are misimplemented in Safari 3.0 and earlier, - making highlighted text illegible... */ - background-color: Highlight; - color: HighlightText; -} .os-suggest-toggle { position: relative; @@ -269,15 +369,18 @@ table.os-suggest-results { } .os-suggest-toggle-def { position: absolute; - top: 0px; - left: 0px; + top: 0; + left: 0; font-size: 65%; visibility: hidden; } /* Page history styling */ -/* the auto-generated edit comments */ -.autocomment { color: gray; } + +/* The auto-generated edit comments */ +.autocomment { + color: gray; +} #pagehistory .history-user { margin-left: 0.4em; margin-right: 0.2em; @@ -297,16 +400,19 @@ table.os-suggest-results { float: right; } -/** Generic minor/bot/newpage styling */ -.newpage, .minor, .bot { +/** Generic minor/bot/newpage styling (recent changes) */ +.newpage, +.minoredit, +.botedit { font-weight: bold; } -#shared-image-dup, #shared-image-conflict { +#shared-image-dup, +#shared-image-conflict { font-style: italic; } -/* +/** * Recreating deleted page warning * Reupload file warning * Page protection warning @@ -332,7 +438,8 @@ input.mw-revdelundel-hidden { visibility: hidden; } -td.mw-revdel-checkbox, th.mw-revdel-checkbox { +td.mw-revdel-checkbox, +th.mw-revdel-checkbox { padding-right: 10px; text-align: center; } @@ -340,7 +447,7 @@ td.mw-revdel-checkbox, th.mw-revdel-checkbox { /* feed links */ a.feedlink { /* @embed */ - background: url("images/feed-icon.png") center left no-repeat; + background: url(images/feed-icon.png) center left no-repeat; padding-left: 16px; } @@ -351,30 +458,36 @@ a.feedlink { padding: 0 !important; } /* External URLs should always be treated as LTR (bug 4330) */ -/* @noflip */ .rtl a.external.free, .rtl a.external.autonumber { +/* @noflip */ .rtl a.external.free, +.rtl a.external.autonumber { direction: ltr; unicode-bidi: embed; } -/* wikitable class for skinning normal tables - * keep on sync with commonPrint.css +/** + * wikitable class for skinning normal tables + * keep in sync with commonPrint.css */ table.wikitable { margin: 1em 1em 1em 0; - background: #f9f9f9; + background-color: #f9f9f9; border: 1px #aaa solid; border-collapse: collapse; color: black; } -.wikitable th, .wikitable td { +table.wikitable > tr > th, +table.wikitable > tr > td, +table.wikitable > * > tr > th, +table.wikitable > * > tr > td { border: 1px #aaa solid; padding: 0.2em; } -.wikitable th { - background: #f2f2f2; +table.wikitable > tr > th, +table.wikitable > * > tr > th { + background-color: #f2f2f2; text-align: center; } -.wikitable caption { +table.wikitable > caption { font-weight: bold; } @@ -396,7 +509,9 @@ table.collapsed tr.collapsable { color: red; font-size: larger; } -.errorbox, .warningbox, .successbox { +.errorbox, +.warningbox, +.successbox { font-size: larger; border: 2px solid; padding: .5em 1em; @@ -416,7 +531,9 @@ table.collapsed tr.collapsable { border-color: green; background-color: #dfd; } -.errorbox h2, .warningbox h2, .successbox h2 { +.errorbox h2, +.warningbox h2, +.successbox h2 { font-size: 1em; font-weight: bold; display: inline; @@ -463,17 +580,38 @@ table.collapsed tr.collapsable { padding: 0.2em; } -/* - Table pager (e.g. Special:ListFiles) - - remove underlines from the navigation link - - collapse borders - - set the borders to outsets (similar to Special:AllMessages) - - remove line wrapping for all td and th, set background color - - restore line wrapping for the last two table cells (description and size) -*/ +/** + * Data table style + * + * Transparent table with suddle borders + * and blue row-highlighting. + */ +.mw-datatable { + border-collapse: collapse; +} +.mw-datatable, +.mw-datatable td, +.mw-datatable th { + border: 1px solid #aaaaaa; + padding: 0 0.15em 0 0.15em; +} +.mw-datatable th { + background-color: #ddddff; +} +.mw-datatable td { + background-color: #ffffff; +} +.mw-datatable tr:hover td { + background-color: #eeeeff; +} + + +/** + * TablePager tables generated by the TablePager PHP class + * in MediaWiki (e.g. Special:ListFiles). + */ .TablePager { min-width: 80%; - border-collapse: collapse; } .TablePager_nav { margin: 0 auto; @@ -485,21 +623,9 @@ table.collapsed tr.collapsable { .TablePager_nav a { text-decoration: none; } -.TablePager, .TablePager td, .TablePager th { - border: 1px solid #aaaaaa; - padding: 0 0.15em 0 0.15em; -} -.TablePager th { - background-color: #eeeeff; -} -.TablePager td { - background-color: #ffffff; -} -.TablePager tr:hover td { - background-color: #eeeeff; -} -.imagelist td, .imagelist th { +.imagelist td, +.imagelist th { white-space: nowrap; } .imagelist .TablePager_col_links { @@ -555,7 +681,8 @@ table.mw_metadata { border-collapse: collapse; } -table.mw_metadata td, table.mw_metadata th { +table.mw_metadata td, +table.mw_metadata th { text-align: center; border: 1px solid #aaaaaa; padding-left: 5px; @@ -582,13 +709,13 @@ table.mw_metadata ul.metadata-langlist { .mw-content-ltr ul, .mw-content-rtl .mw-content-ltr ul { /* @noflip */ - margin: 0.3em 0 0 1.5em; + margin: 0.3em 0 0 1.6em; padding: 0; } .mw-content-rtl ul, .mw-content-ltr .mw-content-rtl ul { /* @noflip */ - margin: 0.3em 1.5em 0 0; + margin: 0.3em 1.6em 0 0; padding: 0; } .mw-content-ltr ol, @@ -603,19 +730,17 @@ table.mw_metadata ul.metadata-langlist { margin: 0.3em 3.2em 0 0; padding: 0; } - -/* Correct directionality when page dir is different from site/user dir */ -/* @noflip */.mw-content-ltr ul, .mw-content-rtl .mw-content-ltr ul { - margin: .3em 0 0 1.5em; -} -/* @noflip */.mw-content-rtl ul, .mw-content-ltr .mw-content-rtl ul { - margin: .3em 1.5em 0 0; -} -/* @noflip */.mw-content-ltr ol, .mw-content-rtl .mw-content-ltr ol { - margin: .3em 0 0 3.2em; +/* @noflip */ +.mw-content-ltr dd, +.mw-content-rtl .mw-content-ltr dd { + margin-left: 1.6em; + margin-right: 0; } -/* @noflip */.mw-content-rtl ol, .mw-content-ltr .mw-content-rtl ol { - margin: .3em 3.2em 0 0; +/* @noflip */ +.mw-content-rtl dd, +.mw-content-ltr .mw-content-rtl dd { + margin-right: 1.6em; + margin-left: 0; } /* Galleries */ @@ -628,7 +753,8 @@ li.gallerybox { display: inline-block; } -ul.gallery, li.gallerybox { +ul.gallery, +li.gallerybox { zoom: 1; *display: inline; } @@ -684,6 +810,37 @@ div.gallerytext { background-repeat: no-repeat; } +/* Language specific height correction for titles. Ref Bug 29405 and Bug 30809 */ +/* Languages like hi or ml require slightly more vertical space to show diacritics properly */ +h1:lang(as), +h1:lang(bn), +h1:lang(gu), +h1:lang(hi), +h1:lang(kn), +h1:lang(ml), +h1:lang(mr), +h1:lang(or), +h1:lang(pa), +h1:lang(sa), +h1:lang(ta), +h1:lang(te) { + line-height: 1.5em !important; +} +h2:lang(as), h3:lang(as), h4:lang(as), h5:lang(as), h6:lang(as), +h2:lang(bn), h3:lang(bn), h4:lang(bn), h5:lang(bn), h6:lang(bn), +h2:lang(gu), h3:lang(gu), h4:lang(gu), h5:lang(gu), h6:lang(gu), +h2:lang(hi), h3:lang(hi), h4:lang(hi), h5:lang(hi), h6:lang(hi), +h2:lang(kn), h3:lang(kn), h4:lang(kn), h5:lang(kn), h6:lang(kn), +h2:lang(ml), h3:lang(ml), h4:lang(ml), h5:lang(ml), h6:lang(ml), +h2:lang(mr), h3:lang(mr), h4:lang(mr), h5:lang(mr), h6:lang(mr), +h2:lang(or), h3:lang(or), h4:lang(or), h5:lang(or), h6:lang(or), +h2:lang(pa), h3:lang(pa), h4:lang(pa), h5:lang(pa), h6:lang(pa), +h2:lang(sa), h3:lang(sa), h4:lang(sa), h5:lang(sa), h6:lang(sa), +h2:lang(ta), h3:lang(ta), h4:lang(ta), h5:lang(ta), h6:lang(ta), +h2:lang(te), h3:lang(te), h4:lang(te), h5:lang(te), h6:lang(te) { + line-height: 1.2em; +} + /* Localised ordered list numbering for some languages */ ol:lang(bcc) li, ol:lang(bqi) li, @@ -716,20 +873,28 @@ ol:lang(or) li { } /* Correct directionality when page dir is different from site/user dir */ -/* @noflip */.mw-content-ltr .toc ul, .mw-content-ltr #toc ul, -.mw-content-rtl .mw-content-ltr .toc ul, .mw-content-rtl .mw-content-ltr #toc ul { +/* @noflip */ .mw-content-ltr .toc ul, +.mw-content-ltr #toc ul, +.mw-content-rtl .mw-content-ltr .toc ul, +.mw-content-rtl .mw-content-ltr #toc ul { text-align: left; } -/* @noflip */.mw-content-rtl .toc ul, .mw-content-rtl #toc ul, -.mw-content-ltr .mw-content-rtl .toc ul, .mw-content-ltr .mw-content-rtl #toc ul { +/* @noflip */ .mw-content-rtl .toc ul, +.mw-content-rtl #toc ul, +.mw-content-ltr .mw-content-rtl .toc ul, +.mw-content-ltr .mw-content-rtl #toc ul { text-align: right; } -/* @noflip */.mw-content-ltr .toc ul ul, .mw-content-ltr #toc ul ul, -.mw-content-rtl .mw-content-ltr .toc ul ul, .mw-content-rtl .mw-content-ltr #toc ul ul { +/* @noflip */ .mw-content-ltr .toc ul ul, +.mw-content-ltr #toc ul ul, +.mw-content-rtl .mw-content-ltr .toc ul ul, +.mw-content-rtl .mw-content-ltr #toc ul ul { margin: 0 0 0 2em; } -/* @noflip */.mw-content-rtl .toc ul ul, .mw-content-rtl #toc ul ul, -.mw-content-ltr .mw-content-rtl .toc ul ul, .mw-content-ltr .mw-content-rtl #toc ul ul { +/* @noflip */ .mw-content-rtl .toc ul ul, +.mw-content-rtl #toc ul ul, +.mw-content-ltr .mw-content-rtl .toc ul ul, +.mw-content-ltr .mw-content-rtl #toc ul ul { margin: 0 2em 0 0; } @@ -745,7 +910,7 @@ ol:lang(or) li { display: none; margin-left: 2px; margin-bottom: -8px; - padding: 0px 0px 0px 15px; + padding: 0 0 0 15px; /* @embed */ background-image: url('images/help-question.gif'); background-position: left center; @@ -793,35 +958,19 @@ ol:lang(or) li { right: 10px; background-position: 0% 100%; } -/* Table Sorting */ -table.sortable th.headerSort { - background-image: url(images/sort_both.gif); - cursor: pointer; - background-repeat: no-repeat; - background-position: center right; - padding-right: 21px; -} -table.sortable th.headerSortUp { - background-image: url(images/sort_up.gif); -} -table.sortable th.headerSortDown { - background-image: url(images/sort_down.gif); -} -/* LTR content in RTL layout */ -.ltr { - /* @noflip */ - direction: ltr; - unicode-bidi: embed; -} - -#mw-clearyourcache, #mw-sitecsspreview, #mw-sitejspreview, #mw-usercsspreview, #mw-userjspreview { +#mw-clearyourcache, +#mw-sitecsspreview, +#mw-sitejspreview, +#mw-usercsspreview, +#mw-userjspreview { direction: ltr; unicode-bidi: embed; } /* Correct user & content directionality when viewing a diff */ -.diff-currentversion-title, .diff { +.diff-currentversion-title, +.diff { direction: ltr; unicode-bidi: embed; } @@ -833,27 +982,56 @@ table.sortable th.headerSortDown { direction: ltr; unicode-bidi: embed; } -.diff-otitle, .diff-ntitle, .diff-lineno { +.diff-otitle, +.diff-ntitle, +.diff-lineno { direction: ltr !important; unicode-bidi: embed; } -#mw-revision-info, #mw-revision-nav { +#mw-revision-info, +#mw-revision-info-current, +#mw-revision-nav { direction: ltr; + display: inline; } /* Images */ -/* @noflip */div.tright, div.floatright, table.floatright { + +/* @noflip */ div.tright, +div.floatright, +table.floatright { clear: right; float: right; } -/* @noflip */div.tleft, div.floatleft, table.floatleft { +/* @noflip */ div.tleft, +div.floatleft, +table.floatleft { float: left; clear: left; } -div.floatright, table.floatright, div.floatleft, table.floatleft { +div.floatright, +table.floatright, +div.floatleft, +table.floatleft { position: relative; } /* bug 12205 */ -#mw-credits a { unicode-bidi: embed; } +#mw-credits a { + unicode-bidi: embed; +} + +/* Accessibility */ +.mw-jump, +#jump-to-nav { + overflow: hidden; + height: 0; + zoom: 1; /* http://webaim.org/techniques/skipnav/#iequirk */ +} + +/* For developpers */ +.xdebug-error { + position: absolute; + z-index: 99; +} diff --git a/skins/common/upload.js b/skins/common/upload.js index 99917c75..8e08af31 100644 --- a/skins/common/upload.js +++ b/skins/common/upload.js @@ -1,3 +1,7 @@ +( function () { +var ajaxUploadDestCheck = mw.config.get( 'wgAjaxUploadDestCheck' ), + fileExtensions = mw.config.get( 'wgFileExtensions' ); + window.licenseSelectorCheck = function() { var selector = document.getElementById( "wpLicense" ); var selection = selector.options[selector.selectedIndex].value; @@ -11,7 +15,7 @@ window.licenseSelectorCheck = function() { wgUploadLicenseObj.fetchPreview( selection ); }; -window.wgUploadSetup = function() { +function uploadSetup() { // Disable URL box if the URL copy upload source type is not selected var e = document.getElementById( 'wpSourceTypeurl' ); if( e ) { @@ -34,49 +38,51 @@ window.wgUploadSetup = function() { } } } - - + // AJAX wpDestFile warnings - if ( wgAjaxUploadDestCheck ) { + if ( ajaxUploadDestCheck ) { // Insert an event handler that fetches upload warnings when wpDestFile // has been changed - document.getElementById( 'wpDestFile' ).onchange = function ( e ) { + document.getElementById( 'wpDestFile' ).onchange = function ( e ) { wgUploadWarningObj.checkNow(this.value); }; - // Insert a row where the warnings will be displayed just below the + // Insert a row where the warnings will be displayed just below the // wpDestFile row var optionsTable = document.getElementById( 'mw-htmlform-description' ).tBodies[0]; var row = optionsTable.insertRow( 1 ); var td = document.createElement( 'td' ); td.id = 'wpDestFile-warning'; td.colSpan = 2; - + row.appendChild( td ); } - + var wpLicense = document.getElementById( 'wpLicense' ); - if ( wgAjaxLicensePreview && wpLicense ) { + if ( mw.config.get( 'wgAjaxLicensePreview' ) && wpLicense ) { // License selector check wpLicense.onchange = licenseSelectorCheck; - + // License selector table row var wpLicenseRow = wpLicense.parentNode.parentNode; var wpLicenseTbody = wpLicenseRow.parentNode; - + var row = document.createElement( 'tr' ); var td = document.createElement( 'td' ); row.appendChild( td ); td = document.createElement( 'td' ); td.id = 'mw-license-preview'; row.appendChild( td ); - + wpLicenseTbody.insertBefore( row, wpLicenseRow.nextSibling ); } - - + + // fillDestFile setup - for ( var i = 0; i < wgUploadSourceIds.length; i++ ) - document.getElementById( wgUploadSourceIds[i] ).onchange = function (e) { + var i, + uploadSourceIds = mw.config.get( 'wgUploadSourceIds' ), + len = uploadSourceIds.length; + for ( i = 0; i < len; i += 1 ) + document.getElementById( uploadSourceIds[i] ).onchange = function (e) { fillDestFilename( this.id ); }; }; @@ -90,7 +96,7 @@ window.wgUploadWarningObj = { 'timeoutID': false, 'keypress': function () { - if ( !wgAjaxUploadDestCheck || !sajax_init_object() ) return; + if ( !ajaxUploadDestCheck || !sajax_init_object() ) return; // Find file to upload var destFile = document.getElementById('wpDestFile'); @@ -115,7 +121,7 @@ window.wgUploadWarningObj = { }, 'checkNow': function (fname) { - if ( !wgAjaxUploadDestCheck || !sajax_init_object() ) return; + if ( !ajaxUploadDestCheck || !sajax_init_object() ) return; if ( this.timeoutID ) { window.clearTimeout( this.timeoutID ); } @@ -124,7 +130,7 @@ window.wgUploadWarningObj = { }, 'timeout' : function() { - if ( !wgAjaxUploadDestCheck || !sajax_init_object() ) return; + if ( !ajaxUploadDestCheck || !sajax_init_object() ) return; injectSpinner( document.getElementById( 'wpDestFile' ), 'destcheck' ); // Get variables into local scope so that they will be preserved for the @@ -150,7 +156,7 @@ window.wgUploadWarningObj = { var ackElt = document.getElementsByName( 'wpDestFileWarningAck' ); this.setInnerHTML(warningElt, warning); - + // Set a value in the form indicating that the warning is acknowledged and // doesn't need to be redisplayed post-upload if ( warning == '' || warning == ' ' ) { @@ -169,7 +175,7 @@ window.wgUploadWarningObj = { }; window.fillDestFilename = function(id) { - if (!wgUploadAutoFill) { + if ( !mw.config.get( 'wgUploadAutoFill' ) ) { return; } if (!document.getElementById) { @@ -196,14 +202,14 @@ window.fillDestFilename = function(id) { } // Clear the filename if it does not have a valid extension. - // URLs are less likely to have a useful extension, so don't include them in the + // URLs are less likely to have a useful extension, so don't include them in the // extension check. - if( wgStrictFileExtensions && wgFileExtensions && id != 'wpUploadFileURL' ) { + if ( mw.config.get( 'wgStrictFileExtensions' ) && fileExtensions && id !== 'wpUploadFileURL' ) { var found = false; - if( fname.lastIndexOf( '.' ) != -1 ) { + if ( fname.lastIndexOf( '.' ) !== -1 ) { var ext = fname.substr( fname.lastIndexOf( '.' ) + 1 ); - for( var i = 0; i < wgFileExtensions.length; i++ ) { - if( wgFileExtensions[i].toLowerCase() == ext.toLowerCase() ) { + for ( var i = 0; i < fileExtensions.length; i += 1 ) { + if ( fileExtensions[i].toLowerCase() === ext.toLowerCase() ) { found = true; break; } @@ -230,7 +236,7 @@ window.fillDestFilename = function(id) { // Replace spaces by underscores fname = fname.replace( / /g, '_' ); // Capitalise first letter if needed - if ( wgCapitalizeUploads ) { + if ( mw.config.get( 'wgCapitalizeUploads' ) ) { fname = fname.charAt( 0 ).toUpperCase().concat( fname.substring( 1, 10000 ) ); } @@ -254,7 +260,7 @@ window.wgUploadLicenseObj = { 'responseCache' : { '' : '' }, 'fetchPreview': function( license ) { - if( !wgAjaxLicensePreview ) return; + if ( !mw.config.get( 'wgAjaxLicensePreview' ) ) return; for (cached in this.responseCache) { if (cached == license) { this.showPreview( this.responseCache[license] ); @@ -262,15 +268,15 @@ window.wgUploadLicenseObj = { } } injectSpinner( document.getElementById( 'wpLicense' ), 'license' ); - + var title = document.getElementById('wpDestFile').value; if ( !title ) title = 'File:Sample.jpg'; - - var url = wgScriptPath + '/api' + wgScriptExtension + + var url = mw.util.wikiScript( 'api' ) + '?action=parse&text={{' + encodeURIComponent( license ) + '}}' - + '&title=' + encodeURIComponent( title ) + + '&title=' + encodeURIComponent( title ) + '&prop=text&pst&format=json'; - + var req = sajax_init_object(); req.onreadystatechange = function() { if ( req.readyState == 4 && req.status == 200 ) @@ -284,7 +290,6 @@ window.wgUploadLicenseObj = { removeSpinner( 'license' ); this.responseCache[license] = result['parse']['text']['*']; this.showPreview( this.responseCache[license] ); - }, 'showPreview' : function( preview ) { @@ -295,4 +300,6 @@ window.wgUploadLicenseObj = { }; -addOnloadHook( wgUploadSetup ); +$( document ).ready( uploadSetup ); + +}() ); diff --git a/skins/common/wikibits.js b/skins/common/wikibits.js index 5cb037be..8f47499c 100644 --- a/skins/common/wikibits.js +++ b/skins/common/wikibits.js @@ -1,4 +1,7 @@ -// MediaWiki JavaScript support functions +/** + * MediaWiki legacy wikibits + */ +(function(){ window.clientPC = navigator.userAgent.toLowerCase(); // Get client info window.is_gecko = /gecko/.test( clientPC ) && @@ -46,9 +49,6 @@ if ( /msie ([0-9]{1,}[\.0-9]{0,})/.exec( clientPC ) != null ie6_bugs = true; } -// Global external objects used by this script. -/*extern ta, stylepath, skin */ - // add any onload functions in this hook (please don't hard-code any events in the xhtml source) window.doneOnloadHook = undefined; @@ -66,9 +66,8 @@ window.addOnloadHook = function( hookFunct ) { }; window.importScript = function( page ) { - // TODO: might want to introduce a utility function to match wfUrlencode() in PHP - var uri = wgScript + '?title=' + - encodeURIComponent(page.replace(/ /g,'_')).replace(/%2F/ig,'/').replace(/%3A/ig,':') + + var uri = mw.config.get( 'wgScript' ) + '?title=' + + mw.util.wikiUrlencode( page ) + '&action=raw&ctype=text/javascript'; return importScriptURI( uri ); }; @@ -87,7 +86,7 @@ window.importScriptURI = function( url ) { }; window.importStylesheet = function( page ) { - return importStylesheetURI( wgScript + '?action=raw&ctype=text/css&title=' + encodeURIComponent( page.replace(/ /g,'_') ) ); + return importStylesheetURI( mw.config.get( 'wgScript' ) + '?action=raw&ctype=text/css&title=' + mw.util.wikiUrlencode( page ) ); }; window.importStylesheetURI = function( url, media ) { @@ -116,20 +115,20 @@ window.appendCSS = function( text ) { }; // Special stylesheet links for Monobook only (see bug 14717) -if ( typeof stylepath != 'undefined' && skin == 'monobook' ) { +var skinpath = mw.config.get( 'stylepath' ) + '/' + mw.config.get( 'skin' ); +if ( mw.config.get( 'skin' ) === 'monobook' ) { if ( opera6_bugs ) { - importStylesheetURI( stylepath + '/' + skin + '/Opera6Fixes.css' ); + importStylesheetURI( skinpath + '/Opera6Fixes.css' ); } else if ( opera7_bugs ) { - importStylesheetURI( stylepath + '/' + skin + '/Opera7Fixes.css' ); + importStylesheetURI( skinpath + '/Opera7Fixes.css' ); } else if ( opera95_bugs ) { - importStylesheetURI( stylepath + '/' + skin + '/Opera9Fixes.css' ); + importStylesheetURI( skinpath + '/Opera9Fixes.css' ); } else if ( ff2_bugs ) { - importStylesheetURI( stylepath + '/' + skin + '/FF2Fixes.css' ); + importStylesheetURI( skinpath + '/FF2Fixes.css' ); } } - -if ( 'wgBreakFrames' in window && window.wgBreakFrames ) { +if ( mw.config.get( 'wgBreakFrames' ) ) { // Un-trap us from framesets if ( window.top != window ) { window.top.location = window.location; @@ -319,7 +318,7 @@ window.addPortletLink = function( portlet, href, text, id, tooltip, accesskey, n link.setAttribute( 'title', tooltip ); } if ( accesskey && tooltip ) { - updateTooltipAccessKeys( new Array( link ) ); + updateTooltipAccessKeys( [link] ); } if ( nextnode && nextnode.parentNode == node ) { @@ -367,11 +366,6 @@ window.getInnerText = function( el ) { return str; }; -/* Dummy for deprecated function */ -window.ta = []; -window.akeytt = function( doId ) { -}; - window.checkboxes = undefined; window.lastCheckbox = undefined; @@ -445,7 +439,7 @@ window.checkboxClickHandler = function( e ) { From http://www.robertnyman.com/2005/11/07/the-ultimate-getelementsbyclassname/ */ window.getElementsByClassName = function( oElm, strTagName, oClassNames ) { - var arrReturnElements = new Array(); + var arrReturnElements = []; if ( typeof( oElm.getElementsByClassName ) == 'function' ) { /* Use a native implementation where possible FF3, Saf3.2, Opera 9.5 */ var arrNativeReturn = oElm.getElementsByClassName( oClassNames ); @@ -460,7 +454,7 @@ window.getElementsByClassName = function( oElm, strTagName, oClassNames ) { return arrReturnElements; } var arrElements = ( strTagName == '*' && oElm.all ) ? oElm.all : oElm.getElementsByTagName( strTagName ); - var arrRegExpClassNames = new Array(); + var arrRegExpClassNames = []; if( typeof oClassNames == 'object' ) { for( var i = 0; i < oClassNames.length; i++ ) { arrRegExpClassNames[arrRegExpClassNames.length] = @@ -581,7 +575,7 @@ window.jsMsg = function( message, className ) { window.injectSpinner = function( element, id ) { var spinner = document.createElement( 'img' ); spinner.id = 'mw-spinner-' + id; - spinner.src = stylepath + '/common/images/spinner.gif'; + spinner.src = mw.config.get( 'stylepath' ) + '/common/images/spinner.gif'; spinner.alt = spinner.title = '...'; if( element.nextSibling ) { element.parentNode.insertBefore( spinner, element.nextSibling ); @@ -666,5 +660,7 @@ window.removeHandler = function( element, remove, handler ) { hookEvent( 'load', runOnloadHook ); if ( ie6_bugs ) { - importScriptURI( stylepath + '/common/IEFixes.js' ); -}
\ No newline at end of file + importScriptURI( mw.config.get( 'stylepath' ) + '/common/IEFixes.js' ); +} + +})(); diff --git a/skins/common/wikiprintable.css b/skins/common/wikiprintable.css index a80c8307..95fcfef3 100644 --- a/skins/common/wikiprintable.css +++ b/skins/common/wikiprintable.css @@ -6,41 +6,54 @@ body { } /* MSIE/Win doesn't understand 'inherit' */ -a, a.external, a.new, a.stub { - color: black ! important; - text-decoration: none ! important; +a, +a.external, +a.new, +a.stub { + color: black !important; + text-decoration: none !important; } #article { - margin: 0 ! important; + margin: 0 !important; } /* Continue ... */ -a, a.external, a.new, a.stub { - color: inherit ! important; - text-decoration: inherit ! important; +a, +a.external, +a.new, +a.stub { + color: inherit !important; + text-decoration: inherit !important; } -/* Hide ugly UI stuff */ -#quickbar, #topbar, #logo, #footer, #siteNotice, -.editsection, .toctoggle { +/* Hide UI stuff */ +#quickbar, +#topbar, +#logo, +#footer, +#siteNotice, +.editsection, +.toctoggle { display: none; } /* */ #article { position: relative; - margin: inherit ! important; + margin: inherit !important; } .printfooter { border-top: solid 1px black; - display: block ! important; + display: block !important; } -/* Old stuff, fixme: +/* Old stuff. @todo FIXME: a.CBlink { color: #0000AA; text-decoration: none; font-size: 12pt; } -a.interwiki, a.external { color: #3333BB; text-decoration: none; } +a.interwiki, +a.external { color: #3333BB; text-decoration: none; } h1.pagetitle { padding-bottom: 0; margin-bottom: 0; } -i.link, u.link { color: #000066; } +i.link, +u.link { color: #000066; } p.subtitle { padding-top: 0; margin-top: 0; } */ diff --git a/skins/common/wikistandard.css b/skins/common/wikistandard.css index 62050922..e47dc42d 100644 --- a/skins/common/wikistandard.css +++ b/skins/common/wikistandard.css @@ -39,13 +39,14 @@ } /* Table of contents */ -.toctoggle, .editsection { +.toctoggle, +.editsection { font-size: smaller; } /* ... */ #toolbar { - padding: 0px; + padding: 0; } #infobox { @@ -57,7 +58,8 @@ margin-top: 1px; } -a.interwiki, a.external { +a.interwiki, +a.external { color: #3366BB; } @@ -75,7 +77,7 @@ a:visited { } body { - margin: 0px; + margin: 0; padding: 4px; color: black; } diff --git a/skins/modern/main.css b/skins/modern/main.css index 910a53bc..17481562 100644 --- a/skins/modern/main.css +++ b/skins/modern/main.css @@ -1,7 +1,6 @@ body { margin: 0 0 0 0; padding: 0 0 0 0; - /*font-size: 10pt;*/ font-size: x-small; @@ -371,9 +370,6 @@ h1, h2, h3, h4, h5, h6 { border: none; } -#preferences h2 { -} - .mainLegend { display: none; } @@ -428,7 +424,7 @@ h1, h2, h3, h4, h5, h6 { background: url(mail_icon.gif) center right no-repeat; padding-right: 18px; } -#mw_content a.external[href ^="news://"] { +#mw_content a.external[href ^="news:"] { /* @embed */ background: url(news_icon.png) center right no-repeat; padding-right: 18px; @@ -455,7 +451,7 @@ h1, h2, h3, h4, h5, h6 { #mw_content a.external[href $=".wma"], #mw_content a.external[href $=".WMA"], .link-audio { /* @embed */ - background: url("audio.png") center right no-repeat; + background: url(audio.png) center right no-repeat; padding-right: 13px; } #mw_content a.external[href $=".ogm"], #mw_content a.external[href $=".OGM"], @@ -464,7 +460,7 @@ h1, h2, h3, h4, h5, h6 { #mw_content a.external[href $=".mpg"], #mw_content a.external[href $=".MPG"], .link-video { /* @embed */ - background: url("video.png") center right no-repeat; + background: url(video.png) center right no-repeat; padding-right: 13px; } #mw_content a.external[href $=".pdf"], #mw_content a.external[href $=".PDF"], @@ -472,7 +468,7 @@ h1, h2, h3, h4, h5, h6 { #mw_content a.external[href *=".pdf?"], #mw_content a.external[href *=".PDF?"], .link-document { /* @embed */ - background: url("document.png") center right no-repeat; + background: url(document.png) center right no-repeat; padding-right: 12px; } @@ -480,22 +476,18 @@ h1, h2, h3, h4, h5, h6 { /* @noflip */div.floatright, table.floatright { margin: 0 0 .5em .5em; border: 0; -/* - border: .5em solid white; - border-width: .5em 0 .8em 1.4em; -*/ } -div.floatright p { font-style: italic; } +div.floatright p { + font-style: italic; +} /* @noflip */div.floatleft, table.floatleft { margin: 0 .5em .5em 0; border: 0; -/* - margin: .3em .5em .5em 0; - border: .5em solid white; - border-width: .5em 1.4em .8em 0; -*/ } -div.floatleft p { font-style: italic; } +div.floatleft p { + font-style: italic; +} + /* thumbnails */ div.thumb { margin-bottom: .5em; @@ -704,17 +696,17 @@ div.noarticletext { } div#searchTargetContainer { - left: 10px; - top: 10px; - width: 90%; + left: 10px; + top: 10px; + width: 90%; background: white; } div#searchTarget { - padding: 3px; - margin: 5px; + padding: 3px; + margin: 5px; background: #F0F0F0; - border: solid 1px blue; + border: solid 1px blue; } div#searchTarget ul li { @@ -729,7 +721,7 @@ div#searchTarget ul li:before { div#searchTargetHide { float: right; border: solid 1px black; - background: gainsboro; + background: #DCDCDC; padding: 2px; } @@ -754,7 +746,9 @@ table.multipageimage td { text-align: center; } -.templatesUsed { margin-top: 1.5em; } +.templatesUsed { + margin-top: 1.5em; +} .mw-summary-preview { margin: 0.1em 0; diff --git a/skins/monobook/IE50Fixes.css b/skins/monobook/IE50Fixes.css deleted file mode 100644 index a054a91f..00000000 --- a/skins/monobook/IE50Fixes.css +++ /dev/null @@ -1,67 +0,0 @@ -/* -** IE5.0 Fix Stylesheet -*/ - -div#column-content { - margin: 0 !important; - float: none; -} -div#column-content #content { - margin-top: 3em; - height: 1%; -} -div#column-one { - position: absolute; - overflow: visible; - top: 0; - left: 0; - z-index: 3; -} -div#footer { - margin: 0 0 0 13.6em; -} - -/* IE 5 & 5.5 interpret keyword sizes one off */ -body { font-size: xx-small; } -/* -** the edit tabs -*/ -#p-cactions li { - float: left; - padding-top: 0; - padding-bottom: 0 !important; - height: 0.9em; -} -#p-cactions li a { - display: block; - padding-bottom: 0.045em; -} -#p-cactions li.selected a { - padding-bottom: 0.17em; -} -#p-cactions li a:hover { - padding-bottom: 0.17em; -} -/* 5.0 doesn't like the background icon for external links and user */ -.link-external, -.external { - background: none; - padding: 0; -} -#p-personal ul { float: right } -#p-personal li { float: left } -li#pt-userpage, -li#pt-anonuserpage, -li#pt-login, -li#pt-logout { - background: none; - padding-left: none; -} -.visualClear { - width: 100%; - height: 0px; - padding:0; - margin: 0; -} -#firstHeading { margin-bottom: .3em; } -/*div{ border:1px solid Red !important;}*/ diff --git a/skins/monobook/IE55Fixes.css b/skins/monobook/IE55Fixes.css deleted file mode 100644 index f3c2cde7..00000000 --- a/skins/monobook/IE55Fixes.css +++ /dev/null @@ -1,85 +0,0 @@ -/* IE5.5/win- only fixes */ - -div#column-content { - float: none; - margin-left: 0; - height: 1%; -} -div#column-content #content { - position: relative; - z-index: 5; - margin-left: 12.2em; - margin-top: 3em; - height: 1%; -} -div#column-one { - position: absolute; - top: 0; - left: 0; - z-index: 4; - width: 100%; -} -div#footer { - margin-left: 13.6em; - border-left: 1px solid #fabd23; -} - -/*#bodyContent div, -#bodyContent pre { overflow: auto; }*/ - -#p-personal { padding-bottom: .1em; } - -body { font-size: xx-small; } - -#p-cactions { - width: 76% !important; - z-index: 3 !important; - float: none; -} -#p-cactions li { - padding-bottom: 0 !important; - border: none; - background-color: transparent; - cursor: default; - float: none !important; -} -#p-cactions li a { - display: inline-block !important; - vertical-align: top; - padding-bottom: 0; - border: solid #aaa; - border-width: 1px 1px 0; -} -#p-cactions li.selected a { - border-color: #fabd23; - padding-bottom: 0.17em; -} -#p-cactions li a:hover { - padding-bottom: 0.17em; -} -#p-navigation a { - display: inline-block; - width: 100%; -} -.portlet { - overflow: hidden; -} -#bodyContent a.external { - background: url(external.png) center right no-repeat; - padding-right: 13px; -} -/* show the hand */ -#p-logo a, -#p-logo a:hover { - cursor: pointer; -} -.visualClear { - width: 90%; - height: 1px; - padding: 0; - margin: 0; -} - -#editform { - width: 100%; -} diff --git a/skins/monobook/IE60Fixes.css b/skins/monobook/IE60Fixes.css index 3bcd0479..ec1ce430 100644 --- a/skins/monobook/IE60Fixes.css +++ b/skins/monobook/IE60Fixes.css @@ -36,9 +36,6 @@ div#footer { border-right: 1px solid #fabd23; } - /* the tabs */ - - /* the tabs */ #p-cactions { diff --git a/skins/monobook/IE70Fixes.css b/skins/monobook/IE70Fixes.css index fc009e6e..e8d3a8f8 100644 --- a/skins/monobook/IE70Fixes.css +++ b/skins/monobook/IE70Fixes.css @@ -8,8 +8,10 @@ div#column-content div#content { margin-top: 3em; height: 1%; } - -.rtl div#column-content div#content { margin-right: 12.2em; margin-left: 0; } +.rtl div#column-content div#content { + margin-right: 12.2em; + margin-left: 0; +} .rtl div#column-one { diff --git a/skins/monobook/main.css b/skins/monobook/main.css index edf79abb..9a8eac1c 100644 --- a/skins/monobook/main.css +++ b/skins/monobook/main.css @@ -59,135 +59,21 @@ div#globalWrapper { } /* general styles */ - -table { - font-size: 100%; -} a { - text-decoration: none; color: #002bb8; - background: none; } a:visited { color: #5a3696; } -a:active { - color: #faa700; -} -a:hover { - text-decoration: underline; -} -a.stub { - color: #772233; -} -a.new, #p-personal a.new { +a.new, +#p-personal a.new { color: #cc2200; } -a.new:visited, #p-personal a.new:visited { - color: #a55858; -} - -img { - border: none; - vertical-align: middle; -} -p { - margin: .4em 0 .5em 0; - line-height: 1.5em; -} -p img { - margin: 0; -} - -hr { - height: 1px; - color: #aaa; - background-color: #aaa; - border: 0; - margin: .2em 0 .2em 0; -} - -h1, h2, h3, h4, h5, h6 { - color: black; - background: none; - font-weight: normal; - margin: 0; - overflow: hidden; - padding-top: .5em; - padding-bottom: .17em; - border-bottom: 1px solid #aaa; -} -h1 { font-size: 188%; } -h1 .editsection { font-size: 53%; } -h2 { font-size: 150%; } -h2 .editsection { font-size: 67%; } -h3, h4, h5, h6 { - border-bottom: none; - font-weight: bold; -} -h3 { font-size: 132%; } -h3 .editsection { font-size: 76%; font-weight: normal; } -h4 { font-size: 116%; } -h4 .editsection { font-size: 86%; font-weight: normal; } -h5 { font-size: 100%; } -h5 .editsection { font-weight: normal; } -h6 { font-size: 80%; } -h6 .editsection { font-size: 125%; font-weight: normal; } ul { - line-height: 1.5em; - list-style-type: square; - margin: .3em 0 0 1.5em; - padding: 0; /* @embed */ list-style-image: url(bullet.gif); } -ol { - line-height: 1.5em; - margin: .3em 0 0 3.2em; - padding: 0; - list-style-image: none; -} -li { - margin-bottom: .1em; -} -dt { - font-weight: bold; - margin-bottom: .1em; -} -dl { - margin-top: .2em; - margin-bottom: .5em; -} -dd { - line-height: 1.5em; - margin-left: 2em; - margin-bottom: .1em; -} - -fieldset { - border: 1px solid #2f6fab; - margin: 1em 0 1em 0; - padding: 0 1em 1em; - line-height: 1.5em; -} -fieldset.nested { - margin: 0 0 0.5em 0; - padding: 0 0.5em 0.5em; -} -legend { - padding: .5em; - font-size: 95%; -} -form { - border: none; - margin: 0; -} - -textarea { - width: 100%; - padding: .1em; -} input.historysubmit { padding: 0 .3em .3em .3em !important; @@ -196,26 +82,8 @@ input.historysubmit { height: 1.7em !important; margin-left: 1.6em; } -select { - vertical-align: top; -} -q { - font-family: Times, "Times New Roman", serif; - font-style: italic; -} -/* disabled for now -blockquote { - font-family: Times, "Times New Roman", serif; - font-style: italic; -}*/ -code { - background-color: #f9f9f9; -} + pre { - padding: 1em; - border: 1px dashed #2f6fab; - color: black; - background-color: #f9f9f9; line-height: 1.1em; } @@ -223,211 +91,16 @@ pre { ** the main content area */ -#siteSub { - display: none; -} -#jump-to-nav { - display: none; -} - -#contentSub, #contentSub2 { - font-size: 84%; - line-height: 1.2em; - margin: 0 0 1.4em 1em; - color: #7d7d7d; - width: auto; -} -span.subpages { - display: block; -} - -/* Some space under the headers in the content area */ -#bodyContent h1, #bodyContent h2 { - margin-bottom: .6em; -} -#bodyContent h3, #bodyContent h4, #bodyContent h5 { - margin-bottom: .3em; -} -#firstHeading { - margin-bottom: .1em; - /* These two rules hack around bug 2013 (fix for more limited bug 11325). - When bug 2013 is fixed properly, they should be removed. */ - line-height: 1.2em; - padding-bottom: 0; -} - -/* user notification thing */ -.usermessage { - background-color: #ffce7b; - border: 1px solid #ffa500; - color: black; - font-weight: bold; - margin: 2em 0 1em; - padding: .5em 1em; - vertical-align: middle; -} #siteNotice { - position: relative; - text-align: center; font-size: 95%; padding: 0 0.9em; } -#siteNotice p { +#localNotice { margin: 0; - padding: 0; } - -.catlinks { - border: 1px solid #aaa; - background-color: #f9f9f9; - padding: 5px; - margin-top: 1em; - clear: both; -} -/* currently unused, intended to be used by a metadata box -in the bottom-right corner of the content area */ -.documentDescription { - /* The summary text describing the document */ - font-weight: bold; - display: block; - margin: 1em 0; - line-height: 1.5em; -} -.documentByLine { - text-align: right; - font-size: 90%; - clear: both; - font-weight: normal; - color: #76797c; -} - -/* emulate center */ -.center { - width: 100%; - text-align: center; -} -*.center * { - margin-left: auto; - margin-right: auto; -} -/* small for tables and similar */ -.small { - font-size: 94%; -} -table.small { - font-size: 100%; -} - -/* -** content styles -*/ - -#toc, -.toc, -.mw-warning { - border: 1px solid #aaa; - background-color: #f9f9f9; - padding: 5px; - font-size: 95%; -} -#toc h2, -.toc h2 { - display: inline; - border: none; - padding: 0; - font-size: 100%; - font-weight: bold; -} -#toc #toctitle, -.toc #toctitle, -#toc .toctitle, -.toc .toctitle { - text-align: center; -} -#toc ul, -.toc ul { - list-style-type: none; - list-style-image: none; - margin-left: 0; +#siteNotice p { + margin: 0; padding: 0; - text-align: left; -} -#toc ul ul, -.toc ul ul { - margin: 0 0 0 2em; -} -#toc .toctoggle, -.toc .toctoggle { - font-size: 94%; -} - -.mw-warning { - margin-left: 50px; - margin-right: 50px; - text-align: center; -} - -/* images */ -/* @noflip */div.floatright, table.floatright { - margin: 0 0 .5em .5em; - border: 0; -/* - border: .5em solid white; - border-width: .5em 0 .8em 1.4em; -*/ -} -div.floatright p { font-style: italic; } -/* @noflip */div.floatleft, table.floatleft { - margin: 0 .5em .5em 0; - border: 0; -/* - margin: .3em .5em .5em 0; - border: .5em solid white; - border-width: .5em 1.4em .8em 0; -*/ -} -div.floatleft p { font-style: italic; } -/* thumbnails */ -div.thumb { - margin-bottom: .5em; - width: auto; -} -div.thumbinner { - border: 1px solid #ccc; - padding: 3px !important; - background-color: #f9f9f9; - font-size: 94%; - text-align: center; - overflow: hidden; -} -html .thumbimage { - border: 1px solid #ccc; -} -html .thumbcaption { - border: none; - text-align: left; - line-height: 1.4em; - padding: 3px !important; - font-size: 94%; -} -div.magnify { - float: right; - border: none !important; - background: none !important; -} -div.magnify a, div.magnify img { - display: block; - border: none !important; - background: none !important; -} -/* @noflip */div.tright { - margin: .5em 0 1.3em 1.4em; -} -/* @noflip */div.tleft { - margin: .5em 1.4em 1.3em 0; -} -img.thumbborder { - border: 1px solid #dddddd; } /* @@ -446,12 +119,6 @@ table.rimage { margin-bottom: 1em; text-align: center; } -.toccolours { - border: 1px solid #aaa; - background-color: #f9f9f9; - padding: 5px; - font-size: 95%; -} /* ** edit views etc @@ -484,7 +151,7 @@ table.rimage { background: url(mail_icon.gif) center right no-repeat; padding-right: 18px; } -#bodyContent a.external[href ^="news://"] { +#bodyContent a.external[href ^="news:"] { /* @embed */ background: url(news_icon.png) center right no-repeat; padding-right: 18px; @@ -510,7 +177,7 @@ table.rimage { #bodyContent a.external[href $=".wma"], #bodyContent a.external[href $=".WMA"], .link-audio { /* @embed */ - background: url("audio.png") center right no-repeat; + background: url(audio.png) center right no-repeat; padding-right: 13px; } #bodyContent a.external[href $=".ogm"], #bodyContent a.external[href $=".OGM"], @@ -519,7 +186,7 @@ table.rimage { #bodyContent a.external[href $=".mpg"], #bodyContent a.external[href $=".MPG"], .link-video { /* @embed */ - background: url("video.png") center right no-repeat; + background: url(video.png) center right no-repeat; padding-right: 13px; } #bodyContent a.external[href $=".pdf"], #bodyContent a.external[href $=".PDF"], @@ -527,35 +194,20 @@ table.rimage { #bodyContent a.external[href *=".pdf?"], #bodyContent a.external[href *=".PDF?"], .link-document { /* @embed */ - background: url("document.png") center right no-repeat; + background: url(document.png) center right no-repeat; padding-right: 12px; } - + /* Interwiki Styling */ #bodyContent a.extiw, #bodyContent a.extiw:active { color: #36b; - /* Don't show icons for interwiki links */ - background: none; - padding: 0; -} -#bodyContent a.extiw:visited { - color: #636; -} -#bodyContent a.extiw:active { - color: #b63; } /* External links */ #bodyContent a.external { color: #36b; } -#bodyContent a.external:visited { - color: #636; /* bug 3112 */ -} -#bodyContent a.external:active { - color: #b63; -} /* ** Structural Elements @@ -839,7 +491,10 @@ li#pt-login { li#ca-talk { margin-right: 1.6em; } -li#ca-watch, li#ca-unwatch, li#ca-varlang-0, li#ca-print { +li#ca-watch, +li#ca-unwatch, +li#ca-varlang-0, +li#ca-print { margin-left: 1.6em; } #p-cactions .pBody { @@ -997,8 +652,8 @@ td.htmlform-tip { margin-top: 2em; } -div#userloginForm form, -div#userlogin form#userlogin2 { +div#userloginForm, +div#userlogin { margin: 0 3em 1em 0; border: 1px solid #aaa; clear: both; @@ -1008,12 +663,12 @@ div#userlogin form#userlogin2 { } div#userloginForm table, -div#userlogin form#userlogin2 table { +div#userlogin table { background-color: #f9f9f9; } div#userloginForm h2, -div#userlogin form#userlogin2 h2 { +div#userlogin h2 { padding-top: 0; } @@ -1052,15 +707,21 @@ div#userloginForm .captcha { ** @import("IEMacFixes.css"); */ /* tabs: border on the a, not the div */ -* > html #p-cactions li { border: none; } +* > html #p-cactions li { + border: none; +} * > html #p-cactions li a { border: 1px solid #aaa; border-bottom: none; } -* > html #p-cactions li.selected a { border-color: #fabd23; } +* > html #p-cactions li.selected a { + border-color: #fabd23; +} /* footer icons need a fixed width */ * > html #f-poweredbyico, -* > html #f-copyrightico { width: 88px; } +* > html #f-copyrightico { + width: 88px; +} * > html #bodyContent, * > html #bodyContent pre { overflow-x: auto; @@ -1070,12 +731,16 @@ div#userloginForm .captcha { /* more IE fixes */ /* float/negative margin brokenness */ -* html div#footer {margin-top: 0;} +* html div#footer { + margin-top: 0; +} * html div#column-content { display: inline; margin-bottom: 0; } -#pagehistory li.selected { position: relative; } +#pagehistory li.selected { + position: relative; +} /* Mac IE 5.0 fix; floated content turns invisible */ * > html div#column-content { @@ -1131,7 +796,8 @@ span.updatedmarker { } /* @bug 1714 */ -input#wpSave, input#wpDiff { +input#wpSave, +input#wpDiff { margin-right: 0.33em; } @@ -1148,17 +814,17 @@ div.noarticletext { } div#searchTargetContainer { - left: 10px; - top: 10px; - width: 90%; + left: 10px; + top: 10px; + width: 90%; background: white; } div#searchTarget { - padding: 3px; - margin: 5px; + padding: 3px; + margin: 5px; background: #F0F0F0; - border: solid 1px blue; + border: solid 1px blue; } div#searchTarget ul li { @@ -1171,10 +837,10 @@ div#searchTarget ul li:before { } div#searchTargetHide { - float:right; - border:solid 1px black; - background:#DCDCDC; - padding:2px; + float: right; + border: solid 1px black; + background: #DCDCDC; + padding: 2px; } #powersearch p { @@ -1202,7 +868,9 @@ table.multipageimage td { text-align: center; } -.templatesUsed { margin-top: 1.5em; } +.templatesUsed { + margin-top: 1.5em; +} .mw-summary-preview { margin: 0.1em 0; diff --git a/skins/nostalgia/screen.css b/skins/nostalgia/screen.css index 1cac7a73..d6183623 100644 --- a/skins/nostalgia/screen.css +++ b/skins/nostalgia/screen.css @@ -1,5 +1,5 @@ body { - /* Background color is set separately on page type */ + /* background color is set separately on page type */ color: black; } @@ -14,7 +14,8 @@ body { padding: 2px; } -a.interwiki, a.external { +a.interwiki, +a.external { color: #3366BB; } diff --git a/skins/simple/main.css b/skins/simple/main.css index b4b24d23..3e086586 100644 --- a/skins/simple/main.css +++ b/skins/simple/main.css @@ -1,12 +1,26 @@ -/* For clarity, explicitly state some recommendations from <http://www.w3.org/ - TR/CSS21/sample.html> to make sure the editsection links scale right */ +/** + * For clarity, explicitly state some recommendations from + * http://www.w3.org/TR/CSS21/sample.html to make sure the editsection links scale right. + */ -h1 { font-size: 2em; } -h2 { font-size: 1.5em; } -h3 { font-size: 1.17em; } -h5 { font-size: .83em; } -h6 { font-size: .75em; } -h1, h2, h3, h4, h5, h6 { font-weight: bolder } +h1 { + font-size: 2em; +} +h2 { + font-size: 1.5em; +} +h3 { + font-size: 1.17em; +} +h5 { + font-size: .83em; +} +h6 { + font-size: .75em; +} +h1, h2, h3, h4, h5, h6 { + font-weight: bolder; +} /* Now the custom parts */ @@ -14,296 +28,321 @@ h1, h2, h3, h4, h5, h6 { font-weight: bolder } .editsection { font-weight: normal; } -h1 .editsection { font-size: 50% } -h2 .editsection { font-size: 66.7% } -h3 .editsection { font-size: 85.5% } -h5 .editsection { font-size: 120% } -h6 .editsection { font-size: 133% } - +h1 .editsection { + font-size: 50%; +} +h2 .editsection { + font-size: 66.7%; +} +h3 .editsection { + font-size: 85.5%; +} +h5 .editsection { + font-size: 120%; +} +h6 .editsection { + font-size: 133%; +} #toolbar { - display: none; + display: none; } div.center { - text-align: center; + text-align: center; } #contentSub { - padding-left: 2em; + padding-left: 2em; } a { - text-decoration: none; + text-decoration: none; } a:hover { - text-decoration: underline; + text-decoration: underline; } #column-content { - width: 100%; - float: right; - margin: 0 0 0.6em -12.2em; - padding:0; + width: 100%; + float: right; + margin: 0 0 0.6em -12.2em; + padding: 0; } #content { - margin: 0em 0 0 12.2em; - padding: 0em 1em 1.5em 1em; - border-left: 1px solid #959595; - line-height: 1.5em; + margin: 0em 0 0 12.2em; + padding: 0em 1em 1.5em 1em; + border-left: 1px solid #959595; + line-height: 1.5em; } #column-one { - position: absolute; - top: 0px; left: 0px; -} - -#footer { - display: none; + position: absolute; + top: 0; + left: 0; } body { - margin: 0; - padding: 0; + margin: 0; + padding: 0; } #globalWrapper { - width: 100%; - height: 100%; - margin: 0; - padding: 0; + width: 100%; + height: 100%; + margin: 0; + padding: 0; +} +.visualClear { + clear: both; } -.visualClear { clear: both; } img { - border: none; + border: none; } p { - margin: 0.4em 0em 0.5em 0em; - line-height: 1.5em; + margin: 0.4em 0em 0.5em 0em; + line-height: 1.5em; +} +p img { + margin: 0; } -p img { margin: 0; } h1, h2, h3, h4, h5, h6 { - margin: 0; - padding-top: 0.5em; - padding-bottom: 0.17em; + margin: 0; + padding-top: 0.5em; + padding-bottom: 0.17em; } fieldset { - margin: 1em 0em 1em 0em; - padding: 0em 1em 1em 1em; + margin: 1em 0em 1em 0em; + padding: 0em 1em 1em 1em; } .usermessage { - background-color: #ffce7b; - border: 1px solid #ffa500; - color: Black; - font-weight: bold; - margin: 2em 0em 1em 0em; - padding: 0.5em 1em; - vertical-align: middle; + background-color: #ffce7b; + border: 1px solid #ffa500; + color: black; + font-weight: bold; + margin: 2em 0em 1em 0em; + padding: 0.5em 1em; + vertical-align: middle; } .error { - color: red; - font-size: larger; + color: red; + font-size: larger; } table.rimage { - float:right; - position:relative; - margin-left:1em; - margin-bottom:1em; - text-align:center; + float: right; + position: relative; + margin-left: 1em; + margin-bottom: 1em; + text-align: center; } .portlet { - border: none; - float: none; - padding: 0; - width: 11.8em; - overflow: hidden; + border: none; + float: none; + padding: 0; + width: 11.8em; + overflow: hidden; } .portlet h4 { - font-weight: normal; - white-space: nowrap; + font-weight: normal; + white-space: nowrap; } .portlet h5 { - padding: 0em 1em 0em 0.5em; - display: inline; - height: 1em; - font-weight: normal; - white-space: nowrap; + padding: 0em 1em 0em 0.5em; + display: inline; + height: 1em; + font-weight: normal; + white-space: nowrap; } .portlet h6 { - padding: 0em 1em 0em 1em; - display: block; - height: 1.2em; - font-weight: normal; - white-space: nowrap; + padding: 0em 1em 0em 1em; + display: block; + height: 1.2em; + font-weight: normal; + white-space: nowrap; } .pBody { - border-collapse: collapse; - padding: 0 0.8em 0.3em 0.5em; + border-collapse: collapse; + padding: 0 0.8em 0.3em 0.5em; } .portlet h1, .portlet h2, .portlet h3, .portlet h4 { - margin: 0; - padding: 0; - font-size: small; + margin: 0; + padding: 0; + font-size: small; } #p-search .pBody { - text-align: center; + text-align: center; } #searchInput { - width: 100%; - clear: both; - margin: 0 0 0 0; + width: 100%; + clear: both; + margin: 0 0 0 0; } input.searchButton { - margin-top:1px; - padding: 0 0.4em; - cursor: pointer; + margin-top: 1px; + padding: 0 0.4em; + cursor: pointer; } #p-search .pBody { - padding: 0.5em 0.4em 0.4em 0.4em; + padding: 0.5em 0.4em 0.4em 0.4em; } /* feed links */ a.feedlink { - background: url("../common/images/feed-icon.png") center left no-repeat; + background: url(../common/images/feed-icon.png) center left no-repeat; padding-left: 16px; } textarea { - width: 100%; + width: 100%; } -.pBody li, .pBody ul { +.pBody li, +.pBody ul { padding-left: 0em; margin-left: 0.5em; } pre { - margin: 2em; - border: solid 1px black; + margin: 2em; + border: solid 1px black; } -h1.firstHeading, h2 { - border-bottom: solid 1px black; +h1.firstHeading, +h2 { + border-bottom: solid 1px black; } #bodyContent a.external, #bodyContent a.external[href ^="gopher://"] { - background: url("external.png") center right no-repeat; - padding-right: 13px; + background: url(external.png) center right no-repeat; + padding-right: 13px; } #bodyContent a.external[href ^="https://"], .link-https { - background: url("lock_icon.gif") center right no-repeat; - padding-right: 16px; + background: url(lock_icon.gif) center right no-repeat; + padding-right: 16px; } #bodyContent a.external[href ^="mailto:"], .link-mailto { - background: url("mail_icon.gif") center right no-repeat; - padding-right: 18px; + background: url(mail_icon.gif) center right no-repeat; + padding-right: 18px; } -#bodyContent a.external[href ^="news://"] { - background: url("news_icon.png") center right no-repeat; - padding-right: 18px; +#bodyContent a.external[href ^="news:"] { + background: url(news_icon.png) center right no-repeat; + padding-right: 18px; } #bodyContent a.external[href ^="ftp://"], .link-ftp { - background: url("file_icon.gif") center right no-repeat; - padding-right: 18px; + background: url(file_icon.gif) center right no-repeat; + padding-right: 18px; } #bodyContent a.external[href ^="irc://"], #bodyContent a.external[href ^="ircs://"], .link-irc { - background: url("discussionitem_icon.gif") center right no-repeat; - padding-right: 18px; + background: url(discussionitem_icon.gif) center right no-repeat; + padding-right: 18px; } #bodyContent a.extiw, #bodyContent a.extiw:active { - color: #5E7CFF; + color: #5E7CFF; } td.diff-addedline { - background-color: #B9FFB0; + background-color: #B9FFB0; } td.diff-deletedline { - background-color: #f8ffaa; + background-color: #f8ffaa; } -.diffchange { background-color: #FFCDF3; text-decoration: none; } +.diffchange { + background-color: #FFCDF3; + text-decoration: none; +} -#pagehistory li { border: none; } +#pagehistory li { + border: none; +} div.tocindent { - margin-left: 2em; + margin-left: 2em; } #toc { - text-align: left; - border-top: solid 1px black; - border-bottom: solid 1px black; + text-align: left; + border-top: solid 1px black; + border-bottom: solid 1px black; } /* @noflip */div.floatright, table.floatright { - margin: 0; - border-width: 0.5em 0 0.8em 1.4em; + margin: 0; + border-width: 0.5em 0 0.8em 1.4em; +} +div.floatright p { + font-style: italic; } -div.floatright p { font-style: italic; } /* @noflip */div.floatleft, table.floatleft { - margin: 0.3em 0.5em 0.5em 0; - border-width: 0.5em 1.4em 0.8em 0; + margin: 0.3em 0.5em 0.5em 0; + border-width: 0.5em 1.4em 0.8em 0; } -div.floatleft p { font-style: italic; } +div.floatleft p { + font-style: italic; +} + /* thumbnails */ div.thumb { - margin-bottom: 0.5em; - width: auto; + margin-bottom: 0.5em; + width: auto; } div.thumbinner { - padding: 3px !important; - text-align: center; - overflow: hidden; + padding: 3px !important; + text-align: center; + overflow: hidden; } html .thumbcaption { - border: none; - text-align: left; - line-height: 1.4; - padding: 0.3em 0 0.1em 0; + border: none; + text-align: left; + line-height: 1.4; + padding: 0.3em 0 0.1em 0; } div.magnify { - float: right; - border: none !important; - background: none !important; + float: right; + border: none !important; + background: none !important; } -div.magnify a, div.magnify img { - display: block; - border: none !important; - background: none !important; +div.magnify a, +div.magnify img { + display: block; + border: none !important; + background: none !important; } /* @noflip */div.tright { - border-width: 0.5em 0 0.8em 1.4em; + border-width: 0.5em 0 0.8em 1.4em; } /* @noflip */div.tleft { - margin-right:0.5em; - border-width: 0.5em 1.4em 0.8em 0; + margin-right: 0.5em; + border-width: 0.5em 1.4em 0.8em 0; } img.thumbborder { border: 1px solid #dddddd; } -a.stub { color: #772233; } +a.stub { + color: #772233; +} a.new, #p-personal a.new { text-decoration: line-through; @@ -319,47 +358,51 @@ li.new { text-align: center; } .catlinks { - text-align: center; - width: 80%; - margin-left: auto; - margin-right: auto; - padding: 3px; + text-align: center; + width: 80%; + margin-left: auto; + margin-right: auto; + padding: 3px; } #mytabs { - background-color: inherit; + background-color: inherit; } #p-cactions { - background-color: inherit; + background-color: inherit; } div.printfooter { - display: none; + display: none; +} + +#footer { + padding-left: 11.8em; } #n-portal, #n-currentevents, #n-help, #n-sitesupport { - display: none; + display: none; } #preftoc { - float: left; - margin: 1em; - width: 13em; + float: left; + margin: 1em; + width: 13em; } #preftoc li { } #preftoc li.selected { - border: 1px dashed #aaa; + border: 1px dashed #aaa; } #preftoc a, #preftoc a:active { - display: block; + display: block; } div.htmlform-tip { - font-size: 95%; - margin-top: 1em; + font-size: 95%; + margin-top: 1em; } #mw_trackbacks { @@ -367,12 +410,14 @@ div.htmlform-tip { } #jump-to-nav { - display: none; + display: none; } table.collapsed tr.collapsable { display: none; } -.templatesUsed { margin-top: 1.5em; } +.templatesUsed { + margin-top: 1.5em; +} diff --git a/skins/vector/images/arrow-down-focus-icon.png b/skins/vector/images/arrow-down-focus-icon.png Binary files differnew file mode 100644 index 00000000..e20dc4b6 --- /dev/null +++ b/skins/vector/images/arrow-down-focus-icon.png diff --git a/skins/vector/images/arrow-down-icon.png b/skins/vector/images/arrow-down-icon.png Binary files differindex 90c907bf..437b9518 100644 --- a/skins/vector/images/arrow-down-icon.png +++ b/skins/vector/images/arrow-down-icon.png diff --git a/skins/vector/screen.css b/skins/vector/screen.css index a7428473..ded0a005 100644 --- a/skins/vector/screen.css +++ b/skins/vector/screen.css @@ -2,7 +2,7 @@ * Any rules which should not be flipped automatically in right-to-left situations should be * prepended with @noflip in a comment block. Images that should be embedded as base64 data-URLs * should be prepended with @embed in a comment block. - * + * * This style-sheet employs a few CSS trick to accomplish compatibility with a wide range of web * browsers. The most common trick is to use some styles in IE6 only. This is accomplished by using * a rule that makes things work in IE6, and then following it with a rule that begins with @@ -211,7 +211,7 @@ div#mw-head h5 { float: left; /* @embed */ background-image: url(images/arrow-down-icon.png); - background-position: 0px 60%; + background-position: 100% 60%; background-repeat: no-repeat; cursor: pointer; } @@ -293,7 +293,8 @@ div#mw-head h5 { margin-left: 23px; } /* Enable forcing showing of the menu for accessibility */ - div.vectorMenu:hover div.menu, div.vectorMenu div.menuForceShow { + div.vectorMenu:hover div.menu, + div.vectorMenu div.menuForceShow { display: block; } div.vectorMenu ul { @@ -395,7 +396,7 @@ div#mw-head h5 { div#simpleSearch input.placeholder { color: #999999; } - div#simpleSearch input::-webkit-input-placeholder { + div#simpleSearch input::-webkit-input-placeholder { color: #999999; } div#simpleSearch input#searchInput { @@ -561,7 +562,7 @@ div#footer #footer-places li { } /* - * + * * The following code is highly modified from monobook. It would be nice if the * preftoc id was more human readable like preferences-toc for instance, * howerver this would require backporting the other skins. @@ -663,26 +664,8 @@ div#footer #footer-places li { margin-right: 0.25em; } -/* - * Styles for the user login and create account forms - */ -#userlogin, #userloginForm { - border: solid 1px #cccccc; - padding: 1.2em; - margin: .5em; - float: left; -} - -#userlogin { - min-width: 20em; - max-width: 90%; - width: 40em; -} - -/* - * +/** * The following code is slightly modified from monobook - * */ div#content { line-height: 1.5em; @@ -690,349 +673,29 @@ div#content { #bodyContent { font-size: 0.8em; } -/* Links */ -a { - text-decoration: none; - color: #0645ad; - background: none; -} -a:visited { - color: #0b0080; -} -a:active { - color: #faa700; -} -a:hover, a:focus { - text-decoration: underline; -} -a.stub { - color: #772233; -} -a.new, #p-personal a.new { - color: #ba0000; -} -a.new:visited, #p-personal a.new:visited { - color: #a55858; -} -/* Inline Elements */ -img { - border: none; - vertical-align: middle; -} -hr { - height: 1px; - color: #aaa; - background-color: #aaa; - border: 0; - margin: .2em 0 .2em 0; +.editsection { + float: right; } -/* Structural Elements */ -h1, -h2, -h3, -h4, -h5, -h6 { - color: black; - background: none; - font-weight: normal; - margin: 0; - overflow: hidden; - padding-top: .5em; - padding-bottom: .17em; - border-bottom: 1px solid #aaa; - width: auto; -} -h1 { font-size: 188%; } -h1 .editsection { font-size: 53%; } -h2 { font-size: 150%; } -h2 .editsection { font-size: 67%; } -h3, -h4, -h5, -h6 { - border-bottom: none; - font-weight: bold; -} -h3 { font-size: 132%; } -h3 .editsection { font-size: 76%; font-weight: normal; } -h4 { font-size: 116%; } -h4 .editsection { font-size: 86%; font-weight: normal; } -h5 { font-size: 100%; } -h5 .editsection { font-weight: normal; } -h6 { font-size: 80%; } -h6 .editsection { font-size: 125%; font-weight: normal; } -.editsection { float: right; } -p { - margin: .4em 0 .5em 0; - line-height: 1.5em; -} -p img { - margin: 0; -} -q { - font-family: Times, "Times New Roman", serif; - font-style: italic; -} -/* Disabled for now -blockquote { - font-family: Times, "Times New Roman", serif; - font-style: italic; -}*/ -pre, code, tt, kbd, samp { - /* - * It's important for this rule to first reference an actual font name, some browsers will render the monospace text - * too small otherwise, namely Firefox, Chrome and Safari - */ - font-family: monospace, "Courier New"; -} -code { - background-color: #f9f9f9; -} -pre { - padding: 1em; - border: 1px dashed #2f6fab; - color: black; - background-color: #f9f9f9; - line-height: 1.3em; -} ul { - line-height: 1.5em; - list-style-type: square; - margin: .3em 0 0 1.5em; - padding: 0; /* @embed */ list-style-image: url(images/bullet-icon.png); } -ol { - line-height: 1.5em; - margin: .3em 0 0 3.2em; - padding: 0; - list-style-image: none; -} -li { - margin-bottom: .1em; -} -dt { - font-weight: bold; - margin-bottom: .1em; -} -dl { - margin-top: .2em; - margin-bottom: .5em; -} -dd { - line-height: 1.5em; - margin-left: 2em; - margin-bottom: .1em; -} -/* Tables */ -table { - font-size: 100%; -} -/* Forms */ -fieldset { - border: 1px solid #2f6fab; - margin: 1em 0 1em 0; - padding: 0 1em 1em; - line-height: 1.5em; -} - fieldset.nested { - margin: 0 0 0.5em 0; - padding: 0 0.5em 0.5em; - } -legend { - padding: .5em; - font-size: 95%; -} -form { - border: none; - margin: 0; -} -textarea { - width: 100%; - padding: .1em; -} -select { - vertical-align: top; -} -/* Table of Contents */ -#toc, -.toc, -.mw-warning { - border: 1px solid #aaa; - background-color: #f9f9f9; - padding: 5px; - font-size: 95%; -} -#toc h2, -.toc h2 { - display: inline; - border: none; - padding: 0; - font-size: 100%; - font-weight: bold; -} -#toc #toctitle, -.toc #toctitle, -#toc .toctitle, -.toc .toctitle { - text-align: center; -} -#toc ul, -.toc ul { - list-style-type: none; - list-style-image: none; - margin-left: 0; - padding: 0; - text-align: left; -} -#toc ul ul, -.toc ul ul { - margin: 0 0 0 2em; -} -#toc .toctoggle, -.toc .toctoggle { - font-size: 94%; -} -/* Images */ -/* @noflip */div.floatright, table.floatright { - margin: 0 0 .5em .5em; - border: 0; -} -div.floatright p { font-style: italic; } -/* @noflip */div.floatleft, table.floatleft { - margin: 0 .5em .5em 0; - border: 0; -} -div.floatleft p { font-style: italic; } -/* Thumbnails */ -div.thumb { - margin-bottom: .5em; - width: auto; - background-color: transparent; -} -div.thumbinner { - border: 1px solid #ccc; - padding: 3px !important; - background-color: #f9f9f9; - font-size: 94%; - text-align: center; - overflow: hidden; -} -html .thumbimage { - border: 1px solid #ccc; -} -html .thumbcaption { - border: none; - text-align: left; - line-height: 1.4em; - padding: 3px !important; - font-size: 94%; -} -div.magnify { - float: right; - border: none !important; - background: none !important; -} -div.magnify a, div.magnify img { - display: block; - border: none !important; - background: none !important; -} -/* @noflip */div.tright { - margin: .5em 0 1.3em 1.4em; -} -/* @noflip */div.tleft { - margin: .5em 1.4em 1.3em 0; -} -img.thumbborder { - border: 1px solid #dddddd; -} -/* Warning */ -.mw-warning { - margin-left: 50px; - margin-right: 50px; - text-align: center; -} -/* User Message */ -.usermessage { - background-color: #ffce7b; - border: 1px solid #ffa500; - color: black; - font-weight: bold; - margin: 2em 0 1em; - padding: .5em 1em; - vertical-align: middle; + +pre { + line-height: 1.3em; } + /* Site Notice (includes notices from CentralNotice extension) */ #siteNotice { - position: relative; - text-align: center; font-size: 0.8em; - margin: 0; -} -#localNotice { - margin-bottom: 0.9em; -} -/* Categories */ -.catlinks { - border: 1px solid #aaa; - background-color: #f9f9f9; - padding: 5px; - margin-top: 1em; - clear: both; -} -/* Sub-navigation */ -#siteSub { - display: none; -} -#jump-to-nav { - display: none; -} -#contentSub, #contentSub2 { - font-size: 84%; - line-height: 1.2em; - margin: 0 0 1.4em 1em; - color: #7d7d7d; - width: auto; -} -span.subpages { - display: block; -} -/* Emulate Center */ -.center { - width: 100%; - text-align: center; -} -*.center * { - margin-left: auto; - margin-right: auto; -} -/* Small for tables and similar */ -.small { - font-size: 94%; -} -table.small { - font-size: 100%; -} -/* Edge Cases for Content */ -h1, h2 { - margin-bottom: .6em; -} -h3, h4, h5 { - margin-bottom: .3em; } #firstHeading { padding-top: 0; margin-top: 0; padding-top: 0; - margin-bottom: 0.1em; - line-height: 1.2em; font-size: 1.6em; - padding-bottom: 0; } div#content a.external, div#content a.external[href ^="gopher://"] { @@ -1052,7 +715,7 @@ div#content a.external[href ^="mailto:"], background: url(images/mail-icon.png) center right no-repeat; padding-right: 13px; } -div#content a.external[href ^="news://"] { +div#content a.external[href ^="news:"] { /* @embed */ background: url(images/news-icon.png) center right no-repeat; padding-right: 13px; @@ -1078,7 +741,7 @@ div#content a.external[href $=".wav"], div#content a.external[href $=".WAV"], div#content a.external[href $=".wma"], div#content a.external[href $=".WMA"], .link-audio { /* @embed */ - background: url("images/audio-icon.png?2") center right no-repeat; + background: url(images/audio-icon.png) center right no-repeat; padding-right: 13px; } div#content a.external[href $=".ogm"], div#content a.external[href $=".OGM"], @@ -1087,7 +750,7 @@ div#content a.external[href $=".mpeg"], div#content a.external[href $=".MPEG"], div#content a.external[href $=".mpg"], div#content a.external[href $=".MPG"], .link-video { /* @embed */ - background: url("images/video-icon.png?2") center right no-repeat; + background: url(images/video-icon.png) center right no-repeat; padding-right: 13px; } div#content a.external[href $=".pdf"], div#content a.external[href $=".PDF"], @@ -1095,37 +758,10 @@ div#content a.external[href *=".pdf#"], div#content a.external[href *=".PDF#"], div#content a.external[href *=".pdf?"], div#content a.external[href *=".PDF?"], .link-document { /* @embed */ - background: url("images/document-icon.png?2") center right no-repeat; + background: url(images/document-icon.png) center right no-repeat; padding-right: 13px; } -/* Interwiki Styling */ -div#content a.extiw, -div#content a.extiw:active { - color: #36b; - /* Don't show icons for interwiki links */ - background: none; - padding: 0; -} -div#content a.extiw:visited { - color: #636; -} -div#content a.extiw:active { - color: #b63; -} - -/* External links */ -div#content a.external { - color: #36b; -} -div#content a.external:visited { - color: #636; /* bug 3112 */ -} -div#content a.external:active { - color: #b63; -} - - div#content .printfooter { display: none; } @@ -1147,12 +783,6 @@ div#content .printfooter { vertical-align: text-bottom; } -.toccolours { - border: 1px solid #aaa; - background-color: #f9f9f9; - padding: 5px; - font-size: 95%; -} #bodyContent { position: relative; width: 100%; diff --git a/skins/vector/vector.js b/skins/vector/vector.js index 757f7c8c..cc76b328 100644 --- a/skins/vector/vector.js +++ b/skins/vector/vector.js @@ -2,18 +2,20 @@ * Vector-specific scripts */ jQuery( function( $ ) { - var $pCactions = $( '#p-cactions' ); - $pCactions.find( 'h5 a' ) - // For accessibility, show the menu when the hidden link in the menu is clicked (bug 24298) - .click( function( e ) { - $pCactions.find( '.menu' ).toggleClass( 'menuForceShow' ); - e.preventDefault(); - }) - // When the hidden link has focus, also set a class that will change the arrow icon - .focus( function() { - $pCactions.addClass( 'vectorMenuFocus' ); - }) - .blur( function() { - $pCactions.removeClass( 'vectorMenuFocus' ); - }); + $( 'div.vectorMenu' ).each( function() { + var self = this; + $( 'h5:first a:first', this ) + // For accessibility, show the menu when the hidden link in the menu is clicked (bug 24298) + .click( function( e ) { + $( '.menu:first', self ).toggleClass( 'menuForceShow' ); + e.preventDefault(); + }) + // When the hidden link has focus, also set a class that will change the arrow icon + .focus( function() { + $( self ).addClass( 'vectorMenuFocus' ); + }) + .blur( function() { + $( self ).removeClass( 'vectorMenuFocus' ); + }); + }); }); |