*/
if( !defined( 'MEDIAWIKI' ) )
- die( -1 );
-
-global $wgCategoryMagicGallery;
-if( $wgCategoryMagicGallery )
- /** */
- require_once('ImageGallery.php');
+ die( 1 );
/**
* @package MediaWiki
# For overloading
}
- # generate a list of subcategories and pages for a category
- # depending on wfMsg("usenewcategorypage") it either calls the new
- # or the old code. The new code will not work properly for some
- # languages due to sorting issues, so they might want to turn it
- # off.
-
function closeShowCategory() {
global $wgOut, $wgRequest;
- $pageConditions = array();
$from = $wgRequest->getVal( 'from' );
$until = $wgRequest->getVal( 'until' );
+
$wgOut->addHTML( $this->doCategoryMagic( $from, $until ) );
}
* @param string $from -- return only sort keys from this item on
* @param string $until -- don't return keys after this point.
* @return string HTML output
- * @access private
+ * @private
*/
function doCategoryMagic( $from = '', $until = '' ) {
- global $wgContLang,$wgUser, $wgCategoryMagicGallery;
+ global $wgOut;
+ global $wgContLang,$wgUser, $wgCategoryMagicGallery, $wgCategoryPagingLimit;
$fname = 'CategoryPage::doCategoryMagic';
wfProfileIn( $fname );
$articles_start_char = array();
$children = array();
$children_start_char = array();
- $data = array();
- if( $wgCategoryMagicGallery ) {
+
+ $showGallery = $wgCategoryMagicGallery && !$wgOut->mNoGallery;
+ if( $showGallery ) {
$ig = new ImageGallery();
}
$pageCondition = '1 = 1';
$flip = false;
}
- $limit = 200;
+ $limit = $wgCategoryPagingLimit;
$res = $dbr->select(
array( 'page', 'categorylinks' ),
array( 'page_title', 'page_namespace', 'page_len', 'cl_sortkey' ),
$sortkey=$wgContLang->firstChar( $x->cl_sortkey );
}
array_push( $children_start_char, $wgContLang->convert( $sortkey ) ) ;
- } elseif( $wgCategoryMagicGallery && $title->getNamespace() == NS_IMAGE ) {
+ } elseif( $showGallery && $title->getNamespace() == NS_IMAGE ) {
// Show thumbnails of categorized images, in a separate chunk
if( $flip ) {
$ig->insert( Image::newFromTitle( $title ) );
if( count( $children ) > 0 ) {
# Showing subcategories
$r .= '<h2>' . wfMsg( 'subcategories' ) . "</h2>\n";
- $r .= $this->formatCount( $children, 'subcategorycount' );
+ $r .= wfMsgExt( 'subcategorycount', array( 'parse' ), count( $children) );
$r .= $this->formatList( $children, $children_start_char );
}
# Showing articles in this category
$ti = htmlspecialchars( $this->mTitle->getText() );
$r .= '<h2>' . wfMsg( 'category_header', $ti ) . "</h2>\n";
- $r .= $this->formatCount( $articles, 'categoryarticlecount' );
+ $r .= wfMsgExt( 'categoryarticlecount', array( 'parse' ), count( $articles) );
$r .= $this->formatList( $articles, $articles_start_char );
- if( $wgCategoryMagicGallery && ! $ig->isEmpty() ) {
+ if( $showGallery && ! $ig->isEmpty() ) {
$r.= $ig->toHTML();
}
return $r;
}
- /**
- * @param array $articles
- * @param string $message
- * @return string
- * @access private
- */
- function formatCount( $articles, $message ) {
- global $wgContLang;
- $numart = count( $articles );
- if( $numart == 1 ) {
- # Slightly different message to avoid silly plural
- $message .= '1';
- }
- return wfMsg( $message, $wgContLang->formatNum( $numart ) );
- }
/**
* Format a list of articles chunked by letter, either as a
* bullet list or a columnar format, depending on the length.
* @param array $articles_start_char
* @param int $cutoff
* @return string
- * @access private
+ * @private
*/
function formatList( $articles, $articles_start_char, $cutoff = 6 ) {
if ( count ( $articles ) > $cutoff ) {
* @param array $articles
* @param array $articles_start_char
* @return string
- * @access private
+ * @private
*/
function columnList( $articles, $articles_start_char ) {
// divide list into three equal chunks
* @param array $articles
* @param array $articles_start_char
* @return string
- * @access private
+ * @private
*/
function shortList( $articles, $articles_start_char ) {
$r = '<h3>' . htmlspecialchars( $articles_start_char[0] ) . "</h3>\n";
* @param int $limit
* @param array $query - additional query options to pass
* @return string
- * @access private
+ * @private
*/
function pagingLinks( $title, $first, $last, $limit, $query = array() ) {
global $wgUser, $wgLang;