44 parent::__construct( $form->getContext() );
55 $username = $this->opts->getValue(
'username' );
58 $size = abs( intval( $this->opts->getValue(
'size' ) ) );
60 if ( $this->opts->getValue(
'size-mode' ) ===
'max' ) {
61 $conds[] =
'page_len <= ' . $size;
63 $conds[] =
'page_len >= ' . $size;
71 } elseif ( MediaWikiServices::getInstance()
73 ->groupHasPermission(
'*',
'createpage' ) &&
74 $this->opts->getValue(
'hideliu' )
76 # If anons cannot make new pages, don't "exclude logged in users"!
82 # If this user cannot see patrolled edits or they are off, don't do dumb queries!
83 if ( $this->opts->getValue(
'hidepatrolled' ) && $this->
getUser()->useNPPatrol() ) {
87 if ( $this->opts->getValue(
'hidebots' ) ) {
91 if ( $this->opts->getValue(
'hideredirs' ) ) {
92 $conds[
'page_is_redirect'] = 0;
96 $tables = array_merge( $rcQuery[
'tables'], [
'page' ] );
97 $fields = array_merge( $rcQuery[
'fields'], [
98 'length' =>
'page_len',
'rev_id' =>
'page_latest',
'page_namespace',
'page_title'
100 $join_conds = [
'page' => [
'JOIN',
'page_id=rc_cur_id' ] ] + $rcQuery[
'joins'];
105 [ &$pager, $this->opts, &$conds, &$tables, &$fields, &$join_conds ] );
112 'join_conds' => $join_conds
122 $this->opts[
'tagfilter']
130 $namespace = $this->opts->getValue(
'namespace' );
131 if ( $namespace ===
'all' || $namespace ===
'' ) {
135 $namespace = intval( $namespace );
136 $invert = $this->opts->getValue(
'invert' );
137 $associated = $this->opts->getValue(
'associated' );
139 $eq_op = $invert ?
'!=' :
'=';
140 $bool_op = $invert ?
'AND' :
'OR';
142 $selectedNS = $this->mDb->addQuotes( $namespace );
143 if ( !$associated ) {
144 return [
"rc_namespace $eq_op $selectedNS" ];
147 $associatedNS = $this->mDb->addQuotes(
148 MediaWikiServices::getInstance()->getNamespaceInfo()->getAssociated( $namespace )
151 "rc_namespace $eq_op $selectedNS " .
153 " rc_namespace $eq_op $associatedNS"
158 return 'rc_timestamp';
162 return $this->mForm->formatRow( $row );
166 # Do a batch existence check on pages
168 foreach ( $this->mResult as $row ) {
169 $linkBatch->add(
NS_USER, $row->rc_user_text );
171 $linkBatch->add( $row->page_namespace, $row->page_title );
173 $linkBatch->execute();