public static function create($phrase = null) { $builder = new CaptchaBuilder(); if ($phrase) { $builder->setPhrase($phrase); } $builder->build(); Session::put(static::$config['session'], Hash::make(Str::lower($builder->getPhrase()))); return Response::make($builder->get())->header('Content-type', 'image/jpeg'); }
public function captcha(Model $Model, $check) { $value = array_values($check); $value = $value[0]; $field = key($check); if (CakeSession::check('captcha')) { $builder = new CaptchaBuilder(); $builder->setPhrase(CakeSession::read('captcha')); if ($builder->testPhrase($value)) { return true; } } return false; }
/** * Validate captcha * * @access protected * @param array $values Form values * @return boolean */ protected function validateCaptcha(array $values) { $errors = array(); if (!isset($this->sessionStorage->captcha)) { $result = false; } else { $builder = new CaptchaBuilder(); $builder->setPhrase($this->sessionStorage->captcha); $result = $builder->testPhrase(isset($values['captcha']) ? $values['captcha'] : ''); if (!$result) { $errors['captcha'] = array(t('Invalid captcha')); } } return array($result, $errors); }
/** * Sets the phrase to the builder */ public function setPhrase($phrase) { $this->builder->setPhrase($phrase); }
/** * Validate captcha * * @access protected * @param array $values Form values * @return boolean */ protected function validateCaptcha(array $values) { $result = true; $errors = array(); if ($this->userLockingModel->hasCaptcha($values['username'])) { if (!isset($this->sessionStorage->captcha)) { $result = false; } else { $builder = new CaptchaBuilder(); $builder->setPhrase($this->sessionStorage->captcha); $result = $builder->testPhrase(isset($values['captcha']) ? $values['captcha'] : ''); if (!$result) { $errors['login'] = t('Invalid captcha'); } } } return array($result, $errors); }
/** * Validate captcha * * @access public * @param array $values Form values * @return boolean */ public function validateFormCaptcha(array $values) { if ($this->hasCaptcha($values['username'])) { $builder = new CaptchaBuilder(); $builder->setPhrase($this->session['captcha']); return $builder->testPhrase(isset($values['captcha']) ? $values['captcha'] : ''); } return true; }
/** * 生成登录页面的图形验证码 * * @author young * @name 生成登录页面的图形验证码 * @version 2013.11.07 young * @return \Zend\Stdlib\ResponseInterface */ public function captchaAction() { $builder = new CaptchaBuilder(); $builder->setBackgroundColor(255, 255, 255); $builder->setTextColor(255, 0, 255); $builder->setPhrase(rand(100000, 999999)); $_SESSION['phrase'] = $builder->getPhrase(); $builder->build(150, 40); header('Content-type: image/jpeg'); $this->response->setContent($builder->output(80)); return $this->response; }