MediaWiki master
MediaWiki\RecentChanges\ChangesListQuery\ExperienceCondition Class Reference

A filter condition module for user experience levels. More...

Inherits MediaWiki\RecentChanges\ChangesListQuery\ChangesListConditionBase.

Collaboration diagram for MediaWiki\RecentChanges\ChangesListQuery\ExperienceCondition:

Public Member Functions

 __construct (private ServiceOptions $config, private TempUserConfig $tempUserConfig, private UserFactory $userFactory)
 
 evaluate (stdClass $row, $value)
 Evaluate the filter condition against a row, determining whether it is true or false.Ignore the values set with require() and exclude(), use only the value passed as a parameter.To ensure that $row has the required fields present, capture() must be called before evaluate(). This will signal to prepareQuery() that the fields should be added.
Parameters
stdClass$row
mixed$valueThe validated value
Returns
bool

 
 exclude ( $value)
 
 prepareConds (IReadableDatabase $dbr, QueryBackend $query)
 Add conditions to the query according to the values passed to require() and exclude().Subclasses may use getUniqueValuesWithUnion() to get the required and excluded values.
Parameters
IReadableDatabase$dbr
QueryBackend$query

 
 validateValue ( $value)
 Validate a value and return its normalized form.
Parameters
mixed$value
Returns
mixed

 
- Public Member Functions inherited from MediaWiki\RecentChanges\ChangesListQuery\ChangesListConditionBase
 capture ()
 Set a flag indicating that evaluate() will be called with rows from the query result.
 
 isCaptured ()
 Check whether capture() has been called.
Returns
bool

 
- Public Member Functions inherited from MediaWiki\RecentChanges\ChangesListQuery\ChangesListCondition
 prepareQuery (IReadableDatabase $dbr, QueryBackend $query)
 Add conditions and joins to the query in order to implement require() and exclude().
 

Public Attributes

const CONSTRUCTOR_OPTIONS
 
- Public Attributes inherited from MediaWiki\RecentChanges\ChangesListQuery\ChangesListConditionBase
 function
 
- Public Attributes inherited from MediaWiki\RecentChanges\ChangesListQuery\ChangesListCondition
 function
 Add a value to the set of required values.
 

Protected Member Functions

 prepareCapture (IReadableDatabase $dbr, QueryBackend $query)
 

Additional Inherited Members

- Protected Attributes inherited from MediaWiki\RecentChanges\ChangesListQuery\ChangesListConditionBase
array $excluded = []
 
array $required = []
 

Detailed Description

A filter condition module for user experience levels.

Since
1.45

Definition at line 21 of file ExperienceCondition.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\RecentChanges\ChangesListQuery\ExperienceCondition::__construct ( private ServiceOptions $config,
private TempUserConfig $tempUserConfig,
private UserFactory $userFactory )

Definition at line 33 of file ExperienceCondition.php.

Member Function Documentation

◆ evaluate()

MediaWiki\RecentChanges\ChangesListQuery\ExperienceCondition::evaluate ( stdClass $row,
$value )

Evaluate the filter condition against a row, determining whether it is true or false.Ignore the values set with require() and exclude(), use only the value passed as a parameter.To ensure that $row has the required fields present, capture() must be called before evaluate(). This will signal to prepareQuery() that the fields should be added.

Parameters
stdClass$row
mixed$valueThe validated value
Returns
bool

Implements MediaWiki\RecentChanges\ChangesListQuery\ChangesListCondition.

Definition at line 60 of file ExperienceCondition.php.

◆ exclude()

MediaWiki\RecentChanges\ChangesListQuery\ExperienceCondition::exclude ( $value)
Parameters
mixed$value
Returns
never

Implements MediaWiki\RecentChanges\ChangesListQuery\ChangesListCondition.

Definition at line 55 of file ExperienceCondition.php.

◆ prepareCapture()

MediaWiki\RecentChanges\ChangesListQuery\ExperienceCondition::prepareCapture ( IReadableDatabase $dbr,
QueryBackend $query )
protected

◆ prepareConds()

MediaWiki\RecentChanges\ChangesListQuery\ExperienceCondition::prepareConds ( IReadableDatabase $dbr,
QueryBackend $query )

Add conditions to the query according to the values passed to require() and exclude().Subclasses may use getUniqueValuesWithUnion() to get the required and excluded values.

Parameters
IReadableDatabase$dbr
QueryBackend$query

Reimplemented from MediaWiki\RecentChanges\ChangesListQuery\ChangesListConditionBase.

Definition at line 91 of file ExperienceCondition.php.

References Wikimedia\Rdbms\IReadableDatabase\andExpr(), MediaWiki\RecentChanges\ChangesListQuery\QueryBackend\joinForConds(), Wikimedia\Rdbms\IReadableDatabase\orExpr(), and MediaWiki\RecentChanges\ChangesListQuery\QueryBackend\where().

◆ validateValue()

MediaWiki\RecentChanges\ChangesListQuery\ExperienceCondition::validateValue ( $value)

Validate a value and return its normalized form.

Parameters
mixed$value
Returns
mixed

Implements MediaWiki\RecentChanges\ChangesListQuery\ChangesListCondition.

Definition at line 42 of file ExperienceCondition.php.

Member Data Documentation

◆ CONSTRUCTOR_OPTIONS

const MediaWiki\RecentChanges\ChangesListQuery\ExperienceCondition::CONSTRUCTOR_OPTIONS
Initial value:
= [
]
const ExperiencedUserEdits
Name constant for the ExperiencedUserEdits setting, for use with Config::get()
const LearnerEdits
Name constant for the LearnerEdits setting, for use with Config::get()
const LearnerMemberSince
Name constant for the LearnerMemberSince setting, for use with Config::get()
const ExperiencedUserMemberSince
Name constant for the ExperiencedUserMemberSince setting, for use with Config::get()

Definition at line 22 of file ExperienceCondition.php.


The documentation for this class was generated from the following file: