$this->skinPreferences( $user, $context, $preferences );
$this->datetimePreferences( $user, $context, $preferences );
$this->filesPreferences( $context, $preferences );
- $this->renderingPreferences( $context, $preferences );
+ $this->renderingPreferences( $user, $context, $preferences );
$this->editingPreferences( $user, $context, $preferences );
$this->rcPreferences( $user, $context, $preferences );
$this->watchlistPreferences( $user, $context, $preferences );
}
/**
+ * @param User $user
* @param MessageLocalizer $l10n
* @param array &$defaultPreferences
*/
protected function renderingPreferences(
+ User $user,
MessageLocalizer $l10n,
&$defaultPreferences
) {
'section' => 'rendering/advancedrendering',
'label-message' => 'tog-numberheadings',
];
+
+ if ( $user->isAllowed( 'rollback' ) ) {
+ $defaultPreferences['showrollbackconfirmation'] = [
+ 'type' => 'toggle',
+ 'section' => 'rendering/advancedrendering',
+ 'label-message' => 'tog-showrollbackconfirmation',
+ ];
+ }
}
/**
* @covers MediaWiki\Preferences\DefaultPreferencesFactory::renderingPreferences()
*/
public function testShowRollbackConfIsHiddenForUsersWithoutRollbackRights() {
- // TODO Remove temporary skip marker once feature is added back in
- $this->markTestSkipped();
$userMock = $this->getMockBuilder( User::class )
->disableOriginalConstructor()
->getMock();
* @covers MediaWiki\Preferences\DefaultPreferencesFactory::renderingPreferences()
*/
public function testShowRollbackConfIsShownForUsersWithRollbackRights() {
- // TODO Remove temporary skip marker once feature is added back in
- $this->markTestSkipped();
$userMock = $this->getMockBuilder( User::class )
->disableOriginalConstructor()
->getMock();