MediaWiki  master
MediaWiki\User\TempUser\TempUserCreator Class Reference

Service for temporary user creation. More...

Inheritance diagram for MediaWiki\User\TempUser\TempUserCreator:
Collaboration diagram for MediaWiki\User\TempUser\TempUserCreator:

Public Member Functions

 __construct (RealTempUserConfig $config, ObjectFactory $objectFactory, UserFactory $userFactory, AuthManager $authManager, ?Throttler $throttler)
 
 acquireAndStashName (Session $session)
 Permanently acquire a username, stash it in a session, and return it. More...
 
 create ( $name=null, WebRequest $request=null)
 Acquire a serial number, create the corresponding user and log in. More...
 
 getPlaceholderName ()
 Get a placeholder name which matches the reserved prefix. More...
 
 getStashedNameOrPlaceholder (Session $session)
 Return a possible acquired and stashed username in a session. More...
 
 isAutoCreateAction (string $action)
 Is the action valid for user auto-creation? More...
 
 isEnabled ()
 Is temp user creation enabled? More...
 
 isReservedName (string $name)
 Does the name match a configured pattern which indicates that it conflicts with temporary user names? Should manual user creation be denied? More...
 
 isTempName (string $name)
 Does the name match the configured pattern indicating that it is a temporary auto-created user? More...
 
 shouldAutoCreate (Authority $authority, string $action)
 Should/would auto-create be performed if the user attempts to perform the given action? More...
 

Detailed Description

Service for temporary user creation.

For convenience this also proxies the TempUserConfig methods.

This is separate from TempUserConfig to avoid dependency loops. Special pages and actions are free to use this class, but services should take it as a constructor parameter only if necessary.

Since
1.39

Definition at line 26 of file TempUserCreator.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\User\TempUser\TempUserCreator::__construct ( RealTempUserConfig  $config,
ObjectFactory  $objectFactory,
UserFactory  $userFactory,
AuthManager  $authManager,
?Throttler  $throttler 
)

Member Function Documentation

◆ acquireAndStashName()

MediaWiki\User\TempUser\TempUserCreator::acquireAndStashName ( Session  $session)

Permanently acquire a username, stash it in a session, and return it.

Do not create the user.

If this method was called before with the same session ID, return the previously stashed username instead of acquiring a new one.

Parameters
Session$session
Returns
string The username

Definition at line 271 of file TempUserCreator.php.

References MediaWiki\Session\Session\get(), MediaWiki\Session\Session\save(), and MediaWiki\Session\Session\set().

◆ create()

MediaWiki\User\TempUser\TempUserCreator::create (   $name = null,
WebRequest  $request = null 
)

Acquire a serial number, create the corresponding user and log in.

Parameters
string | null$namePreviously acquired name
WebRequest | null$requestRequest details, used for throttling
Returns
CreateStatus

Definition at line 102 of file TempUserCreator.php.

References wfMessage().

◆ getPlaceholderName()

MediaWiki\User\TempUser\TempUserCreator::getPlaceholderName ( )

Get a placeholder name which matches the reserved prefix.

Returns
string

Implements MediaWiki\User\TempUser\TempUserConfig.

Definition at line 166 of file TempUserCreator.php.

◆ getStashedNameOrPlaceholder()

MediaWiki\User\TempUser\TempUserCreator::getStashedNameOrPlaceholder ( Session  $session)

Return a possible acquired and stashed username in a session.

Do not acquire or create the user.

If this method is called with the same session ID as function acquireAndStashName it returns the previously stashed username instead of a placeholder.

Since
1.41
Parameters
Session$session
Returns
string The username

Definition at line 293 of file TempUserCreator.php.

References MediaWiki\Session\Session\get().

◆ isAutoCreateAction()

MediaWiki\User\TempUser\TempUserCreator::isAutoCreateAction ( string  $action)

Is the action valid for user auto-creation?

Parameters
string$action
Returns
bool

Implements MediaWiki\User\TempUser\TempUserConfig.

Definition at line 150 of file TempUserCreator.php.

◆ isEnabled()

MediaWiki\User\TempUser\TempUserCreator::isEnabled ( )

Is temp user creation enabled?

Returns
bool

Implements MediaWiki\User\TempUser\TempUserConfig.

Definition at line 146 of file TempUserCreator.php.

◆ isReservedName()

MediaWiki\User\TempUser\TempUserCreator::isReservedName ( string  $name)

Does the name match a configured pattern which indicates that it conflicts with temporary user names? Should manual user creation be denied?

Parameters
string$name
Returns
mixed

Implements MediaWiki\User\TempUser\TempUserConfig.

Definition at line 162 of file TempUserCreator.php.

◆ isTempName()

MediaWiki\User\TempUser\TempUserCreator::isTempName ( string  $name)

Does the name match the configured pattern indicating that it is a temporary auto-created user?

Parameters
string$name
Returns
bool

Implements MediaWiki\User\TempUser\TempUserConfig.

Definition at line 158 of file TempUserCreator.php.

◆ shouldAutoCreate()

MediaWiki\User\TempUser\TempUserCreator::shouldAutoCreate ( Authority  $authority,
string  $action 
)

Should/would auto-create be performed if the user attempts to perform the given action?

Since
1.41
Parameters
Authority$authority
string$action
Returns
bool

Implements MediaWiki\User\TempUser\TempUserConfig.

Definition at line 154 of file TempUserCreator.php.


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