mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/AbuseFilter.git
synced 2024-09-23 18:28:20 +00:00
Call IContextSource::getAuthority instead of IContextSource::getUser
Change to use Authority object where possible to use the interface instead of implementation Change-Id: I90ef126b3d799c3fc27467a4ffe671785c446d3e
This commit is contained in:
parent
2709583b52
commit
dc4dd928b7
|
@ -60,12 +60,12 @@ class CheckMatch extends ApiBase {
|
|||
* @inheritDoc
|
||||
*/
|
||||
public function execute() {
|
||||
$user = $this->getUser();
|
||||
$performer = $this->getAuthority();
|
||||
$params = $this->extractRequestParams();
|
||||
$this->requireOnlyOneParameter( $params, 'vars', 'rcid', 'logid' );
|
||||
|
||||
// "Anti-DoS"
|
||||
if ( !$this->afPermManager->canUseTestTools( $this->getUser() ) ) {
|
||||
if ( !$this->afPermManager->canUseTestTools( $performer ) ) {
|
||||
$this->dieWithError( 'apierror-abusefilter-canttest', 'permissiondenied' );
|
||||
}
|
||||
|
||||
|
@ -88,18 +88,18 @@ class CheckMatch extends ApiBase {
|
|||
!LogEventsList::userCanBitfield(
|
||||
$deletedValue,
|
||||
LogPage::SUPPRESSED_ACTION | LogPage::SUPPRESSED_USER,
|
||||
$user
|
||||
$performer
|
||||
)
|
||||
) || (
|
||||
$type !== RC_LOG &&
|
||||
!RevisionRecord::userCanBitfield( $deletedValue, RevisionRecord::SUPPRESSED_ALL, $user )
|
||||
!RevisionRecord::userCanBitfield( $deletedValue, RevisionRecord::SUPPRESSED_ALL, $performer )
|
||||
)
|
||||
) {
|
||||
// T223654 - Same check as in AbuseFilterChangesList
|
||||
$this->dieWithError( 'apierror-permissiondenied-generic', 'deletedrc' );
|
||||
}
|
||||
|
||||
$varGenerator = $this->afVariableGeneratorFactory->newRCGenerator( $rc, $user );
|
||||
$varGenerator = $this->afVariableGeneratorFactory->newRCGenerator( $rc, $this->getUser() );
|
||||
$vars = $varGenerator->getVars();
|
||||
} elseif ( $params['logid'] ) {
|
||||
$row = $this->getDB()->selectRow(
|
||||
|
@ -113,7 +113,7 @@ class CheckMatch extends ApiBase {
|
|||
$this->dieWithError( [ 'apierror-abusefilter-nosuchlogid', $params['logid'] ], 'nosuchlogid' );
|
||||
}
|
||||
|
||||
$visibility = SpecialAbuseLog::getEntryVisibilityForUser( $row, $user, $this->afPermManager );
|
||||
$visibility = SpecialAbuseLog::getEntryVisibilityForUser( $row, $performer, $this->afPermManager );
|
||||
if ( $visibility !== SpecialAbuseLog::VISIBILITY_VISIBLE ) {
|
||||
// T223654 - Same check as in SpecialAbuseLog. Both the visibility of the AbuseLog entry
|
||||
// and the corresponding revision are checked.
|
||||
|
|
|
@ -39,8 +39,8 @@ class CheckSyntax extends ApiBase {
|
|||
*/
|
||||
public function execute() {
|
||||
// "Anti-DoS"
|
||||
if ( !$this->afPermManager->canUseTestTools( $this->getUser() )
|
||||
&& !$this->afPermManager->canEdit( $this->getUser() )
|
||||
if ( !$this->afPermManager->canUseTestTools( $this->getAuthority() )
|
||||
&& !$this->afPermManager->canEdit( $this->getAuthority() )
|
||||
) {
|
||||
$this->dieWithError( 'apierror-abusefilter-cantcheck', 'permissiondenied' );
|
||||
}
|
||||
|
|
|
@ -48,7 +48,7 @@ class EvalExpression extends ApiBase {
|
|||
*/
|
||||
public function execute() {
|
||||
// "Anti-DoS"
|
||||
if ( !$this->afPermManager->canUseTestTools( $this->getUser() ) ) {
|
||||
if ( !$this->afPermManager->canUseTestTools( $this->getAuthority() ) ) {
|
||||
$this->dieWithError( 'apierror-abusefilter-canteval', 'permissiondenied' );
|
||||
}
|
||||
|
||||
|
|
|
@ -62,7 +62,6 @@ class QueryAbuseFilters extends ApiQueryBase {
|
|||
* @inheritDoc
|
||||
*/
|
||||
public function execute() {
|
||||
$user = $this->getUser();
|
||||
$this->checkUserRightsAny( 'abusefilter-view' );
|
||||
|
||||
$params = $this->extractRequestParams();
|
||||
|
@ -120,7 +119,7 @@ class QueryAbuseFilters extends ApiQueryBase {
|
|||
|
||||
$res = $this->select( __METHOD__ );
|
||||
|
||||
$showhidden = $this->afPermManager->canViewPrivateFilters( $user );
|
||||
$showhidden = $this->afPermManager->canViewPrivateFilters( $this->getAuthority() );
|
||||
|
||||
$count = 0;
|
||||
foreach ( $res as $row ) {
|
||||
|
|
|
@ -96,7 +96,7 @@ class QueryAbuseLog extends ApiQueryBase {
|
|||
// Same check as in SpecialAbuseLog
|
||||
$this->checkUserRightsAny( 'abusefilter-log' );
|
||||
|
||||
$user = $this->getUser();
|
||||
$performer = $this->getAuthority();
|
||||
$params = $this->extractRequestParams();
|
||||
|
||||
$prop = array_fill_keys( $params['prop'], true );
|
||||
|
@ -136,7 +136,7 @@ class QueryAbuseLog extends ApiQueryBase {
|
|||
continue;
|
||||
}
|
||||
}
|
||||
if ( !$this->afPermManager->canViewPrivateFiltersLogs( $user ) ) {
|
||||
if ( !$this->afPermManager->canViewPrivateFiltersLogs( $performer ) ) {
|
||||
foreach ( $searchFilters as [ $filterID, $global ] ) {
|
||||
try {
|
||||
$isHidden = $lookup->getFilter( $filterID, $global )->isHidden();
|
||||
|
@ -222,7 +222,7 @@ class QueryAbuseLog extends ApiQueryBase {
|
|||
}
|
||||
}
|
||||
|
||||
$this->addWhereIf( [ 'afl_deleted' => 0 ], !$this->afPermManager->canSeeHiddenLogEntries( $user ) );
|
||||
$this->addWhereIf( [ 'afl_deleted' => 0 ], !$this->afPermManager->canSeeHiddenLogEntries( $performer ) );
|
||||
|
||||
if ( $searchFilters ) {
|
||||
// @todo Avoid code duplication with SpecialAbuseLog::showList
|
||||
|
@ -274,7 +274,7 @@ class QueryAbuseLog extends ApiQueryBase {
|
|||
$this->setContinueEnumParameter( 'start', $ts->getTimestamp( TS_ISO_8601 ) );
|
||||
break;
|
||||
}
|
||||
$visibility = SpecialAbuseLog::getEntryVisibilityForUser( $row, $user, $this->afPermManager );
|
||||
$visibility = SpecialAbuseLog::getEntryVisibilityForUser( $row, $performer, $this->afPermManager );
|
||||
if ( $visibility !== SpecialAbuseLog::VISIBILITY_VISIBLE ) {
|
||||
continue;
|
||||
}
|
||||
|
@ -283,7 +283,7 @@ class QueryAbuseLog extends ApiQueryBase {
|
|||
$global = $row->afl_global;
|
||||
$fullName = GlobalNameUtils::buildGlobalName( $filterID, $global );
|
||||
$isHidden = $lookup->getFilter( $filterID, $global )->isHidden();
|
||||
$canSeeDetails = $this->afPermManager->canSeeLogDetailsForFilter( $user, $isHidden );
|
||||
$canSeeDetails = $this->afPermManager->canSeeLogDetailsForFilter( $performer, $isHidden );
|
||||
|
||||
$entry = [];
|
||||
if ( $fld_ids ) {
|
||||
|
|
|
@ -37,7 +37,7 @@ class ToolLinksHandler implements
|
|||
*/
|
||||
public function onContributionsToolLinks( $id, Title $nt, array &$tools, SpecialPage $sp ) {
|
||||
$username = $nt->getText();
|
||||
if ( $this->afPermManager->canViewAbuseLog( $sp->getUser() )
|
||||
if ( $this->afPermManager->canViewAbuseLog( $sp->getAuthority() )
|
||||
&& !IPUtils::isValidRange( $username )
|
||||
) {
|
||||
$linkRenderer = $sp->getLinkRenderer();
|
||||
|
@ -57,7 +57,7 @@ class ToolLinksHandler implements
|
|||
* @param string[] &$links
|
||||
*/
|
||||
public function onHistoryPageToolLinks( IContextSource $context, LinkRenderer $linkRenderer, array &$links ) {
|
||||
if ( $this->afPermManager->canViewAbuseLog( $context->getUser() ) ) {
|
||||
if ( $this->afPermManager->canViewAbuseLog( $context->getAuthority() ) ) {
|
||||
$links[] = $linkRenderer->makeLink(
|
||||
$this->getSpecialPageTitle(),
|
||||
$context->msg( 'abusefilter-log-linkonhistory' )->text(),
|
||||
|
@ -73,7 +73,7 @@ class ToolLinksHandler implements
|
|||
* @param string[] &$links
|
||||
*/
|
||||
public function onUndeletePageToolLinks( IContextSource $context, LinkRenderer $linkRenderer, array &$links ) {
|
||||
$show = $this->afPermManager->canViewAbuseLog( $context->getUser() );
|
||||
$show = $this->afPermManager->canViewAbuseLog( $context->getAuthority() );
|
||||
$action = $context->getRequest()->getVal( 'action', 'view' );
|
||||
|
||||
// For 'history action', the link would be added by HistoryPageToolLinks hook.
|
||||
|
|
|
@ -167,12 +167,12 @@ class AbuseFilterPager extends TablePager {
|
|||
'af_hidden' => 'abusefilter-list-visibility',
|
||||
];
|
||||
|
||||
$user = $this->getUser();
|
||||
if ( $this->afPermManager->canSeeLogDetails( $user ) ) {
|
||||
$performer = $this->getAuthority();
|
||||
if ( $this->afPermManager->canSeeLogDetails( $performer ) ) {
|
||||
$headers['af_hit_count'] = 'abusefilter-list-hitcount';
|
||||
}
|
||||
|
||||
if ( $this->afPermManager->canViewPrivateFilters( $user ) && $this->searchMode !== null ) {
|
||||
if ( $this->afPermManager->canViewPrivateFilters( $performer ) && $this->searchMode !== null ) {
|
||||
// This is also excluded in the default view
|
||||
$headers['af_pattern'] = 'abusefilter-list-pattern';
|
||||
}
|
||||
|
@ -394,7 +394,7 @@ class AbuseFilterPager extends TablePager {
|
|||
'af_hidden',
|
||||
'af_group',
|
||||
];
|
||||
if ( $this->afPermManager->canSeeLogDetails( $this->getUser() ) ) {
|
||||
if ( $this->afPermManager->canSeeLogDetails( $this->getAuthority() ) ) {
|
||||
$sortable_fields[] = 'af_hit_count';
|
||||
$sortable_fields[] = 'af_public_comments';
|
||||
}
|
||||
|
|
|
@ -89,8 +89,8 @@ class AbuseLogPager extends ReverseChronologicalPager {
|
|||
* @return string
|
||||
*/
|
||||
public function doFormatRow( stdClass $row, bool $isListItem = true ): string {
|
||||
$user = $this->getUser();
|
||||
$visibility = SpecialAbuseLog::getEntryVisibilityForUser( $row, $user, $this->afPermissionManager );
|
||||
$performer = $this->getAuthority();
|
||||
$visibility = SpecialAbuseLog::getEntryVisibilityForUser( $row, $performer, $this->afPermissionManager );
|
||||
|
||||
if ( $visibility !== SpecialAbuseLog::VISIBILITY_VISIBLE ) {
|
||||
return '';
|
||||
|
@ -192,7 +192,7 @@ class AbuseLogPager extends ReverseChronologicalPager {
|
|||
$filter_hidden = $row->af_hidden;
|
||||
}
|
||||
|
||||
if ( $this->afPermissionManager->canSeeLogDetailsForFilter( $user, $filter_hidden ) ) {
|
||||
if ( $this->afPermissionManager->canSeeLogDetailsForFilter( $performer, $filter_hidden ) ) {
|
||||
$actionLinks = [];
|
||||
|
||||
if ( $isListItem ) {
|
||||
|
@ -214,7 +214,7 @@ class AbuseLogPager extends ReverseChronologicalPager {
|
|||
$actionLinks[] = $diffLink;
|
||||
}
|
||||
|
||||
if ( !$isListItem && $this->afPermissionManager->canHideAbuseLog( $user ) ) {
|
||||
if ( !$isListItem && $this->afPermissionManager->canHideAbuseLog( $performer ) ) {
|
||||
// Link for hiding a single entry from the details view
|
||||
$hideLink = $linkRenderer->makeKnownLink(
|
||||
SpecialPage::getTitleFor( $this->basePageName, 'hide' ),
|
||||
|
@ -286,7 +286,7 @@ class AbuseLogPager extends ReverseChronologicalPager {
|
|||
$this->msg( 'abusefilter-log-hidden-implicit' )->parse();
|
||||
}
|
||||
|
||||
if ( $isListItem && !$this->hideEntries && $this->afPermissionManager->canHideAbuseLog( $user ) ) {
|
||||
if ( $isListItem && !$this->hideEntries && $this->afPermissionManager->canHideAbuseLog( $performer ) ) {
|
||||
// Checkbox for hiding multiple entries, single entries are handled above
|
||||
$description = Xml::check( 'hideids[' . $row->afl_id . ']' ) . $description;
|
||||
}
|
||||
|
@ -378,7 +378,7 @@ class AbuseLogPager extends ReverseChronologicalPager {
|
|||
];
|
||||
}
|
||||
|
||||
if ( !$this->afPermissionManager->canSeeHiddenLogEntries( $this->getUser() ) ) {
|
||||
if ( !$this->afPermissionManager->canSeeHiddenLogEntries( $this->getAuthority() ) ) {
|
||||
$info['conds']['afl_deleted'] = 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -36,7 +36,7 @@ abstract class AbuseFilterSpecialPage extends SpecialPage {
|
|||
* @param string $pageType
|
||||
*/
|
||||
protected function addNavigationLinks( $pageType ) {
|
||||
$user = $this->getUser();
|
||||
$performer = $this->getAuthority();
|
||||
|
||||
$linkDefs = [
|
||||
'home' => 'AbuseFilter',
|
||||
|
@ -44,13 +44,13 @@ abstract class AbuseFilterSpecialPage extends SpecialPage {
|
|||
'examine' => 'AbuseFilter/examine',
|
||||
];
|
||||
|
||||
if ( $this->afPermissionManager->canViewAbuseLog( $user ) ) {
|
||||
if ( $this->afPermissionManager->canViewAbuseLog( $performer ) ) {
|
||||
$linkDefs += [
|
||||
'log' => 'AbuseLog'
|
||||
];
|
||||
}
|
||||
|
||||
if ( $this->afPermissionManager->canUseTestTools( $user ) ) {
|
||||
if ( $this->afPermissionManager->canUseTestTools( $performer ) ) {
|
||||
$linkDefs += [
|
||||
'test' => 'AbuseFilter/test',
|
||||
'tools' => 'AbuseFilter/tools'
|
||||
|
|
|
@ -250,7 +250,7 @@ class SpecialAbuseLog extends AbuseFilterSpecialPage {
|
|||
|
||||
$this->mSearchFilter = null;
|
||||
$this->mSearchGroup = null;
|
||||
if ( $this->afPermissionManager->canSeeLogDetails( $this->getUser() ) ) {
|
||||
if ( $this->afPermissionManager->canSeeLogDetails( $this->getAuthority() ) ) {
|
||||
$this->mSearchFilter = $request->getText( 'wpSearchFilter' );
|
||||
if ( count( $this->getConfig()->get( 'AbuseFilterValidGroups' ) ) > 1 ) {
|
||||
$this->mSearchGroup = $request->getText( 'wpSearchGroup' );
|
||||
|
@ -282,7 +282,7 @@ class SpecialAbuseLog extends AbuseFilterSpecialPage {
|
|||
* Builds the search form
|
||||
*/
|
||||
public function searchForm() {
|
||||
$user = $this->getUser();
|
||||
$performer = $this->getAuthority();
|
||||
$formDescriptor = [
|
||||
'SearchUser' => [
|
||||
'label-message' => 'abusefilter-log-search-user',
|
||||
|
@ -347,7 +347,7 @@ class SpecialAbuseLog extends AbuseFilterSpecialPage {
|
|||
'type' => 'select',
|
||||
'options' => $options,
|
||||
];
|
||||
if ( $this->afPermissionManager->canSeeHiddenLogEntries( $user ) ) {
|
||||
if ( $this->afPermissionManager->canSeeHiddenLogEntries( $performer ) ) {
|
||||
$formDescriptor['SearchEntries'] = [
|
||||
'type' => 'select',
|
||||
'label-message' => 'abusefilter-log-search-entries-label',
|
||||
|
@ -359,7 +359,7 @@ class SpecialAbuseLog extends AbuseFilterSpecialPage {
|
|||
];
|
||||
}
|
||||
|
||||
if ( $this->afPermissionManager->canSeeLogDetails( $user ) ) {
|
||||
if ( $this->afPermissionManager->canSeeLogDetails( $performer ) ) {
|
||||
$groups = $this->getConfig()->get( 'AbuseFilterValidGroups' );
|
||||
if ( count( $groups ) > 1 ) {
|
||||
$options = array_merge(
|
||||
|
@ -417,7 +417,7 @@ class SpecialAbuseLog extends AbuseFilterSpecialPage {
|
|||
*/
|
||||
public function showList() {
|
||||
$out = $this->getOutput();
|
||||
$user = $this->getUser();
|
||||
$performer = $this->getAuthority();
|
||||
|
||||
// Generate conditions list.
|
||||
$conds = [];
|
||||
|
@ -480,7 +480,7 @@ class SpecialAbuseLog extends AbuseFilterSpecialPage {
|
|||
|
||||
// if a filter is hidden, users who can't view private filters should
|
||||
// not be able to find log entries generated by it.
|
||||
if ( !$this->afPermissionManager->canViewPrivateFiltersLogs( $user ) ) {
|
||||
if ( !$this->afPermissionManager->canViewPrivateFiltersLogs( $performer ) ) {
|
||||
$searchedForPrivate = false;
|
||||
foreach ( $filtersList as $index => $filterData ) {
|
||||
try {
|
||||
|
@ -560,7 +560,7 @@ class SpecialAbuseLog extends AbuseFilterSpecialPage {
|
|||
$conds['afl_title'] = $searchTitle->getDBkey();
|
||||
}
|
||||
|
||||
if ( $this->afPermissionManager->canSeeHiddenLogEntries( $user ) ) {
|
||||
if ( $this->afPermissionManager->canSeeHiddenLogEntries( $performer ) ) {
|
||||
if ( $this->mSearchEntries === '1' ) {
|
||||
$conds['afl_deleted'] = 1;
|
||||
} elseif ( $this->mSearchEntries === '2' ) {
|
||||
|
@ -641,7 +641,7 @@ class SpecialAbuseLog extends AbuseFilterSpecialPage {
|
|||
* @return string|ButtonInputWidget
|
||||
*/
|
||||
private function getDeleteButton() {
|
||||
if ( !$this->afPermissionManager->canHideAbuseLog( $this->getUser() ) ) {
|
||||
if ( !$this->afPermissionManager->canHideAbuseLog( $this->getAuthority() ) ) {
|
||||
return '';
|
||||
}
|
||||
return new ButtonInputWidget( [
|
||||
|
@ -656,7 +656,7 @@ class SpecialAbuseLog extends AbuseFilterSpecialPage {
|
|||
*/
|
||||
public function showDetails( $id ) {
|
||||
$out = $this->getOutput();
|
||||
$user = $this->getUser();
|
||||
$performer = $this->getAuthority();
|
||||
|
||||
$pager = new AbuseLogPager(
|
||||
$this->getContext(),
|
||||
|
@ -703,10 +703,10 @@ class SpecialAbuseLog extends AbuseFilterSpecialPage {
|
|||
$filter_hidden = $row->af_hidden;
|
||||
}
|
||||
|
||||
if ( !$this->afPermissionManager->canSeeLogDetailsForFilter( $user, $filter_hidden ) ) {
|
||||
if ( !$this->afPermissionManager->canSeeLogDetailsForFilter( $performer, $filter_hidden ) ) {
|
||||
$error = 'abusefilter-log-cannot-see-details';
|
||||
} else {
|
||||
$visibility = self::getEntryVisibilityForUser( $row, $user, $this->afPermissionManager );
|
||||
$visibility = self::getEntryVisibilityForUser( $row, $performer, $this->afPermissionManager );
|
||||
if ( $visibility === self::VISIBILITY_HIDDEN ) {
|
||||
$error = 'abusefilter-log-details-hidden';
|
||||
} elseif ( $visibility === self::VISIBILITY_HIDDEN_IMPLICIT ) {
|
||||
|
@ -772,7 +772,7 @@ class SpecialAbuseLog extends AbuseFilterSpecialPage {
|
|||
// Build a table.
|
||||
$output .= $this->variablesFormatter->buildVarDumpTable( $vars );
|
||||
|
||||
if ( $this->afPermissionManager->canSeePrivateDetails( $user ) ) {
|
||||
if ( $this->afPermissionManager->canSeePrivateDetails( $performer ) ) {
|
||||
$formDescriptor = [
|
||||
'Reason' => [
|
||||
'label-message' => 'abusefilter-view-privatedetails-reason',
|
||||
|
|
|
@ -150,7 +150,7 @@ class AbuseFilterViewDiff extends AbuseFilterView {
|
|||
return false;
|
||||
}
|
||||
|
||||
if ( !$this->afPermManager->canViewPrivateFilters( $this->getUser() ) &&
|
||||
if ( !$this->afPermManager->canViewPrivateFilters( $this->getAuthority() ) &&
|
||||
( $this->oldVersion->isHidden() || $this->newVersion->isHidden() )
|
||||
) {
|
||||
$this->getOutput()->addWikiMsg( 'abusefilter-history-error-hidden' );
|
||||
|
|
|
@ -108,7 +108,6 @@ class AbuseFilterViewEdit extends AbuseFilterView {
|
|||
* Shows the page
|
||||
*/
|
||||
public function show() {
|
||||
$user = $this->getUser();
|
||||
$out = $this->getOutput();
|
||||
$out->enableOOUI();
|
||||
$request = $this->getRequest();
|
||||
|
@ -141,7 +140,7 @@ class AbuseFilterViewEdit extends AbuseFilterView {
|
|||
// Add the default warning and disallow messages in a JS variable
|
||||
$this->exposeMessages();
|
||||
|
||||
$canEdit = $this->afPermManager->canEdit( $user );
|
||||
$canEdit = $this->afPermManager->canEdit( $this->getAuthority() );
|
||||
|
||||
if ( $filter === null && !$canEdit ) {
|
||||
// Special case: Special:AbuseFilter/new is certainly not usable if the user cannot edit
|
||||
|
|
|
@ -106,7 +106,7 @@ class AbuseFilterViewExamine extends AbuseFilterView {
|
|||
$out = $this->getOutput();
|
||||
$out->setPageTitle( $this->msg( 'abusefilter-examine' ) );
|
||||
$out->addHelpLink( 'Extension:AbuseFilter/Rules format' );
|
||||
if ( $this->afPermManager->canUseTestTools( $this->getUser() ) ) {
|
||||
if ( $this->afPermManager->canUseTestTools( $this->getAuthority() ) ) {
|
||||
$out->addWikiMsg( 'abusefilter-examine-intro' );
|
||||
} else {
|
||||
$out->addWikiMsg( 'abusefilter-examine-intro-examine-only' );
|
||||
|
@ -242,7 +242,7 @@ class AbuseFilterViewExamine extends AbuseFilterView {
|
|||
public function showExaminerForLogEntry( $logid ) {
|
||||
// Get data
|
||||
$dbr = $this->loadBalancer->getConnection( DB_REPLICA );
|
||||
$user = $this->getUser();
|
||||
$performer = $this->getAuthority();
|
||||
$out = $this->getOutput();
|
||||
|
||||
$row = $dbr->selectRow(
|
||||
|
@ -269,12 +269,12 @@ class AbuseFilterViewExamine extends AbuseFilterView {
|
|||
// Conservatively assume that it's hidden, like in SpecialAbuseLog
|
||||
$isHidden = true;
|
||||
}
|
||||
if ( !$this->afPermManager->canSeeLogDetailsForFilter( $user, $isHidden ) ) {
|
||||
if ( !$this->afPermManager->canSeeLogDetailsForFilter( $performer, $isHidden ) ) {
|
||||
$out->addWikiMsg( 'abusefilter-log-cannot-see-details' );
|
||||
return;
|
||||
}
|
||||
|
||||
$visibility = SpecialAbuseLog::getEntryVisibilityForUser( $row, $user, $this->afPermManager );
|
||||
$visibility = SpecialAbuseLog::getEntryVisibilityForUser( $row, $performer, $this->afPermManager );
|
||||
if ( $visibility !== SpecialAbuseLog::VISIBILITY_VISIBLE ) {
|
||||
if ( $visibility === SpecialAbuseLog::VISIBILITY_HIDDEN ) {
|
||||
$msg = 'abusefilter-log-details-hidden';
|
||||
|
@ -312,10 +312,10 @@ class AbuseFilterViewExamine extends AbuseFilterView {
|
|||
$output->addModules( 'ext.abuseFilter.examine' );
|
||||
|
||||
// Add test bit
|
||||
if ( $this->afPermManager->canUseTestTools( $this->getUser() ) ) {
|
||||
if ( $this->afPermManager->canUseTestTools( $this->getAuthority() ) ) {
|
||||
$boxBuilder = $this->boxBuilderFactory->newEditBoxBuilder(
|
||||
$this,
|
||||
$this->getUser(),
|
||||
$this->getAuthority(),
|
||||
$output
|
||||
);
|
||||
|
||||
|
|
|
@ -63,7 +63,7 @@ class AbuseFilterViewHistory extends AbuseFilterView {
|
|||
$out = $this->getOutput();
|
||||
$out->enableOOUI();
|
||||
$filter = $this->getRequest()->getIntOrNull( 'filter' ) ?: $this->filter;
|
||||
$canViewPrivate = $this->afPermManager->canViewPrivateFilters( $this->getUser() );
|
||||
$canViewPrivate = $this->afPermManager->canViewPrivateFilters( $this->getAuthority() );
|
||||
|
||||
if ( $filter ) {
|
||||
try {
|
||||
|
|
|
@ -10,7 +10,7 @@ class AbuseFilterViewImport extends AbuseFilterView {
|
|||
*/
|
||||
public function show() {
|
||||
$out = $this->getOutput();
|
||||
if ( !$this->afPermManager->canEdit( $this->getUser() ) ) {
|
||||
if ( !$this->afPermManager->canEdit( $this->getAuthority() ) ) {
|
||||
$out->addWikiMsg( 'abusefilter-edit-notallowed' );
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -64,13 +64,13 @@ class AbuseFilterViewList extends AbuseFilterView {
|
|||
$out = $this->getOutput();
|
||||
$request = $this->getRequest();
|
||||
$config = $this->getConfig();
|
||||
$user = $this->getUser();
|
||||
$performer = $this->getAuthority();
|
||||
|
||||
$out->addWikiMsg( 'abusefilter-intro' );
|
||||
$this->showStatus();
|
||||
|
||||
// New filter button
|
||||
if ( $this->afPermManager->canEdit( $user ) ) {
|
||||
if ( $this->afPermManager->canEdit( $performer ) ) {
|
||||
$out->enableOOUI();
|
||||
$buttons = new OOUI\HorizontalLayout( [
|
||||
'items' => [
|
||||
|
@ -108,7 +108,7 @@ class AbuseFilterViewList extends AbuseFilterView {
|
|||
}
|
||||
$scope = $request->getVal( 'rulescope', $defaultscope );
|
||||
|
||||
$searchEnabled = $this->afPermManager->canViewPrivateFilters( $user ) && !(
|
||||
$searchEnabled = $this->afPermManager->canViewPrivateFilters( $performer ) && !(
|
||||
$config->get( 'AbuseFilterCentralDB' ) !== null &&
|
||||
!$config->get( 'AbuseFilterIsCentral' ) &&
|
||||
$scope === 'global' );
|
||||
|
@ -190,7 +190,7 @@ class AbuseFilterViewList extends AbuseFilterView {
|
|||
* @param array $conds
|
||||
*/
|
||||
private function showList( array $optarray, array $conds = [ 'af_deleted' => 0 ] ) {
|
||||
$user = $this->getUser();
|
||||
$performer = $this->getAuthority();
|
||||
$config = $this->getConfig();
|
||||
$centralDB = $config->get( 'AbuseFilterCentralDB' );
|
||||
$dbIsCentral = $config->get( 'AbuseFilterIsCentral' );
|
||||
|
@ -273,7 +273,7 @@ class AbuseFilterViewList extends AbuseFilterView {
|
|||
'default' => $furtherOptions
|
||||
];
|
||||
|
||||
if ( $this->afPermManager->canViewPrivateFilters( $user ) ) {
|
||||
if ( $this->afPermManager->canViewPrivateFilters( $performer ) ) {
|
||||
$globalEnabled = $centralDB !== null && !$dbIsCentral;
|
||||
$formDescriptor['querypattern'] = [
|
||||
'name' => 'querypattern',
|
||||
|
|
|
@ -98,14 +98,14 @@ class AbuseFilterViewRevert extends AbuseFilterView {
|
|||
public function show() {
|
||||
$lang = $this->getLanguage();
|
||||
|
||||
$user = $this->getUser();
|
||||
$performer = $this->getAuthority();
|
||||
$out = $this->getOutput();
|
||||
|
||||
if ( !$this->afPermManager->canRevertFilterActions( $user ) ) {
|
||||
if ( !$this->afPermManager->canRevertFilterActions( $performer ) ) {
|
||||
throw new PermissionsError( 'abusefilter-revert' );
|
||||
}
|
||||
|
||||
$block = $user->getBlock();
|
||||
$block = $performer->getBlock();
|
||||
if ( $block && $block->isSitewide() ) {
|
||||
throw new UserBlockedError( $block );
|
||||
}
|
||||
|
|
|
@ -101,7 +101,7 @@ class AbuseFilterViewTestBatch extends AbuseFilterView {
|
|||
public function show() {
|
||||
$out = $this->getOutput();
|
||||
|
||||
if ( !$this->afPermManager->canUseTestTools( $this->getUser() ) ) {
|
||||
if ( !$this->afPermManager->canUseTestTools( $this->getAuthority() ) ) {
|
||||
// TODO: the message still refers to the old rights
|
||||
$out->addWikiMsg( 'abusefilter-mustviewprivateoredit' );
|
||||
return;
|
||||
|
@ -114,7 +114,7 @@ class AbuseFilterViewTestBatch extends AbuseFilterView {
|
|||
$out->addWikiMsg( 'abusefilter-test-intro', self::$mChangeLimit );
|
||||
$out->enableOOUI();
|
||||
|
||||
$boxBuilder = $this->boxBuilderFactory->newEditBoxBuilder( $this, $this->getUser(), $out );
|
||||
$boxBuilder = $this->boxBuilderFactory->newEditBoxBuilder( $this, $this->getAuthority(), $out );
|
||||
|
||||
$rulesFields = [
|
||||
'rules' => [
|
||||
|
|
|
@ -46,7 +46,7 @@ class AbuseFilterViewTools extends AbuseFilterView {
|
|||
$out->addHelpLink( 'Extension:AbuseFilter/Rules format' );
|
||||
$request = $this->getRequest();
|
||||
|
||||
if ( !$this->afPermManager->canUseTestTools( $this->getUser() ) ) {
|
||||
if ( !$this->afPermManager->canUseTestTools( $this->getAuthority() ) ) {
|
||||
// TODO: the message still refers to the old rights
|
||||
$out->addWikiMsg( 'abusefilter-mustviewprivateoredit' );
|
||||
return;
|
||||
|
@ -55,7 +55,7 @@ class AbuseFilterViewTools extends AbuseFilterView {
|
|||
// Header
|
||||
$out->addWikiMsg( 'abusefilter-tools-text' );
|
||||
|
||||
$boxBuilder = $this->boxBuilderFactory->newEditBoxBuilder( $this, $this->getUser(), $out );
|
||||
$boxBuilder = $this->boxBuilderFactory->newEditBoxBuilder( $this, $this->getAuthority(), $out );
|
||||
|
||||
// Expression evaluator
|
||||
$formDesc = [
|
||||
|
@ -81,7 +81,7 @@ class AbuseFilterViewTools extends AbuseFilterView {
|
|||
|
||||
$out->addModules( 'ext.abuseFilter.tools' );
|
||||
|
||||
if ( $this->afPermManager->canEdit( $this->getUser() ) ) {
|
||||
if ( $this->afPermManager->canEdit( $this->getAuthority() ) ) {
|
||||
// Hacky little box to re-enable autoconfirmed if it got disabled
|
||||
$formDescriptor = [
|
||||
'RestoreAutoconfirmed' => [
|
||||
|
|
|
@ -43,7 +43,7 @@ class HideAbuseLog extends AbuseFilterView {
|
|||
$output = $this->getOutput();
|
||||
$output->enableOOUI();
|
||||
|
||||
if ( !$this->afPermManager->canHideAbuseLog( $this->getUser() ) ) {
|
||||
if ( !$this->afPermManager->canHideAbuseLog( $this->getAuthority() ) ) {
|
||||
$output->addWikiMsg( 'abusefilter-log-hide-forbidden' );
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue