public function __construct( $list, $row ) {
parent::__construct( $list, $row );
- $this->revision = new Revision( $row );
+ $this->revision = static::initRevision( $list, $row );
+ }
+
+ /**
+ * Create revision object from $row sourced from $list
+ *
+ * @param RevisionListBase $list
+ * @param mixed $row
+ * @return Revision
+ */
+ protected static function initRevision( $list, $row ) {
+ return new Revision( $row );
}
public function getIdField() {
return 'rev_user_text';
}
+ public function getAuthorActorField() {
+ return 'rev_actor';
+ }
+
public function canView() {
return $this->revision->userCan( Revision::DELETED_RESTRICTED, $this->list->getUser() );
}
$dbw->update( 'recentchanges',
[
'rc_deleted' => $bits,
- 'rc_patrolled' => 1
+ 'rc_patrolled' => RecentChange::PRC_PATROLLED
],
[
'rc_this_oldid' => $this->revision->getId(), // condition
$ret = [
'id' => $rev->getId(),
'timestamp' => wfTimestamp( TS_ISO_8601, $rev->getTimestamp() ),
+ 'userhidden' => (bool)$rev->isDeleted( Revision::DELETED_USER ),
+ 'commenthidden' => (bool)$rev->isDeleted( Revision::DELETED_COMMENT ),
+ 'texthidden' => (bool)$rev->isDeleted( Revision::DELETED_TEXT ),
];
- $ret += $rev->isDeleted( Revision::DELETED_USER ) ? [ 'userhidden' => '' ] : [];
- $ret += $rev->isDeleted( Revision::DELETED_COMMENT ) ? [ 'commenthidden' => '' ] : [];
- $ret += $rev->isDeleted( Revision::DELETED_TEXT ) ? [ 'texthidden' => '' ] : [];
if ( $rev->userCan( Revision::DELETED_USER, $user ) ) {
$ret += [
'userid' => $rev->getUser( Revision::FOR_THIS_USER ),