From baad3eb2a859ea75bbd2c2d989d601bb589cc0f3 Mon Sep 17 00:00:00 2001 From: callmez Date: Fri, 17 Jan 2014 11:32:14 +0800 Subject: [PATCH] fixed #1992 the issue that use 'site/captcha' will get wrong refreshUrl in module scenario --- framework/CHANGELOG.md | 2 ++ framework/captcha/Captcha.php | 2 +- framework/captcha/CaptchaValidator.php | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/framework/CHANGELOG.md b/framework/CHANGELOG.md index ea18161..7dd8c60 100644 --- a/framework/CHANGELOG.md +++ b/framework/CHANGELOG.md @@ -30,6 +30,8 @@ Yii Framework 2 Change Log - Bug #1937: Fixed wrong behavior or advanced app's `init --env` when called without parameter actually specified (samdark) - Bug #1959: `Html::activeCheckbox` wasn't respecting custom values for checked/unchecked state (klevron, samdark) - Bug #1965: `Controller::findLayoutFile()` returns incorrect file path when layout name starts with a slash (qiangxue) +- Bug #1992: In module scenario that use 'site/captcha' will get wrong refreshUrl (callmez) +- Bug #1999: `Controller::findLayoutFile()` returns incorrect file path when layout name starts with a slash (qiangxue) - Bug #1993: afterFind event in AR is now called after relations have been populated (cebe, creocoder) - Bug #1998: Unchecked required checkbox never pass client validation (klevron) - Bug: Fixed `Call to a member function registerAssetFiles() on a non-object` in case of wrong `sourcePath` for an asset bundle (samdark) diff --git a/framework/captcha/Captcha.php b/framework/captcha/Captcha.php index 9e69b9e..88c8a7e 100644 --- a/framework/captcha/Captcha.php +++ b/framework/captcha/Captcha.php @@ -106,7 +106,7 @@ class Captcha extends InputWidget protected function getClientOptions() { $options = [ - 'refreshUrl' => Html::url([$this->captchaAction, CaptchaAction::REFRESH_GET_VAR => 1]), + 'refreshUrl' => Html::url(['/' . $this->captchaAction, CaptchaAction::REFRESH_GET_VAR => 1]), 'hashKey' => "yiiCaptcha/{$this->captchaAction}", ]; return $options; diff --git a/framework/captcha/CaptchaValidator.php b/framework/captcha/CaptchaValidator.php index 6067a9c..e91ea67 100644 --- a/framework/captcha/CaptchaValidator.php +++ b/framework/captcha/CaptchaValidator.php @@ -68,7 +68,7 @@ class CaptchaValidator extends Validator */ public function createCaptchaAction() { - $ca = Yii::$app->createController(ltrim($this->captchaAction, '/')); + $ca = Yii::$app->createController($this->captchaAction); if ($ca !== false) { /** @var \yii\base\Controller $controller */ list($controller, $actionID) = $ca;