showMobileOptions = $showMobileOptions; $this->showDonateLink = $showDonateLink; $this->definitions = $definitions; } /** * @return Group */ public function getSettingsGroup(): Group { return new Group( 'pt-preferences' ); } /** * @inheritDoc */ public function getPersonalToolsGroup( array $personalTools ): Group { return BuilderUtil::getConfigurationTools( $this->definitions, $this->showMobileOptions ); } /** * @inheritDoc */ public function getDiscoveryGroup( array $navigationTools ): Group { return BuilderUtil::getDiscoveryTools( $this->definitions, $navigationTools ); } /** * @inheritDoc */ public function getDonateGroup(): Group { return BuilderUtil::getDonateGroup( $this->definitions, $this->showDonateLink ); } /** * @inheritDoc * @throws FatalError * @throws MWException */ public function getSiteLinks(): Group { return BuilderUtil::getSiteLinks( $this->definitions ); } /** * Prepares a list of links that have the purpose of discovery in the main navigation menu * @return Group * @throws FatalError * @throws MWException */ public function getInteractionToolsGroup(): Group { $group = new Group( 'p-interaction' ); $this->definitions->insertRecentChanges( $group ); $this->definitions->insertSpecialPages( $group ); $this->definitions->insertCommunityPortal( $group ); return $group; } }