MediaWiki  1.33.0
ReCaptcha Class Reference
Inheritance diagram for ReCaptcha:
Collaboration diagram for ReCaptcha:

Public Member Functions

 apiGetAllowedParams (&$module, &$params, $flags)
 
 createAuthenticationRequest ()
 
 describeCaptchaType ()
 
 getCaptcha ()
 Returns an array with 'question' and 'answer' keys. More...
 
 getCaptchaInfo ( $captchaData, $id)
 
 getError ()
 
 getFormInformation ( $tabIndex=1)
 Displays the reCAPTCHA widget. More...
 
 onAuthChangeFormFields (array $requests, array $fieldInfo, array &$formDescriptor, $action)
 
 retrieveCaptcha ( $index)
 Fetch this session's captcha info. More...
 
 storeCaptcha ( $info)
 Generate a captcha session ID and save the info in PHP's session storage. More...
 
- Public Member Functions inherited from SimpleCaptcha
 addFormInformationToOutput (OutputPage $out, array $formInformation)
 Processes the given $formInformation array and adds the options (see getFormInformation()) to the given OutputPage object. More...
 
 addFormToOutput (OutputPage $out, $tabIndex=1)
 Uses getFormInformation() to get the CAPTCHA form and adds it to the given OutputPage object. More...
 
 canSkipCaptcha ( $user, Config $config)
 Check whether the user provided / IP making the request is allowed to skip captchas. More...
 
 captchaTriggers ( $title, $action)
 
 clearCaptcha ( $index)
 Clear out existing captcha info from the session, to ensure it can't be reused. More...
 
 confirmEditMerged ( $context, $content, $status, $summary, $user, $minorEdit)
 An efficient edit filter callback based on the text after section merging. More...
 
 confirmEmailUser ( $from, $to, $subject, $text, &$error)
 Check the captcha on Special:EmailUser. More...
 
 editShowCaptcha ( $editPage)
 Insert the captcha prompt into an edit form. More...
 
 getMessage ( $action)
 Show a message asking the user to enter a captcha on edit The result will be treated as wiki text. More...
 
 increaseBadLoginCounter ( $username)
 Increase bad login counter after a failed login. More...
 
 injectEmailUser (&$form)
 Inject whazawhoo @fixme if multiple thingies insert a header, could break. More...
 
 isBadLoginPerUserTriggered ( $u)
 Is the per-user captcha triggered? More...
 
 isBadLoginTriggered ()
 Check if a bad login has already been registered for this IP address. More...
 
 needCreateAccountCaptcha (User $creatingUser=null)
 Logic to check if we need to pass a captcha for the current user to create a new account, or not. More...
 
 passCaptchaFromRequest (WebRequest $request, User $user)
 Given a required captcha run, test form input for correct input on the open session. More...
 
 passCaptchaLimited ( $index, $word, User $user)
 Checks, if the user reached the amount of false CAPTCHAs and give him some vacation or run self::passCaptcha() and clear counter if correct. More...
 
 passCaptchaLimitedFromRequest (WebRequest $request, User $user)
 Checks, if the user reached the amount of false CAPTCHAs and give him some vacation or run self::passCaptcha() and clear counter if correct. More...
 
 resetBadLoginCounter ( $username)
 Reset bad login counter after a successful login. More...
 
 setAction ( $action)
 
 setTrigger ( $trigger)
 
 shouldCheck (WikiPage $page, $content, $section, $context, $oldtext=null)
 
 showEditFormFields (&$editPage, &$out)
 Show error message for missing or incorrect captcha on EditPage. More...
 
 showHelp ()
 Show a page explaining what this wacky thing is. More...
 
 triggersCaptcha ( $action, $title=null)
 Checks, whether the passed action should trigger a CAPTCHA. More...
 

Protected Member Functions

 addCaptchaAPI (&$resultArr)
 
 getCaptchaParamsFromRequest (WebRequest $request)
 
 passCaptcha ( $challenge, $response)
 Calls the library function recaptcha_check_answer to verify the users input. More...
 
- Protected Member Functions inherited from SimpleCaptcha
 isAPICaptchaModule ( $module)
 
 keyMatch ( $answer, $info)
 Check if the submitted form matches the captcha session data provided by the plugin when the form was generated. More...
 
 log ( $message)
 Log the status and any triggering info for debugging or statistics. More...
 

Static Protected Attributes

static $messagePrefix = 'recaptcha-'
 
- Static Protected Attributes inherited from SimpleCaptcha
static $messagePrefix = 'captcha-'
 

Private Attributes

 $recaptcha_error = null
 

Additional Inherited Members

- Protected Attributes inherited from SimpleCaptcha
string $action
 Used to select the right message. More...
 
string $trigger
 Used in log messages. More...
 

Detailed Description

Definition at line 5 of file ReCaptcha.php.

Member Function Documentation

◆ addCaptchaAPI()

ReCaptcha::addCaptchaAPI ( $resultArr)
protected
Parameters
array&$resultArr

Reimplemented from SimpleCaptcha.

Definition at line 79 of file ReCaptcha.php.

References $recaptcha_error, and describeCaptchaType().

◆ apiGetAllowedParams()

ReCaptcha::apiGetAllowedParams ( $module,
$params,
  $flags 
)
Parameters
ApiBase&$module
array&$params
int$flags
Returns
bool

Reimplemented from SimpleCaptcha.

Definition at line 102 of file ReCaptcha.php.

References $params, SimpleCaptcha\isAPICaptchaModule(), and ApiBase\PARAM_HELP_MSG.

◆ createAuthenticationRequest()

ReCaptcha::createAuthenticationRequest ( )
Returns
ReCaptchaAuthenticationRequest

Reimplemented from SimpleCaptcha.

Definition at line 157 of file ReCaptcha.php.

◆ describeCaptchaType()

ReCaptcha::describeCaptchaType ( )
Returns
array

Reimplemented from SimpleCaptcha.

Definition at line 87 of file ReCaptcha.php.

Referenced by addCaptchaAPI().

◆ getCaptcha()

ReCaptcha::getCaptcha ( )

Returns an array with 'question' and 'answer' keys.

Subclasses might use different structure. Since MW 1.27 all subclasses must implement this method.

Returns
array

Reimplemented from SimpleCaptcha.

Definition at line 140 of file ReCaptcha.php.

◆ getCaptchaInfo()

ReCaptcha::getCaptchaInfo (   $captchaData,
  $id 
)
Parameters
array$captchaData
string$id
Returns
Message

Reimplemented from SimpleCaptcha.

Definition at line 150 of file ReCaptcha.php.

References wfMessage().

◆ getCaptchaParamsFromRequest()

ReCaptcha::getCaptchaParamsFromRequest ( WebRequest  $request)
protected
Parameters
WebRequest$request
Returns
array

Reimplemented from SimpleCaptcha.

Definition at line 38 of file ReCaptcha.php.

References $request, and $response.

◆ getError()

ReCaptcha::getError ( )
Returns
null

Reimplemented from SimpleCaptcha.

Definition at line 118 of file ReCaptcha.php.

References $recaptcha_error.

◆ getFormInformation()

ReCaptcha::getFormInformation (   $tabIndex = 1)

Displays the reCAPTCHA widget.

If $this->recaptcha_error is set, it will display an error in the widget.

Parameters
int$tabIndex
Returns
array

Reimplemented from SimpleCaptcha.

Definition at line 19 of file ReCaptcha.php.

References Xml\encodeJsVar(), recaptcha_get_html(), and wfDeprecated().

◆ onAuthChangeFormFields()

ReCaptcha::onAuthChangeFormFields ( array  $requests,
array  $fieldInfo,
array $formDescriptor,
  $action 
)
Parameters
array$requests
array$fieldInfo
array&$formDescriptor
string$action

Reimplemented from SimpleCaptcha.

Definition at line 167 of file ReCaptcha.php.

References $formDescriptor, $req, $requests, class, and ConfirmEditHooks\getInstance().

◆ passCaptcha()

ReCaptcha::passCaptcha (   $challenge,
  $response 
)
protected

Calls the library function recaptcha_check_answer to verify the users input.

Sets $this->recaptcha_error if the user is incorrect.

Parameters
string$challengeChallenge value
string$responseResponse value
Returns
bool

Reimplemented from SimpleCaptcha.

Definition at line 53 of file ReCaptcha.php.

References $recaptcha_error, $response, and $wgRequest.

◆ retrieveCaptcha()

ReCaptcha::retrieveCaptcha (   $index)

Fetch this session's captcha info.

Parameters
string$index
Returns
array|false array of info, or false if missing

Reimplemented from SimpleCaptcha.

Definition at line 135 of file ReCaptcha.php.

◆ storeCaptcha()

ReCaptcha::storeCaptcha (   $info)

Generate a captcha session ID and save the info in PHP's session storage.

(Requires the user to have cookies enabled to get through the captcha.)

A random ID is used so legit users can make edits in multiple tabs or windows without being unnecessarily hobbled by a serial order requirement. Pass the returned id value into the edit form as wpCaptchaId.

Parameters
array$infodata to store
Returns
string captcha ID key

Reimplemented from SimpleCaptcha.

Definition at line 129 of file ReCaptcha.php.

Member Data Documentation

◆ $messagePrefix

ReCaptcha::$messagePrefix = 'recaptcha-'
staticprotected

Definition at line 8 of file ReCaptcha.php.

◆ $recaptcha_error

ReCaptcha::$recaptcha_error = null
private

Definition at line 11 of file ReCaptcha.php.

Referenced by addCaptchaAPI(), getError(), and passCaptcha().


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