dynamikaweb / yii2-captcha
Component for google reCaptcha or hCaptcha.
Installs: 672
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 0
Forks: 1
Type:yii2-captcha
Requires
- php: >=7.0
- curl/curl: ^2.0
- yiisoft/yii2: *
Replaces
README
Features
- Custom alignment
- Centered by default
- Not jQuery dependent
- Not printable by default
- Development keys by default
- Better responsive Improvements
- Support for google reCaptcha and also hCaptcha
- Support for multiple validators, widgets and keys at the same time
Installation
The preferred way to install this extension is through composer.
Either run
$ composer require dynamikaweb/yii2-captcha "*"
or add
"dynamikaweb/yii2-captcha": "*"
to the require
section of your composer.json
file.
Usage
Widget using input name
- View file
<?php use dynamikaweb\captcha\Captcha; ?> <?=Captcha::widget([ 'siteKey' => 'XXX', 'name' => 'captcha', 'pos' => Captcha::POS_LEFT // or Captcha::POS_CENTER or Captcha::POS_RIGHT (optional) 'size' => Captcha::SIZE_COMPACT // or Captcha::SIZE_NORMAL (optional) 'type' => Captcha::TYPE_RECAPTCHA // or Captcha::TYPE_HCAPTCHA ])?>
Widget using model (site key in model file)
- Model file
<?php namespace app\models; use dynamikaweb\captcha\CaptchaValidator; class SomeModel extends yii\base\Model { public $captcha; public function rules() { return [ [['captcha'], CaptchaValidator::classname(), 'type' => CaptchaValidator::TYPE_RECAPTCHA, // or CaptchaValidator::TYPE_HCAPTCHA 'siteKey' => 'XXX', // (optional) 'secret' => 'XXX' ] ]; } }
- View file
<?php use dynamikaweb\captcha\Captcha; ?> <?=$form->attribute($model, 'captcha')->widget('dynamikaweb\captcha\Captcha')?>
Widget using model (site key in view file)
- Model file
<?php namespace app\models; use dynamikaweb\captcha\CaptchaValidator; class SomeModel extends yii\base\Model { public $captcha; public function rules() { return [ [['captcha'], CaptchaValidator::classname(), 'type' => CaptchaValidator::TYPE_RECAPTCHA, // or CaptchaValidator::TYPE_HCAPTCHA 'secret' => 'XXX' ] ]; } }
- View file
<?php use dynamikaweb\captcha\Captcha; ?> <?=$form->attribute($model, 'captcha')->widget('dynamikaweb\captcha\Captcha', [ 'siteKey' => 'XXX', 'size' => Captcha::SIZE_COMPACT // or Captcha::SIZE_NORMAL (optional) 'pos' => Captcha::POS_LEFT // or Captcha::POS_CENTER or Captcha::POS_RIGHT (optional) ])?>
This project is under BSD-3-Clause license.