| Current Path : /var/www/html/agc/backend/controllers/ |
| Current File : /var/www/html/agc/backend/controllers/LoginController.php |
<?php
namespace backend\controllers;
use Yii;
use backend\modules\mimin\components\AccessControl;
//use common\models\User;
use backend\modules\mimin\models\User;
use yii\web\Controller;
use yii\filters\VerbFilter;
use yii\helpers\Url;
class LoginController extends Controller {
public function actionForgot() {
$msg = '';
$this->layout = 'empty';
if (isset($_POST) && !empty($_POST)) {
if (empty($_POST['username'])) {
$msg = '<div class="msg" style="background-color: #c24d4a;">Username cannot be blank</div>';
} else {
$username_post = Yii::$app->request->post('username');
if (($model = User::findOne(['username' => $username_post])) !== null) {
$pwd = Yii::$app->security->generateRandomString(8);
$model->password_hash = \Yii::$app->security->generatePasswordHash($pwd);
if ($model->save(false)) {
//send email
$email_content = '<p>Hi ' . $model->fullname . ',</p>
<p>We\'ve received your request to reset your password. You can access the system now using below details :</p>
<p>URL: <a href="' . Url::base(true) . '" target="_blank">' . Url::base(true) . '</a></p>
<p>Username: ' . $model->username . '</p>
<p>Password: ' . $pwd . '</p>
<p>- Admin -</p>';
$to_mail = $model->email;
$subject_mail = 'Reset Password';
$send_email = Yii::$app->emailModule->sendemail($to_mail, $subject_mail, $email_content);
if ($send_email) {
$msg = '<div class="msg" style="background-color: #1ab394;">Password success to reset. <br>Please check your email for your new password</div>';
}
} else {
$msg = '<div class="msg" style="background-color: #c24d4a;">Failed to reset password. <br>Please try again.</div>';
}
} else {
$msg = '<div class="msg" style="background-color: #c24d4a;">' . $username_post . ' not found. <br>Please make sure the your username are correct.</div>';
}
}
}
return $this->render('forgot', ['msg' => $msg]);
}
}