getUser(); if ( $userName === null ) { return array(); } $useSiteJs = $this->getConfig()->get( 'UseSiteJs' ); $useSiteCss = $this->getConfig()->get( 'UseSiteCss' ); if ( !$useSiteJs && !$useSiteCss ) { return array(); } // Use $wgUser is possible; allows to skip a lot of code if ( is_object( $wgUser ) && $wgUser->getName() == $userName ) { $user = $wgUser; } else { $user = User::newFromName( $userName ); if ( !$user instanceof User ) { return array(); } } $pages = array(); foreach ( $user->getEffectiveGroups() as $group ) { if ( $group == '*' ) { continue; } if ( $useSiteJs ) { $pages["MediaWiki:Group-$group.js"] = array( 'type' => 'script' ); } if ( $useSiteCss ) { $pages["MediaWiki:Group-$group.css"] = array( 'type' => 'style' ); } } return $pages; } /* Methods */ /** * @return string */ public function getGroup() { return 'user'; } }