*/
protected $parentLens;
+ /** @var bool Whether to show the tag editing UI */
+ protected $showTagEditUI;
+
/**
* @param HistoryAction $historyPage
* @param string $year
$this->tagFilter = $tagFilter;
$this->getDateCond( $year, $month );
$this->conds = $conds;
+ $this->showTagEditUI = ChangeTags::showTagEditingUI( $this->getUser() );
}
// For hook compatibility...
}
function doBatchLookups() {
+ if ( !Hooks::run( 'PageHistoryPager::doBatchLookups', array( $this, $this->mResult ) ) ) {
+ return;
+ }
+
# Do a link batch query
$this->mResult->seek( 0 );
$batch = new LinkBatch();
if ( $user->isAllowed( 'deleterevision' ) ) {
$actionButtons .= $this->getRevisionButton( 'revisiondelete', 'showhideselectedversions' );
}
- if ( $user->isAllowed( 'changetags' ) ) {
+ if ( $this->showTagEditUI ) {
$actionButtons .= $this->getRevisionButton( 'editchangetags', 'history-edit-tags' );
}
if ( $actionButtons ) {
$del = '';
$user = $this->getUser();
$canRevDelete = $user->isAllowed( 'deleterevision' );
- $canModifyTags = $user->isAllowed( 'changetags' );
// Show checkboxes for each revision, to allow for revision deletion and
// change tags
- if ( $canRevDelete || $canModifyTags ) {
+ if ( $canRevDelete || $this->showTagEditUI ) {
$this->preventClickjacking();
// If revision was hidden from sysops and we don't need the checkbox
// for anything else, disable it
- if ( !$canModifyTags && !$rev->userCan( Revision::DELETED_RESTRICTED, $user ) ) {
+ if ( !$this->showTagEditUI && !$rev->userCan( Revision::DELETED_RESTRICTED, $user ) ) {
$del = Xml::check( 'deleterevisions', false, array( 'disabled' => 'disabled' ) );
// Otherwise, enable the checkbox...
} else {