* Special:Contributions mark the user which they are relevant to so that
* things like the toolbox can display the information they usually are only
* able to display on a user's userpage and talkpage.
+ * @return User
*/
public function getRelevantUser() {
if ( isset($this->mRelevantUser) ) {
*/
abstract function setupSkinUserCss( OutputPage $out );
+ /**
+ * TODO: document
+ * @param $title Title
+ * @return String
+ */
function getPageClasses( $title ) {
$numeric = 'ns-' . $title->getNamespace();
if ( $title->getNamespace() == NS_SPECIAL ) {
$type = 'ns-special';
// bug 23315: provide a class based on the canonical special page name without subpages
- list( $canonicalName ) = SpecialPage::resolveAliasWithSubpage( $title->getDBkey() );
+ list( $canonicalName ) = SpecialPageFactory::resolveAlias( $title->getDBkey() );
if ( $canonicalName ) {
$type .= ' ' . Sanitizer::escapeClass( "mw-special-$canonicalName" );
} else {
function getCategoryLinks( OutputPage $out=null ) {
global $wgUseCategoryBrowser, $wgContLang;
+ if( $out === null ){
+ $out = $this->getContext()->output;
+ }
+
if ( count( $out->mCategoryLinks ) == 0 ) {
return '';
}
$msg = wfMsgExt( 'pagecategories', array( 'parsemag', 'escapenoentities' ), count( $allCats['normal'] ) );
$s .= '<div id="mw-normal-catlinks">' .
- $this->link( Title::newFromText( wfMsgForContent( 'pagecategorieslink' ) ), $msg )
+ Linker::link( Title::newFromText( wfMsgForContent( 'pagecategorieslink' ) ), $msg )
. $colon . $t . '</div>';
}
/**
* Render the array as a serie of links.
* @param $tree Array: categories tree returned by Title::getParentCategoryTree
- * @param &skin Object: skin passed by reference
* @return String separated by >, terminate with "\n"
*/
- function drawCategoryBrowser( $tree, &$skin ) {
+ function drawCategoryBrowser( $tree ) {
$return = '';
foreach ( $tree as $element => $parent ) {
$return .= "\n";
} else {
# grab the others elements
- $return .= $this->drawCategoryBrowser( $parent, $skin ) . ' > ';
+ $return .= $this->drawCategoryBrowser( $parent ) . ' > ';
}
# add our current element to the list
$eltitle = Title::newFromText( $element );
- $return .= $skin->link( $eltitle, $eltitle->getText() );
+ $return .= Linker::link( $eltitle, $eltitle->getText() );
}
return $return;
* @return String HTML-wrapped JS code to be put before </body>
*/
function bottomScripts( $out ) {
- $bottomScriptText = "\n" . $out->getHeadScripts( $this );
+ // TODO and the suckage continues. This function is really just a wrapper around
+ // OutputPage::getBottomScripts() which takes a Skin param. This should be cleaned
+ // up at some point
+ $bottomScriptText = $out->getBottomScripts( $this );
wfRunHooks( 'SkinAfterBottomScripts', array( $this, &$bottomScriptText ) );
return $bottomScriptText;
return wfMsg(
$msg,
- $this->link(
+ Linker::link(
SpecialPage::getTitleFor( 'Undelete', $this->getTitle()->getPrefixedDBkey() ),
wfMsgExt( 'restorelink', array( 'parsemag', 'escape' ), $this->getContext()->getLang()->formatNum( $n ) ),
array(),
if ( $wgRightsPage ) {
$title = Title::newFromText( $wgRightsPage );
- $link = $this->linkKnown( $title, $wgRightsText );
+ $link = Linker::linkKnown( $title, $wgRightsText );
} elseif ( $wgRightsUrl ) {
- $link = $this->makeExternalLink( $wgRightsUrl, $wgRightsText );
+ $link = Linker::makeExternalLink( $wgRightsUrl, $wgRightsText );
} elseif ( $wgRightsText ) {
$link = $wgRightsText;
} else {
* @return string
*/
function mainPageLink() {
- $s = $this->link(
+ $s = Linker::link(
Title::newMainPage(),
wfMsg( 'mainpage' ),
array(),
// but we make the link target be the one site-wide page.
$title = Title::newFromText( wfMsgForContent( $page ) );
- return $this->linkKnown(
+ return Linker::linkKnown(
$title,
wfMsgExt( $desc, array( 'parsemag', 'escapenoentities' ) )
);
}
static function makeSpecialUrl( $name, $urlaction = '' ) {
- $title = SpecialPage::getTitleFor( $name );
+ $title = SpecialPage::getSafeTitleFor( $name );
return $title->getLocalURL( $urlaction );
}