UserCreateService: check if we're from web before setting flash message #195
Also return an error message to console if mail send failed
This commit is contained in:
@ -7,6 +7,7 @@
|
||||
- Enh: Changed `View::render()` calls in views to use absolute paths (ajmedway)
|
||||
- Fix #169: Fix bug in ReCaptchaComponent (BuTaMuH)
|
||||
- Fix #168: Fix spelling in russian language (EvgenyOrekhov)
|
||||
- Fix #195: UserCreateService: check if we're from web before setting flash message (maxxer)
|
||||
|
||||
## 1.1.4 - February 19, 2018
|
||||
- Enh: Check enableEmailConfirmation on registration (faenir)
|
||||
|
||||
@ -16,6 +16,7 @@ use Da\User\Event\UserEvent;
|
||||
use Da\User\Helper\SecurityHelper;
|
||||
use Da\User\Model\User;
|
||||
use Da\User\Traits\MailAwareTrait;
|
||||
use Da\User\Traits\ModuleAwareTrait;
|
||||
use Exception;
|
||||
use Yii;
|
||||
use yii\base\InvalidCallException;
|
||||
@ -23,6 +24,7 @@ use yii\base\InvalidCallException;
|
||||
class UserCreateService implements ServiceInterface
|
||||
{
|
||||
use MailAwareTrait;
|
||||
use ModuleAwareTrait;
|
||||
|
||||
protected $model;
|
||||
protected $securityHelper;
|
||||
@ -67,14 +69,22 @@ class UserCreateService implements ServiceInterface
|
||||
|
||||
$model->trigger(UserEvent::EVENT_AFTER_CREATE, $event);
|
||||
if (!$this->sendMail($model)) {
|
||||
Yii::$app->session->setFlash(
|
||||
'warning',
|
||||
Yii::t(
|
||||
'usuario',
|
||||
'Error sending welcome message to "{email}". Please try again later.',
|
||||
['email' => $model->email]
|
||||
)
|
||||
$error_msg = Yii::t(
|
||||
'usuario',
|
||||
'Error sending welcome message to "{email}". Please try again later.',
|
||||
['email' => $model->email]
|
||||
);
|
||||
// from web display a flash message (if enabled)
|
||||
if($this->getModule()->enableFlashMessages == TRUE && is_a(Yii::$app, yii\web\Application::class)) {
|
||||
Yii::$app->session->setFlash(
|
||||
'warning',
|
||||
$error_msg
|
||||
);
|
||||
}
|
||||
// if we're from console add an error to the model in order to return an error message
|
||||
if(is_a(Yii::$app, yii\console\Application::class)) {
|
||||
$model->addError("username", $error_msg);
|
||||
}
|
||||
$transaction->rollBack();
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user