Class CCaptcha
CCaptcha renders a CAPTCHA image element.
CCaptcha is used together with CCaptchaAction
to provide CAPTCHA
- a way of preventing site spam.
The image element rendered by CCaptcha will display a CAPTCHA image generated
by an action of class CCaptchaAction
belonging to the current
controller. By default, the action ID should be 'captcha', which can be changed
by setting CCaptcha::$captchaAction
.
CCaptcha may also render a button next to the CAPTCHA image. Clicking on the button will change the CAPTCHA image to be a new one in an AJAX way.
If CCaptcha::$clickableImage
is set true, clicking on the CAPTCHA image will
refresh the CAPTCHA.
A CCaptchaValidator
may be used to validate that the user enters a
verification code matching the code displayed in the CAPTCHA image.
When combining CCaptcha with CActiveForm or CForm, make sure ajaxValidation is disabled. Performing ajax validation causes your Captcha to be refreshed, rendering the code invalid on the next validation attempt.
- CComponent
- CBaseController
- CWidget
- CCaptcha
Direct known subclasses
MobileCaptchaCopyright: 2008-2013 Yii Software LLC
License: http://www.yiiframework.com/license/
Author: Qiang Xue <qiang.xue@gmail.com>
Since: 1.0
Located at x2engine/framework/web/widgets/captcha/CCaptcha.php
public
|
|
protected
|
|
public
|
|
public static
boolean
|
#
checkRequirements( string $extension = null )
Checks if specified graphic extension support is loaded. |
__construct(),
actions(),
getController(),
getId(),
getOwner(),
getViewFile(),
getViewPath(),
init(),
render(),
setId()
|
beginCache(),
beginClip(),
beginContent(),
beginWidget(),
createWidget(),
endCache(),
endClip(),
endContent(),
endWidget(),
renderFile(),
renderInternal(),
widget()
|
public
string
|
$captchaAction | 'captcha' |
#
the ID of the action that should provide CAPTCHA image. Defaults to
'captcha', meaning the 'captcha' action of the current controller. This property
may also be in the format of 'ControllerID/ActionID'. Underneath, this property
is used by |
public
boolean
|
$showRefreshButton | true |
#
whether to display a button next to the CAPTCHA image. Clicking on the button will cause the CAPTCHA image to be changed to a new one. Defaults to true. |
public
boolean
|
$clickableImage | false |
#
whether to allow clicking on the CAPTCHA image to refresh the CAPTCHA
letters. Defaults to false. Hint: you may want to set |
public
string
|
$buttonLabel |
|
#
the label for the refresh button. Defaults to 'Get a new code'. |
public
string
|
$buttonType | 'link' |
#
the type of the refresh button. This should be either 'link' or 'button'. The former refers to hyperlink button while the latter a normal push button. Defaults to 'link'. |
public
array
|
$imageOptions | array() |
#
HTML attributes to be applied to the rendered image element. |
public
array
|
$buttonOptions | array() |
#
HTML attributes to be applied to the rendered refresh button element. |
$actionPrefix,
$skin
|
$controller,
$id,
$owner,
$viewPath
|