* @defgroup Skins Skins
*/
-if ( ! defined( 'MEDIAWIKI' ) )
+if ( !defined( 'MEDIAWIKI' ) ) {
die( 1 );
+}
/**
* The main skin class that provide methods and properties for all other skins.
var $mTitle = null;
/** Constructor, call parent constructor */
- function Skin() { parent::__construct(); }
+ function __construct() {
+ parent::__construct();
+ }
/**
* Fetch the set of available skins.
* @return array of strings
- * @static
*/
static function getSkinNames() {
global $wgValidSkinNames;
$matches = array();
if( preg_match( '/^([^.]*)\.php$/', $file, $matches ) ) {
$aSkin = $matches[1];
- $wgValidSkinNames[strtolower($aSkin)] = $aSkin;
+ $wgValidSkinNames[strtolower( $aSkin )] = $aSkin;
}
}
$skinDir->close();
* Normalize a skin preference value to a form that can be loaded.
* If a skin can't be found, it will fall back to the configured
* default (or the old 'Classic' skin if that's broken).
- * @param string $key
+ * @param $key String: 'monobook', 'standard', etc.
* @return string
- * @static
*/
static function normalizeKey( $key ) {
global $wgDefaultSkin;
$fallback = array(
0 => $wgDefaultSkin,
1 => 'nostalgia',
- 2 => 'cologneblue' );
+ 2 => 'cologneblue'
+ );
- if( isset( $fallback[$key] ) ){
+ if( isset( $fallback[$key] ) ) {
$key = $fallback[$key];
}
/**
* Factory method for loading a skin of a given type
- * @param string $key 'monobook', 'standard', etc
+ * @param $key String: 'monobook', 'standard', etc.
* @return Skin
- * @static
*/
static function &newFromKey( $key ) {
global $wgStyleDirectory;
$skinNames = Skin::getSkinNames();
$skinName = $skinNames[$key];
- $className = 'Skin'.ucfirst($key);
+ $className = 'Skin' . ucfirst( $key );
# Grab the skin class and initialise it.
if ( !class_exists( $className ) ) {
// Preload base classes to work around APC/PHP5 bug
$deps = "{$wgStyleDirectory}/{$skinName}.deps.php";
- if( file_exists( $deps ) ) include_once( $deps );
+ if( file_exists( $deps ) ) {
+ include_once( $deps );
+ }
require_once( "{$wgStyleDirectory}/{$skinName}.php" );
# Check if we got if not failback to default skin
function qbSetting() {
global $wgOut, $wgUser;
- if ( $wgOut->isQuickbarSuppressed() ) { return 0; }
+ if ( $wgOut->isQuickbarSuppressed() ) {
+ return 0;
+ }
$q = $wgUser->getOption( 'quickbar', 0 );
return $q;
}
# Generally the order of the favicon and apple-touch-icon links
# should not matter, but Konqueror (3.5.9 at least) incorrectly
- # uses whichever one appears later in the HTML source. Make sure
+ # uses whichever one appears later in the HTML source. Make sure
# apple-touch-icon is specified first to avoid this.
if( false !== $wgAppleTouchIcon ) {
$out->addLink( array( 'rel' => 'apple-touch-icon', 'href' => $wgAppleTouchIcon ) );
$lb->execute();
}
+ /**
+ * Adds metadata links (Creative Commons/Dublin Core/copyright) to the HTML
+ * output.
+ * @param $out Object: instance of OutputPage
+ */
function addMetadataLinks( OutputPage $out ) {
global $wgEnableDublinCoreRdf, $wgEnableCreativeCommonsRdf;
global $wgRightsPage, $wgRightsUrl;
/**
* Set some local variables
*/
- protected function setMembers(){
+ protected function setMembers() {
global $wgUser;
$this->mUser = $wgUser;
$this->userpage = $wgUser->getUserPage()->getPrefixedText();
return $this->mTitle;
}
+ /**
+ * Outputs the HTML generated by other functions.
+ * @param $out Object: instance of OutputPage
+ */
function outputPage( OutputPage $out ) {
global $wgDebugComments;
wfProfileIn( __METHOD__ );
$vars['wgUserVariant'] = $wgContLang->getPreferredVariant();
}
- //if on upload page output the extension list & js_upload
- if( SpecialPage::resolveAlias( $wgTitle->getDBkey() ) == "Upload" ) {
+ // if on upload page output the extension list & js_upload
+ if( SpecialPage::resolveAlias( $wgTitle->getDBkey() ) == 'Upload' ) {
global $wgFileExtensions, $wgAjaxUploadInterface;
$vars['wgFileExtensions'] = $wgFileExtensions;
}
- if( $wgUseAjax && $wgEnableMWSuggest && !$wgUser->getOption( 'disablesuggest', false ) ){
+ if( $wgUseAjax && $wgEnableMWSuggest && !$wgUser->getOption( 'disablesuggest', false ) ) {
$vars['wgMWSuggestTemplate'] = SearchEngine::getMWSuggestTemplate();
$vars['wgDBname'] = $wgDBname;
$vars['wgSearchNamespaces'] = SearchEngine::userNamespaces( $wgUser );
$vars['wgMWSuggestMessages'] = array( wfMsg( 'search-mwsuggest-enabled' ), wfMsg( 'search-mwsuggest-disabled' ) );
}
- foreach( $wgRestrictionTypes as $type )
+ foreach( $wgRestrictionTypes as $type ) {
$vars['wgRestriction' . ucfirst( $type )] = $wgTitle->getRestrictions( $type );
+ }
if ( $wgOut->isArticleRelated() && $wgUseAjax && $wgAjaxWatch && $wgUser->isLoggedIn() ) {
$msgs = (object)array();
- foreach ( array( 'watch', 'unwatch', 'watching', 'unwatching',
+ foreach ( array( 'watch', 'unwatch', 'watching', 'unwatching',
'tooltip-ca-watch', 'tooltip-ca-unwatch' ) as $msgName ) {
$msgs->{$msgName . 'Msg'} = wfMsg( $msgName );
}
* passed back with the preview request, we won't render
* the code.
*
- * @param string $action
+ * @param $action String: 'edit', 'submit' etc.
* @return bool
*/
public function userCanPreview( $action ) {
global $wgRequest, $wgUser;
- if( $action != 'submit' )
+ if( $action != 'submit' ) {
return false;
- if( !$wgRequest->wasPosted() )
+ }
+ if( !$wgRequest->wasPosted() ) {
return false;
- if( !$this->mTitle->userCanEditCssSubpage() )
+ }
+ if( !$this->mTitle->userCanEditCssSubpage() ) {
return false;
- if( !$this->mTitle->userCanEditJsSubpage() )
+ }
+ if( !$this->mTitle->userCanEditJsSubpage() ) {
return false;
+ }
return $wgUser->matchEditToken(
$wgRequest->getVal( 'wpEditToken' ) );
}
/**
- * generated JavaScript action=raw&gen=js
+ * Generated JavaScript action=raw&gen=js
* This returns MediaWiki:Common.js and MediaWiki:[Skinname].js concate-
* nated together. For some bizarre reason, it does *not* return any
* custom user JS from subpages. Huh?
* top. For now Monobook.js will be maintained, but it should be consi-
* dered deprecated.
*
- * @param $force_skin string If set, overrides the skin name
- *
+ * @param $skinName String: If set, overrides the skin name
* @return string
*/
public function generateUserJs( $skinName = null ) {
}
$s = "/* generated javascript */\n";
- $s .= "var skin = '" . Xml::escapeJsString($skinName ) . "';\n";
+ $s .= "var skin = '" . Xml::escapeJsString( $skinName ) . "';\n";
$s .= "var stylepath = '" . Xml::escapeJsString( $wgStylePath ) . "';";
$s .= "\n\n/* MediaWiki:Common.js */\n";
$commonJs = wfMsgExt( 'common.js', 'content' );
$s .= $commonJs;
}
- $s .= "\n\n/* MediaWiki:".ucfirst( $skinName ).".js */\n";
+ $s .= "\n\n/* MediaWiki:" . ucfirst( $skinName ) . ".js */\n";
// avoid inclusion of non defined user JavaScript (with custom skins only)
// by checking for default message content
$msgKey = ucfirst( $skinName ) . '.js';
/**
* Split for easier subclassing in SkinSimple, SkinStandard and SkinCologneBlue
*/
- protected function reallyGenerateUserStylesheet(){
+ protected function reallyGenerateUserStylesheet() {
global $wgUser;
$s = '';
if( ( $undopt = $wgUser->getOption( 'underline' ) ) < 2 ) {
// @FIXME: properly escape the cdata!
$out->addInlineStyle( $wgRequest->getText( 'wpTextbox1' ) );
} else {
- $out->addStyle( self::makeUrl( $this->userpage . '/' . $this->getSkinName() .'.css',
- 'action=raw&ctype=text/css' ) );
+ $out->addStyle( self::makeUrl(
+ $this->userpage . '/' . $this->getSkinName() . '.css',
+ 'action=raw&ctype=text/css' )
+ );
}
}
}
function getPageClasses( $title ) {
- $numeric = 'ns-'.$title->getNamespace();
+ $numeric = 'ns-' . $title->getNamespace();
if( $title->getNamespace() == NS_SPECIAL ) {
$type = 'ns-special';
} elseif( $title->isTalkPage() ) {
} else {
$type = 'ns-subject';
}
- $name = Sanitizer::escapeClass( 'page-'.$title->getPrefixedText() );
+ $name = Sanitizer::escapeClass( 'page-' . $title->getPrefixedText() );
return "$numeric $type $name";
}
$s = '';
$qb = $this->qbSetting();
- if( $langlinks = $this->otherLanguages() ) {
+ $langlinks = $this->otherLanguages();
+ if( $langlinks ) {
$rows = 2;
$borderhack = '';
} else {
$shove = ( $qb != 0 );
$left = ( $qb == 1 || $qb == 3 );
- if( $wgContLang->isRTL() ) $left = !$left;
+ if( $wgContLang->isRTL() ) {
+ $left = !$left;
+ }
if( !$shove ) {
$s .= "<td class='top' align='left' valign='top' rowspan='{$rows}'>\n" .
- $this->logoText() . '</td>';
+ $this->logoText() . '</td>';
} elseif( $left ) {
$s .= $this->getQuickbarCompensator( $rows );
}
$s .= "<td {$borderhack} align='$l' valign='top'>\n";
$s .= $this->topLinks();
- $s .= "<p class='subtitle'>" . $this->pageTitleLinks() . "</p>\n";
+ $s .= '<p class="subtitle">' . $this->pageTitleLinks() . "</p>\n";
$r = $wgContLang->alignEnd();
$s .= "</td>\n<td {$borderhack} valign='top' align='$r' nowrap='nowrap'>";
$s .= $this->nameAndLogin();
- $s .= "\n<br />" . $this->searchForm() . "</td>";
+ $s .= "\n<br />" . $this->searchForm() . '</td>';
if ( $langlinks ) {
$s .= "</tr>\n<tr>\n<td class='top' colspan=\"2\">$langlinks</td>\n";
return $s;
}
-
function getCategoryLinks() {
global $wgOut, $wgUseCategoryBrowser;
global $wgContLang, $wgUser;
- if( count( $wgOut->mCategoryLinks ) == 0 ) return '';
+ if( count( $wgOut->mCategoryLinks ) == 0 ) {
+ return '';
+ }
# Separator
$sep = wfMsgExt( 'catseparator', array( 'parsemag', 'escapenoentities' ) );
$s .= "<div id=\"mw-hidden-catlinks\" class=\"$class\">" .
wfMsgExt( 'hidden-categories', array( 'parsemag', 'escapenoentities' ), count( $allCats['hidden'] ) ) .
$colon . $embed . implode( "$pop $sep $embed", $allCats['hidden'] ) . $pop .
- "</div>";
+ '</div>';
}
# optional 'dmoz-like' category browser. Will be shown under the list
# of categories an article belong to
- if( $wgUseCategoryBrowser ){
+ if( $wgUseCategoryBrowser ) {
$s .= '<br /><hr />';
# get a big array of the parents tree
* @param &skin Object: skin passed by reference
* @return String separated by >, terminate with "\n"
*/
- function drawCategoryBrowser( $tree, &$skin ){
+ function drawCategoryBrowser( $tree, &$skin ) {
$return = '';
foreach( $tree as $element => $parent ) {
if( empty( $parent ) ) {
$showHidden = $wgUser->getBoolOption( 'showhiddencats' ) ||
$this->mTitle->getNamespace() == NS_CATEGORY;
- if( empty($allCats['normal']) && !( !empty($allCats['hidden']) && $showHidden ) ) {
+ if( empty( $allCats['normal'] ) && !( !empty( $allCats['hidden'] ) && $showHidden ) ) {
$classes .= ' catlinks-allhidden';
}
protected function afterContentHook() {
$data = '';
- if( wfRunHooks( 'SkinAfterContent', array( &$data ) ) ){
+ if( wfRunHooks( 'SkinAfterContent', array( &$data ) ) ) {
// adding just some spaces shouldn't toggle the output
// of the whole <div/>, so we use trim() here
- if( trim( $data ) != '' ){
+ if( trim( $data ) != '' ) {
// Doing this here instead of in the skins to
// ensure that the div has the same ID in all
// skins
$ident = strlen( $line ) - strlen( $display );
$diff = $ident - $curIdent;
- if ( $display == '' )
+ if ( $display == '' ) {
$display = "\xc2\xa0";
+ }
if ( !$ident && $diff < 0 && substr( $display, 0, 9 ) != 'Entering ' && substr( $display, 0, 8 ) != 'Exiting ' ) {
$ident = $curIdent;
$display = htmlspecialchars( $display );
}
- if ( $diff < 0 )
+ if ( $diff < 0 ) {
$ret .= str_repeat( "</li></ul>\n", -$diff ) . "</li><li>\n";
- elseif ( $diff == 0 )
+ } elseif ( $diff == 0 ) {
$ret .= "</li><li>\n";
- else
+ } else {
$ret .= str_repeat( "<ul><li>\n", $diff );
+ }
$ret .= $display . "\n";
$curIdent = $ident;
/** @return string Retrievied from HTML text */
function printSource() {
$url = htmlspecialchars( $this->mTitle->getFullURL() );
- return wfMsg( 'retrievedfrom', '<a href="'.$url.'">'.$url.'</a>' );
+ return wfMsg( 'retrievedfrom', '<a href="' . $url . '">' . $url . '</a>' );
}
function printFooter() {
}
/** overloaded by derived classes */
- function doAfterContent() { return '</div></div>'; }
+ function doAfterContent() {
+ return '</div></div>';
+ }
function pageTitleLinks() {
global $wgOut, $wgUser, $wgRequest, $wgLang;
return $wgLang->pipeList( $s );
}
+ /**
+ * Gets the h1 element with the page title.
+ * @return string
+ */
function pageTitle() {
global $wgOut;
$s = '<h1 class="pagetitle">' . $wgOut->getPageTitle() . '</h1>';
function subPageSubtitle() {
$subpages = '';
- if( !wfRunHooks( 'SkinSubPageSubtitle', array( &$subpages ) ) )
+ if( !wfRunHooks( 'SkinSubPageSubtitle', array( &$subpages ) ) ) {
return $subpages;
+ }
global $wgOut;
if( $wgOut->isArticle() && MWNamespace::hasSubpages( $this->mTitle->getNamespace() ) ) {
$growinglink .= $link;
$display .= $link;
$linkObj = Title::newFromText( $growinglink );
- if( is_object( $linkObj ) && $linkObj->exists() ){
+ if( is_object( $linkObj ) && $linkObj->exists() ) {
$getlink = $this->link(
$linkObj,
htmlspecialchars( $display ),
global $wgRequest, $wgUseTwoButtonsSearchForm;
$search = $wgRequest->getText( 'search' );
- $s = '<form id="searchform'.$this->searchboxes.'" name="search" class="inline" method="post" action="'
+ $s = '<form id="searchform' . $this->searchboxes . '" name="search" class="inline" method="post" action="'
. $this->escapeSearchLink() . "\">\n"
- . '<input type="text" id="searchInput'.$this->searchboxes.'" name="search" size="19" value="'
+ . '<input type="text" id="searchInput' . $this->searchboxes . '" name="search" size="19" value="'
. htmlspecialchars( substr( $search, 0, 256 ) ) . "\" />\n"
. '<input type="submit" name="go" value="' . wfMsg( 'searcharticle' ) . '" />';
- if( $wgUseTwoButtonsSearchForm )
+ if( $wgUseTwoButtonsSearchForm ) {
$s .= ' <input type="submit" name="fulltext" value="' . wfMsg( 'searchbutton' ) . "\" />\n";
- else
+ } else {
$s .= ' <a href="' . $this->escapeSearchLink() . '" rel="search">' . wfMsg( 'powersearch-legend' ) . "</a>\n";
+ }
$s .= '</form>';
if( !$wgDisableLangConversion && sizeof( $variants ) > 1 ) {
foreach( $variants as $code ) {
$varname = $wgContLang->getVariantname( $code );
- if( $varname == 'disable' )
+ if( $varname == 'disable' ) {
continue;
+ }
$s = $wgLang->pipeList( array(
$s,
- '<a href="' . $this->mTitle->escapeLocalUrl( 'variant=' . $code ) . '">' . htmlspecialchars( $varname ) . '</a>'
+ '<a href="' . $this->mTitle->escapeLocalURL( 'variant=' . $code ) . '">' . htmlspecialchars( $varname ) . '</a>'
) );
}
}
$element[] = $this->whatLinksHere();
$element[] = $this->watchPageLinksLink();
- if( $wgUseTrackbacks )
+ if( $wgUseTrackbacks ) {
$element[] = $this->trackbackLink();
+ }
- if ( $this->mTitle->getNamespace() == NS_USER
- || $this->mTitle->getNamespace() == NS_USER_TALK ){
+ if (
+ $this->mTitle->getNamespace() == NS_USER ||
+ $this->mTitle->getNamespace() == NS_USER_TALK
+ )
+ {
$id = User::idFromName( $this->mTitle->getText() );
$ip = User::isIP( $this->mTitle->getText() );
- if( $id || $ip ) { # both anons and non-anons have contri list
+ # Both anons and non-anons have contributions list
+ if( $id || $ip ) {
$element[] = $this->userContribsLink();
}
if( $this->showEmailUser( $id ) ) {
if ( $this->mTitle->getArticleId() ) {
$s .= "\n<br />";
- if( $wgUser->isAllowed( 'delete' ) ) { $s .= $this->deleteThisPage(); }
- if( $wgUser->isAllowed( 'protect' ) ) { $s .= $sep . $this->protectThisPage(); }
- if( $wgUser->isAllowed( 'move' ) ) { $s .= $sep . $this->moveThisPage(); }
+ // Delete/protect/move links for privileged users
+ if( $wgUser->isAllowed( 'delete' ) ) {
+ $s .= $this->deleteThisPage();
+ }
+ if( $wgUser->isAllowed( 'protect' ) ) {
+ $s .= $sep . $this->protectThisPage();
+ }
+ if( $wgUser->isAllowed( 'move' ) ) {
+ $s .= $sep . $this->moveThisPage();
+ }
}
$s .= "<br />\n" . $this->otherLanguages();
}
$oldid = $wgRequest->getVal( 'oldid' );
$diff = $wgRequest->getVal( 'diff' );
- if ( ! $wgOut->isArticle() ) { return ''; }
- if( !$wgArticle instanceOf Article ) { return ''; }
- if ( isset( $oldid ) || isset( $diff ) ) { return ''; }
- if ( 0 == $wgArticle->getID() ) { return ''; }
+ if ( !$wgOut->isArticle() ) {
+ return '';
+ }
+ if( !$wgArticle instanceof Article ) {
+ return '';
+ }
+ if ( isset( $oldid ) || isset( $diff ) ) {
+ return '';
+ }
+ if ( 0 == $wgArticle->getID() ) {
+ return '';
+ }
$s = '';
if ( !$wgDisableCounters ) {
}
}
- if( $wgMaxCredits != 0 ){
+ if( $wgMaxCredits != 0 ) {
$s .= ' ' . Credits::getCredits( $wgArticle, $wgMaxCredits, $wgShowCreditsIfMax );
} else {
$s .= $this->lastModified();
if( $wgPageShowWatchingUsers && $wgUser->getOption( 'shownumberswatching' ) ) {
$dbr = wfGetDB( DB_SLAVE );
- $res = $dbr->select( 'watchlist',
+ $res = $dbr->select(
+ 'watchlist',
array( 'COUNT(*) AS n' ),
- array( 'wl_title' => $dbr->strencode( $this->mTitle->getDBkey() ), 'wl_namespace' => $this->mTitle->getNamespace() ),
+ array(
+ 'wl_title' => $dbr->strencode( $this->mTitle->getDBkey() ),
+ 'wl_namespace' => $this->mTitle->getNamespace()
+ ),
__METHOD__
);
$x = $dbr->fetchObject( $res );
return $out;
}
// Allow for site and per-namespace customization of copyright notice.
- if( isset($wgArticle) )
+ if( isset( $wgArticle ) ) {
wfRunHooks( 'SkinCopyrightFooter', array( $wgArticle->getTitle(), $type, &$msg, &$link ) );
+ }
$out .= wfMsgForContent( $msg, $link );
return $out;
$out = '';
if ( isset( $wgCopyrightIcon ) && $wgCopyrightIcon ) {
$out = $wgCopyrightIcon;
- } else if ( $wgRightsIcon ) {
+ } elseif ( $wgRightsIcon ) {
$icon = htmlspecialchars( $wgRightsIcon );
if ( $wgRightsUrl ) {
$url = htmlspecialchars( $wgRightsUrl );
return $out;
}
+ /**
+ * Gets the powered by MediaWiki icon.
+ * @return string
+ */
function getPoweredBy() {
global $wgStylePath;
$url = htmlspecialchars( "$wgStylePath/common/images/poweredby_mediawiki_88x31.png" );
- $img = '<a href="http://www.mediawiki.org/"><img src="'.$url.'" height="31" width="88" alt="Powered by MediaWiki" /></a>';
+ $img = '<a href="http://www.mediawiki.org/"><img src="' . $url . '" height="31" width="88" alt="Powered by MediaWiki" /></a>';
return $img;
}
function lastModified() {
global $wgLang, $wgArticle;
- if( $this->mRevisionId && $this->mRevisionId != $wgArticle->getLatest()) {
+ if( $this->mRevisionId && $this->mRevisionId != $wgArticle->getLatest() ) {
$timestamp = Revision::getTimestampFromId( $wgArticle->getTitle(), $this->mRevisionId );
} else {
$timestamp = $wgArticle->getTimestamp();
}
/**
- * show a drop-down box of special pages
+ * Show a drop-down box of special pages
*/
function specialPagesList() {
global $wgUser, $wgContLang, $wgServer, $wgRedirectScript;
return $s;
}
+ /**
+ * Gets the link to the wiki's main page.
+ * @return string
+ */
function mainPageLink() {
$s = $this->link(
Title::newMainPage(),
return $s;
}
- private function footerLink ( $desc, $page ) {
+ private function footerLink( $desc, $page ) {
// if the link description has been set to "-" in the default language,
if ( wfMsgForContent( $desc ) == '-') {
// then it is disabled, for all languages.
}
}
+ /**
+ * Gets the link to the wiki's privacy policy page.
+ */
function privacyLink() {
return $this->footerLink( 'privacy', 'privacypage' );
}
+ /**
+ * Gets the link to the wiki's about page.
+ */
function aboutLink() {
return $this->footerLink( 'aboutsite', 'aboutpage' );
}
+ /**
+ * Gets the link to the wiki's general disclaimers page.
+ */
function disclaimerLink() {
return $this->footerLink( 'disclaimers', 'disclaimerpage' );
}
function showEmailUser( $id ) {
global $wgUser;
$targetUser = User::newFromId( $id );
- return $wgUser->canSendEmail() && # the sending user must have a confirmed email address
+ return $wgUser->canSendEmail() && # the sending user must have a confirmed email address
$targetUser->canReceiveEmail(); # the target user must have a confirmed email address and allow emails from users
}
function watchPageLinksLink() {
global $wgOut;
- if ( ! $wgOut->isArticleRelated() ) {
+ if ( !$wgOut->isArticleRelated() ) {
return '(' . wfMsg( 'notanarticle' ) . ')';
} else {
return $this->link(
$s = wfMsg( 'otherlanguages' ) . wfMsg( 'colon-separator' );
$first = true;
- if( $wgContLang->isRTL() ) $s .= '<span dir="LTR">';
+ if( $wgContLang->isRTL() ) {
+ $s .= '<span dir="LTR">';
+ }
foreach( $a as $l ) {
if ( !$first ) {
$s .= wfMsgExt( 'pipe-separator', 'escapenoentities' );
$url = $nt->escapeFullURL();
$text = $wgContLang->getLanguageName( $nt->getInterwiki() );
- if ( $text == '' ) { $text = $l; }
+ if ( $text == '' ) {
+ $text = $l;
+ }
$style = $this->getExternalLinkAttributes();
$s .= "<a href=\"{$url}\"{$style}>{$text}</a>";
}
- if( $wgContLang->isRTL() ) $s .= '</span>';
+ if( $wgContLang->isRTL() ) {
+ $s .= '</span>';
+ }
return $s;
}
return $title->getLocalURL( $urlaction );
}
- # If url string starts with http, consider as external URL, else
- # internal
+ /**
+ * If url string starts with http, consider as external URL, else
+ * internal
+ */
static function makeInternalOrExternalUrl( $name ) {
if ( preg_match( '/^(?:' . wfUrlProtocols() . ')/', $name ) ) {
return $name;
$this->addToSidebar( $bar, 'sidebar' );
wfRunHooks( 'SkinBuildSidebar', array( $this, &$bar ) );
- if ( $wgEnableSidebarCache ) $parserMemc->set( $key, $bar, $wgSidebarCacheExpiry );
+ if ( $wgEnableSidebarCache ) {
+ $parserMemc->set( $key, $bar, $wgSidebarCacheExpiry );
+ }
wfProfileOut( __METHOD__ );
return $bar;
}
/**
* Add content from a sidebar system message
* Currently only used for MediaWiki:Sidebar (but may be used by Extensions)
- *
+ *
* @param &$bar array
* @param $message String
*/
$lines = explode( "\n", wfMsgForContent( $message ) );
$heading = '';
foreach( $lines as $line ) {
- if( strpos( $line, '*' ) !== 0 )
+ if( strpos( $line, '*' ) !== 0 ) {
continue;
+ }
if( strpos( $line, '**') !== 0 ) {
$heading = trim( $line, '* ' );
- if( !array_key_exists( $heading, $bar ) ) $bar[$heading] = array();
+ if( !array_key_exists( $heading, $bar ) ) {
+ $bar[$heading] = array();
+ }
} else {
if( strpos( $line, '|' ) !== false ) { // sanity check
$line = array_map( 'trim', explode( '|', trim( $line, '* ' ), 2 ) );
$link = wfMsgForContent( $line[0] );
- if( $link == '-' )
+ if( $link == '-' ) {
continue;
+ }
$text = wfMsgExt( $line[1], 'parsemag' );
- if( wfEmptyMsg( $line[1], $text ) )
+ if( wfEmptyMsg( $line[1], $text ) ) {
$text = $line[1];
- if( wfEmptyMsg( $line[0], $link ) )
+ }
+ if( wfEmptyMsg( $line[0], $link ) ) {
$link = $line[0];
+ }
if ( preg_match( '/^(?:' . wfUrlProtocols() . ')/', $link ) ) {
$href = $link;
'id' => 'n-' . strtr( $line[1], ' ', '-' ),
'active' => false
);
- } else { continue; }
+ } else {
+ continue;
+ }
}
}
}