diff options
Diffstat (limited to 'skins/Standard.php')
-rw-r--r-- | skins/Standard.php | 182 |
1 files changed, 84 insertions, 98 deletions
diff --git a/skins/Standard.php b/skins/Standard.php index 694bc5e3..e57cfaf9 100644 --- a/skins/Standard.php +++ b/skins/Standard.php @@ -1,14 +1,14 @@ <?php /** - * See docs/skin.txt + * Standard (a.k.a. Classic) skin: old MediaWiki default skin * - * @todo document * @file * @ingroup Skins */ -if( !defined( 'MEDIAWIKI' ) ) +if( !defined( 'MEDIAWIKI' ) ) { die( -1 ); +} /** * @todo document @@ -19,24 +19,10 @@ class SkinStandard extends Skin { /** * */ - function getHeadScripts( $allowUserJs ) { - global $wgStylePath, $wgJsMimeType, $wgStyleVersion; - - $s = parent::getHeadScripts( $allowUserJs ); - if ( 3 == $this->qbSetting() ) { # Floating left - $s .= "<script language='javascript' type='$wgJsMimeType' " . - "src='{$wgStylePath}/common/sticky.js?$wgStyleVersion'></script>\n"; - } - return $s; - } - - /** - * - */ function setupSkinUserCss( OutputPage $out ){ if ( 3 == $this->qbSetting() ) { # Floating left $out->addStyle( 'common/quickbar.css' ); - } else if ( 4 == $this->qbSetting() ) { # Floating right + } elseif ( 4 == $this->qbSetting() ) { # Floating right $out->addStyle( 'common/quickbar-right.css' ); } parent::setupSkinUserCss( $out ); @@ -51,60 +37,44 @@ class SkinStandard extends Skin { if ( 2 == $qb ) { # Right $s .= "#quickbar { position: absolute; top: 4px; right: 4px; " . - "border-left: 2px solid #000000; }\n" . - "#article, #mw-data-after-content { margin-left: 4px; margin-right: 152px; }\n"; - } else if ( 1 == $qb || 3 == $qb ) { + "border-left: 2px solid #000000; }\n" . + "#article, #mw-data-after-content { margin-left: 4px; margin-right: 152px; }\n"; + } elseif ( 1 == $qb || 3 == $qb ) { $s .= "#quickbar { position: absolute; top: 4px; left: 4px; " . - "border-right: 1px solid gray; }\n" . - "#article, #mw-data-after-content { margin-left: 152px; margin-right: 4px; }\n"; - } else if ( 4 == $qb) { + "border-right: 1px solid gray; }\n" . + "#article, #mw-data-after-content { margin-left: 152px; margin-right: 4px; }\n"; + } elseif ( 4 == $qb ) { $s .= "#quickbar { border-right: 1px solid gray; }\n" . - "#article, #mw-data-after-content { margin-right: 152px; margin-left: 4px; }\n"; + "#article, #mw-data-after-content { margin-right: 152px; margin-left: 4px; }\n"; } return $s; } - /** - * - */ - function getBodyOptions() { - $a = parent::getBodyOptions(); - - if ( 3 == $this->qbSetting() ) { # Floating left - $qb = "setup(\"quickbar\")"; - if($a["onload"]) { - $a["onload"] .= ";$qb"; - } else { - $a["onload"] = $qb; - } - } - return $a; - } - function doAfterContent() { global $wgContLang, $wgLang; - $fname = 'SkinStandard::doAfterContent'; - wfProfileIn( $fname ); - wfProfileIn( $fname.'-1' ); + wfProfileIn( __METHOD__ ); + wfProfileIn( __METHOD__ . '-1' ); $s = "\n</div><br style=\"clear:both\" />\n"; $s .= "\n<div id='footer'>"; $s .= '<table border="0" cellspacing="0"><tr>'; - wfProfileOut( $fname.'-1' ); - wfProfileIn( $fname.'-2' ); + wfProfileOut( __METHOD__ . '-1' ); + wfProfileIn( __METHOD__ . '-2' ); $qb = $this->qbSetting(); - $shove = ($qb != 0); - $left = ($qb == 1 || $qb == 3); - if($wgContLang->isRTL()) $left = !$left; + $shove = ( $qb != 0 ); + $left = ( $qb == 1 || $qb == 3 ); + if( $wgContLang->isRTL() ) { + $left = !$left; + } if ( $shove && $left ) { # Left - $s .= $this->getQuickbarCompensator(); + $s .= $this->getQuickbarCompensator(); } - wfProfileOut( $fname.'-2' ); - wfProfileIn( $fname.'-3' ); - $l = $wgContLang->isRTL() ? 'right' : 'left'; + wfProfileOut( __METHOD__ . '-2' ); + wfProfileIn( __METHOD__ . '-3' ); + $l = $wgContLang->alignStart(); $s .= "<td class='bottom' align='$l' valign='top'>"; $s .= $this->bottomLinks(); @@ -113,32 +83,33 @@ class SkinStandard extends Skin { $this->aboutLink(), $this->specialLink( 'recentchanges' ), $this->searchForm() ) ) - . '<br /><span id="pagestats">' . $this->pageStats() . '</span>'; + . '<br /><span id="pagestats">' . $this->pageStats() . '</span>'; - $s .= "</td>"; + $s .= '</td>'; if ( $shove && !$left ) { # Right $s .= $this->getQuickbarCompensator(); } $s .= "</tr></table>\n</div>\n</div>\n"; - wfProfileOut( $fname.'-3' ); - wfProfileIn( $fname.'-4' ); - if ( 0 != $qb ) { $s .= $this->quickBar(); } - wfProfileOut( $fname.'-4' ); - wfProfileOut( $fname ); + wfProfileOut( __METHOD__ . '-3' ); + wfProfileIn( __METHOD__ . '-4' ); + if ( 0 != $qb ) { + $s .= $this->quickBar(); + } + wfProfileOut( __METHOD__ . '-4' ); + wfProfileOut( __METHOD__ ); return $s; } function quickBar() { - global $wgOut, $wgTitle, $wgUser, $wgRequest, $wgContLang; + global $wgOut, $wgUser, $wgRequest, $wgContLang; global $wgEnableUploads, $wgRemoteUploads; - $fname = 'Skin::quickBar'; - wfProfileIn( $fname ); + wfProfileIn( __METHOD__ ); $action = $wgRequest->getText( 'action' ); $wpPreview = $wgRequest->getBool( 'wpPreview' ); - $tns=$wgTitle->getNamespace(); + $tns = $this->mTitle->getNamespace(); $s = "\n<div id='quickbar'>"; $s .= "\n" . $this->logoText() . "\n<hr class='sep' />"; @@ -161,18 +132,22 @@ class SkinStandard extends Skin { if( $wgUser->isLoggedIn() ) { $s.= $this->specialLink( 'watchlist' ) ; - $s .= $sep . $this->makeKnownLink( $wgContLang->specialPage( 'Contributions' ), - wfMsg( 'mycontris' ), 'target=' . wfUrlencode($wgUser->getName() ) ); + $s .= $sep . $this->linkKnown( + SpecialPage::getTitleFor( 'Contributions' ), + wfMsg( 'mycontris' ), + array(), + array( 'target' => $wgUser->getName() ) + ); } // only show watchlist link if logged in $s .= "\n<hr class='sep' />"; - $articleExists = $wgTitle->getArticleId(); - if ( $wgOut->isArticle() || $action =='edit' || $action =='history' || $wpPreview) { - if($wgOut->isArticle()) { + $articleExists = $this->mTitle->getArticleId(); + if ( $wgOut->isArticle() || $action == 'edit' || $action == 'history' || $wpPreview ) { + if( $wgOut->isArticle() ) { $s .= '<strong>' . $this->editThisPage() . '</strong>'; } else { # backlink to the article in edit or history mode - if($articleExists){ # no backlink if no article - switch($tns) { + if( $articleExists ){ # no backlink if no article + switch( $tns ) { case NS_TALK: case NS_USER_TALK: case NS_PROJECT_TALK: @@ -208,29 +183,40 @@ class SkinStandard extends Skin { $text = wfMsg( 'categorypage' ); break; default: - $text= wfMsg( 'articlepage' ); + $text = wfMsg( 'articlepage' ); } - $link = $wgTitle->getText(); - if ($nstext = $wgContLang->getNsText($tns) ) { # add namespace if necessary - $link = $nstext . ':' . $link ; + $link = $this->mTitle->getText(); + if( $nstext = $wgContLang->getNsText( $tns ) ) { # add namespace if necessary + $link = $nstext . ':' . $link; } - $s .= $this->makeLink( $link, $text ); - } elseif( $wgTitle->getNamespace() != NS_SPECIAL ) { + $s .= $this->link( + Title::newFromText( $link ), + $text + ); + } elseif( $this->mTitle->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>'; + $s .= '<strong>' . wfMsg( 'newpage' ) . '</strong>'; } - } # "Post a comment" link - if( ( $wgTitle->isTalkPage() || $wgOut->showNewSectionLink() ) && $action != 'edit' && !$wpPreview ) - $s .= '<br />' . $this->makeKnownLinkObj( $wgTitle, wfMsg( 'postcomment' ), 'action=edit§ion=new' ); - + if( ( $this->mTitle->isTalkPage() || $wgOut->showNewSectionLink() ) && $action != 'edit' && !$wpPreview ) + $s .= '<br />' . $this->link( + $this->mTitle, + wfMsg( 'postcomment' ), + array(), + array( + 'action' => 'edit', + 'section' => 'new' + ), + array( 'known', 'noclasses' ) + ); + #if( $tns%2 && $action!='edit' && !$wpPreview) { - #$s.= '<br />'.$this->makeKnownLink($wgTitle->getPrefixedText(),wfMsg('postcomment'),'action=edit§ion=new'); + #$s.= '<br />'.$this->linkKnown( Title::newFromText( $wgTitle->getPrefixedText() ),wfMsg('postcomment'),array(),array('action'=>'edit','section'=>'new')); #} /* @@ -239,33 +225,34 @@ class SkinStandard extends Skin { 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) { - if($action!='edit' && $action != 'submit' ) - { + if ( $wgUser->isLoggedIn() && $articleExists ) { + if( $action != 'edit' && $action != 'submit' ) { $s .= $sep . $this->watchThisPage(); } - if ( $wgTitle->userCan( 'edit' ) ) + if ( $this->mTitle->userCan( 'edit' ) ) $s .= $sep . $this->moveThisPage(); } - if ( $wgUser->isAllowed('delete') and $articleExists ) { + if ( $wgUser->isAllowed( 'delete' ) && $articleExists ) { $s .= $sep . $this->deleteThisPage() . $sep . $this->protectThisPage(); } $s .= $sep . $this->talkLink(); - if ($articleExists && $action !='history') { + if( $articleExists && $action != 'history' ) { $s .= $sep . $this->historyLink(); } - $s.=$sep . $this->whatLinksHere(); + $s .= $sep . $this->whatLinksHere(); - if($wgOut->isArticleRelated()) { + if( $wgOut->isArticleRelated() ) { $s .= $sep . $this->watchPageLinksLink(); } - if ( NS_USER == $wgTitle->getNamespace() - || $wgTitle->getNamespace() == NS_USER_TALK ) { + if ( + NS_USER == $this->mTitle->getNamespace() || + $this->mTitle->getNamespace() == NS_USER_TALK + ) { - $id=User::idFromName($wgTitle->getText()); - $ip=User::isIP($wgTitle->getText()); + $id = User::idFromName( $this->mTitle->getText() ); + $ip = User::isIP( $this->mTitle->getText() ); if( $id || $ip ){ $s .= $sep . $this->userContribsLink(); @@ -289,9 +276,8 @@ class SkinStandard extends Skin { } $s .= "\n<br /></div>\n"; - wfProfileOut( $fname ); + wfProfileOut( __METHOD__ ); return $s; } - } |