}
$del = '';
// Don't show useless link to people who cannot hide revisions
- if( $wgUser->isAllowed( 'deletedhistory' ) ) {
+ if( $wgUser->isAllowed( 'deletedhistory' ) && !$wgUser->isBlocked() ) {
if( $row->log_deleted || $wgUser->isAllowed( 'deleterevision' ) ) {
$canHide = $wgUser->isAllowed( 'deleterevision' );
// If event was hidden from sysops
global $wgUser;
$this->mConds['log_user'] = $userid;
// Paranoia: avoid brute force searches (bug 17342)
- if( !$wgUser->isAllowed( 'deletedhistory' ) ) {
+ if( !$wgUser->isAllowed( 'deletedhistory' ) || $wgUser->isBlocked() ) {
$this->mConds[] = $this->mDb->bitAnd('log_deleted', LogPage::DELETED_USER) . ' = 0';
- } elseif( !$wgUser->isAllowed( 'suppressrevision' ) ) {
+ } elseif( !$wgUser->isAllowed( 'suppressrevision' ) || $wgUser->isBlocked() ) {
$this->mConds[] = $this->mDb->bitAnd('log_deleted', LogPage::SUPPRESSED_USER) .
' != ' . LogPage::SUPPRESSED_USER;
}
$this->mConds['log_title'] = $title->getDBkey();
}
// Paranoia: avoid brute force searches (bug 17342)
- if( !$wgUser->isAllowed( 'deletedhistory' ) ) {
+ if( !$wgUser->isAllowed( 'deletedhistory' ) || $wgUser->isBlocked() ) {
$this->mConds[] = $db->bitAnd('log_deleted', LogPage::DELETED_ACTION) . ' = 0';
- } elseif( !$wgUser->isAllowed( 'suppressrevision' ) ) {
+ } elseif( !$wgUser->isAllowed( 'suppressrevision' ) || $wgUser->isBlocked() ) {
$this->mConds[] = $db->bitAnd('log_deleted', LogPage::SUPPRESSED_ACTION) .
' != ' . LogPage::SUPPRESSED_ACTION;
}
function getUndeleteLink() {
$action = $this->getRequest()->getVal( 'action', 'view' );
- if ( $this->getUser()->isAllowed( 'deletedhistory' ) &&
+ if ( $this->getUser()->isAllowed( 'deletedhistory' ) && !$this->getUser()->isBlocked() &&
( $this->getTitle()->getArticleId() == 0 || $action == 'history' ) ) {
$includeSuppressed = $this->getUser()->isAllowed( 'suppressrevision' );
}
} else {
// article doesn't exist or is deleted
- if ( $wgUser->isAllowed( 'deletedhistory' ) ) {
+ if ( $wgUser->isAllowed( 'deletedhistory' ) && !$wgUser->isBlocked() ) {
$includeSuppressed = $wgUser->isAllowed( 'suppressrevision' );
$n = $title->isDeleted( $includeSuppressed );
if( $n ) {
public function execute() {
global $wgUser;
// Before doing anything at all, let's check permissions
- if ( !$wgUser->isAllowed( 'deletedhistory' ) ) {
+ if ( !$wgUser->isAllowed( 'deletedhistory' ) || $wgUser->isBlocked() ) {
$this->dieUsage( 'You don\'t have permission to view deleted revision information', 'permissiondenied' );
}
public function execute() {
global $wgUser;
// Before doing anything at all, let's check permissions
- if ( !$wgUser->isAllowed( 'deletedhistory' ) ) {
+ if ( !$wgUser->isAllowed( 'deletedhistory' ) || $wgUser->isBlocked() ) {
$this->dieUsage( 'You don\'t have permission to view deleted file information', 'permissiondenied' );
}
*/
function deletedLink( $id ) {
global $wgUser;
- if ( $wgUser->isAllowed( 'deletedhistory' ) ) {
+ if ( $wgUser->isAllowed( 'deletedhistory' ) && !$wgUser->isBlocked() ) {
$dbr = wfGetDB( DB_SLAVE );
$row = $dbr->selectRow('archive', '*',
array( 'ar_rev_id' => $id ),
);
# Add link to deleted user contributions for priviledged users
- if( $subject->isAllowed( 'deletedhistory' ) ) {
+ if( $subject->isAllowed( 'deletedhistory' ) && !$subject->isBlocked() ) {
$tools[] = $sk->linkKnown(
SpecialPage::getTitleFor( 'DeletedContributions', $username ),
wfMsgHtml( 'sp-contributions-deleted' )
$conds = array_merge( $userCond, $this->getNamespaceCond() );
// Paranoia: avoid brute force searches (bug 17342)
- if( !$wgUser->isAllowed( 'deletedhistory' ) ) {
+ if( !$wgUser->isAllowed( 'deletedhistory' ) || $wgUser->isBlocked() ) {
$conds[] = $this->mDb->bitAnd('rev_deleted',Revision::DELETED_USER) . ' = 0';
} elseif( !$wgUser->isAllowed( 'suppressrevision' ) ) {
$conds[] = $this->mDb->bitAnd('rev_deleted',Revision::SUPPRESSED_USER) .
return;
}
+ if( $wgUser->isBlocked() ){
+ throw new UserBlockedError( $wgUser->getBlock() );
+ }
+
global $wgOut, $wgRequest;
$wgOut->setPageTitle( wfMsgExt( 'deletedcontributions-title', array( 'parsemag' ) ) );
public function execute( $par ) {
$output = $this->getOutput();
$user = $this->getUser();
+
if( !$user->isAllowed( 'deletedhistory' ) ) {
- $output->permissionRequired( 'deletedhistory' );
- return;
+ throw new PermissionsError( 'deletedhistory' );
} elseif( wfReadOnly() ) {
- $output->readOnlyPage();
- return;
+ throw new ReadOnlyError;
+ } elseif( $user->isBlocked() ) {
+ throw new UserBlockedError( $user->getBlock() );
}
+
$this->mIsAllowed = $user->isAllowed('deleterevision'); // for changes
$this->setHeaders();
$this->outputHeader();
$this->displayRestrictionError();
return;
}
+
+ if ( $this->getUser()->isBlocked() ) {
+ throw new UserBlockedError( $this->getUser()->getBlock() );
+ }
+
$this->outputHeader();
$this->loadRequest();
$title = Title::makeTitleSafe( NS_FILE, $this->mDesiredDestName );
// Show a subtitle link to deleted revisions (to sysops et al only)
- if( $title instanceof Title ) {
- if ( $wgUser->isAllowed( 'deletedhistory' ) ) {
- $canViewSuppress = $wgUser->isAllowed( 'suppressrevision' );
- $count = $title->isDeleted( $canViewSuppress );
- if ( $count > 0 ) {
- $link = wfMsgExt(
- $wgUser->isAllowed( 'delete' ) ? 'thisisdeleted' : 'viewdeleted',
- array( 'parse', 'replaceafter' ),
- $this->getSkin()->linkKnown(
- SpecialPage::getTitleFor( 'Undelete', $title->getPrefixedText() ),
- wfMsgExt( 'restorelink', array( 'parsemag', 'escape' ), $count )
- )
- );
- $wgOut->addHTML( "<div id=\"contentSub2\">{$link}</div>" );
- }
+ if( $title instanceof Title && $wgUser->isAllowed( 'deletedhistory' ) && !$wgUser->isBlocked() ) {
+ $canViewSuppress = $wgUser->isAllowed( 'suppressrevision' );
+ $count = $title->isDeleted( $canViewSuppress );
+ if ( $count > 0 ) {
+ $link = wfMsgExt(
+ $wgUser->isAllowed( 'delete' ) ? 'thisisdeleted' : 'viewdeleted',
+ array( 'parse', 'replaceafter' ),
+ $this->getSkin()->linkKnown(
+ SpecialPage::getTitleFor( 'Undelete', $title->getPrefixedText() ),
+ wfMsgExt( 'restorelink', array( 'parsemag', 'escape' ), $count )
+ )
+ );
+ $wgOut->addHTML( "<div id=\"contentSub2\">{$link}</div>" );
}
}
}