From 1cea04c788cc32201cfd4229e39ab758bf5cc55d Mon Sep 17 00:00:00 2001 From: Rob Church Date: Sat, 13 May 2006 17:30:42 +0000 Subject: [PATCH] * Introduce NUMBEROFPAGES magic word * (bug 5833) Introduce CURRENTVERSION magic word --- RELEASE-NOTES | 2 ++ includes/MagicWord.php | 4 ++++ includes/Parser.php | 24 ++++++++++++++++++++++-- languages/Language.php | 2 ++ 4 files changed, 30 insertions(+), 2 deletions(-) diff --git a/RELEASE-NOTES b/RELEASE-NOTES index 7feeecf5ca..fc3a93ec0a 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -253,6 +253,8 @@ it from source control: http://www.mediawiki.org/wiki/Download_from_SVN * (bug 5806) {{plural:}} support instead of "twin" MediaWiki messages * (bug 5931) Update for Polish language (pl) * Ignore the user and user talk namespaces on Special:Wantedpages +* Introduce NUMBEROFPAGES magic word +* (bug 5833) Introduce CURRENTVERSION magic word == Compatibility == diff --git a/includes/MagicWord.php b/includes/MagicWord.php index 1dfadfea22..2c8b8bdbd4 100644 --- a/includes/MagicWord.php +++ b/includes/MagicWord.php @@ -84,6 +84,8 @@ $magicWords = array( 'MAG_NUMBEROFUSERS', 'MAG_RAWSUFFIX', 'MAG_NEWSECTIONLINK', + 'MAG_NUMBEROFPAGES', + 'MAG_CURRENTVERSION', ); if ( ! defined( 'MEDIAWIKI_INSTALL' ) ) wfRunHooks( 'MagicWordMagicWords', array( &$magicWords ) ); @@ -130,6 +132,8 @@ $wgVariableIDs = array( MAG_NUMBEROFUSERS, MAG_RAWSUFFIX, MAG_NEWSECTIONLINK, + MAG_NUMBEROFPAGES, + MAG_CURRENTVERSION, ); if ( ! defined( 'MEDIAWIKI_INSTALL' ) ) wfRunHooks( 'MagicWordwgVariableIDs', array( &$wgVariableIDs ) ); diff --git a/includes/Parser.php b/includes/Parser.php index 8976971ae9..456487104a 100644 --- a/includes/Parser.php +++ b/includes/Parser.php @@ -2150,6 +2150,11 @@ class Parser return $varCache[$index] = $wgContLang->formatNum( wfNumberOfFiles() ); case MAG_NUMBEROFUSERS: return $varCache[$index] = $wgContLang->formatNum( wfNumberOfUsers() ); + case MAG_NUMBEROFPAGES: + return $varCache[$index] = $wgContLang->formatNum( wfNumberOfPages() ); + case MAG_CURRENTVERSION: + global $wgVersion; + return $wgVersion; case MAG_SITENAME: return $wgSitename; case MAG_SERVER: @@ -2664,9 +2669,12 @@ class Parser } } - # NUMBEROFUSERS, NUMBEROFARTICLES, and NUMBEROFFILES + # NUMBEROFPAGES, NUMBEROFUSERS, NUMBEROFARTICLES, and NUMBEROFFILES if( !$found ) { - $mwWordsToCheck = array( MAG_NUMBEROFUSERS => 'wfNumberOfUsers', MAG_NUMBEROFARTICLES => 'wfNumberOfArticles', MAG_NUMBEROFFILES => 'wfNumberOfFiles' ); + $mwWordsToCheck = array( MAG_NUMBEROFPAGES => 'wfNumberOfPages', + MAG_NUMBEROFUSERS => 'wfNumberOfUsers', + MAG_NUMBEROFARTICLES => 'wfNumberOfArticles', + MAG_NUMBEROFFILES => 'wfNumberOfFiles' ); foreach( $mwWordsToCheck as $word => $func ) { $mwCurrentWord =& MagicWord::get( $word ); if( $mwCurrentWord->matchStartAndRemove( $part1 ) ) { @@ -4317,6 +4325,18 @@ function wfNumberOfUsers() { return (int)$count; } +/** + * Return the total number of pages + * @return integer + */ +function wfNumberOfPages() { + wfProfileIn( 'wfNumberOfPages' ); + $dbr =& wfGetDB( DB_SLAVE ); + $count = $dbr->selectField( 'site_stats', 'ss_total_pages', array(), 'wfNumberOfPages' ); + wfProfileOut( 'wfNumberOfPages' ); + return (int)$count; +} + /** * Get various statistics from the database * @private diff --git a/languages/Language.php b/languages/Language.php index 17b5d12fc0..0bf85b94ef 100644 --- a/languages/Language.php +++ b/languages/Language.php @@ -226,6 +226,7 @@ $wgLanguageNamesEn =& $wgLanguageNames; MAG_CURRENTDAYNAME => array( 1, 'CURRENTDAYNAME' ), MAG_CURRENTYEAR => array( 1, 'CURRENTYEAR' ), MAG_CURRENTTIME => array( 1, 'CURRENTTIME' ), + MAG_NUMBEROFPAGES => array( 1, 'NUMBEROFPAGES' ), MAG_NUMBEROFARTICLES => array( 1, 'NUMBEROFARTICLES' ), MAG_NUMBEROFFILES => array( 1, 'NUMBEROFFILES' ), MAG_NUMBEROFUSERS => array( 1, 'NUMBEROFUSERS' ), @@ -282,6 +283,7 @@ $wgLanguageNamesEn =& $wgLanguageNames; MAG_DISPLAYTITLE => array( 1, 'DISPLAYTITLE' ), MAG_RAWSUFFIX => array( 1, 'R' ), MAG_NEWSECTIONLINK => array( 1, '__NEWSECTIONLINK__' ), + MAG_CURRENTVERSION => array( 1, 'CURRENTVERSION' ), ); if (!$wgCachedMessageArrays) { -- 2.20.1