* @package MediaWiki
*/
+if ( $wgCategoryMagicGallery )
+ require_once('ImageGallery.php');
+
/**
* @package MediaWiki
*/
# This method generates the list of subcategories and pages for a category
function oldCategoryMagic () {
- global $wgLang, $wgUser ;
+ global $wgContLang, $wgUser ;
$fname = 'CategoryPage::oldCategoryMagic';
# For all pages that link to this category
while ( $x = $dbr->fetchObject ( $res ) )
{
- $t = $wgLang->getNsText ( $x->cur_namespace ) ;
+ $t = $wgContLang->getNsText ( $x->cur_namespace ) ;
if ( $t != '' ) $t .= ':' ;
$t .= $x->cur_title ;
}
function newCategoryMagic () {
- global $wgLang,$wgUser;
+ global $wgContLang,$wgUser, $wgCategoryMagicGallery;
$sk =& $wgUser->getSkin();
$data = array () ;
$id = $this->mTitle->getArticleID() ;
+ if ( $wgCategoryMagicGallery ) {
+ $ig = new ImageGallery();
+ }
+
# FIXME: add limits
$dbr =& wfGetDB( DB_SLAVE );
$cur = $dbr->tableName( 'cur' );
$res = $dbr->query ( $sql ) ;
while ( $x = $dbr->fetchObject ( $res ) )
{
- $t = $ns = $wgLang->getNsText ( $x->cur_namespace ) ;
+ $t = $ns = $wgContLang->getNsText ( $x->cur_namespace ) ;
if ( $t != '' ) $t .= ':' ;
$t .= $x->cur_title ;
+ $ctitle = str_replace( '_',' ',$x->cur_title );
if ( $x->cur_namespace == NS_CATEGORY ) {
- $ctitle = str_replace( '_',' ',$x->cur_title );
array_push ( $children, $sk->makeKnownLink ( $t, $ctitle ) ) ; # Subcategory
// If there's a link from Category:A to Category:B, the sortkey of the resulting
// Workaround: If sortkey == "Category:".$title, than use $title for sorting,
// else use sortkey...
if ( ($ns.':'.$ctitle) == $x->cl_sortkey ) {
- array_push ( $children_start_char, $wgLang->firstChar( $x->cur_title ) );
+ array_push ( $children_start_char, $wgContLang->firstChar( $x->cur_title ) );
} else {
- array_push ( $children_start_char, $wgLang->firstChar( $x->cl_sortkey ) ) ;
+ array_push ( $children_start_char, $wgContLang->firstChar( $x->cl_sortkey ) ) ;
}
- } else {
+ } elseif ( $wgCategoryMagicGallery && $x->cur_namespace == NS_IMAGE ) {
+ $ig->add( new Image( $x->cur_title ) );
+ } else {
array_push ( $articles , $sk->makeKnownLink ( $t ) ) ; # Page in this category
- array_push ( $articles_start_char, $wgLang->firstChar( $x->cl_sortkey ) ) ;
+ array_push ( $articles_start_char, $wgContLang->firstChar( $x->cl_sortkey ) ) ;
}
}
$dbr->freeResult ( $res ) ;
}
$r .= '</ul>';
}
+
+ if ( $wgCategoryMagicGallery && ! $ig->isEmpty() ) {
+ $r.= $ig->toHTML();
+ }
+
return $r ;
}
}