1191

parent 87a14e84
......@@ -49,7 +49,10 @@ class SiteController extends Controller
public function actionError()
{
$this->layout = "clear";
return $this->render('error');
$exception = Yii::$app->errorHandler->exception;
return $this->render('error', ['exception' => $exception]);
}
public function actionLogin()
......
......@@ -17,9 +17,9 @@ use common\models\Settings;
<div id="page-container" class="fade">
<!-- begin error -->
<div class="error">
<div class="error-code m-b-10">404 <i class="fa fa-warning"></i></div>
<div class="error-code m-b-10"><?=($exception?$exception->statusCode:'404')?> <i class="fa fa-warning"></i></div>
<div class="error-content">
<div class="error-message">Произошла какая-то ошибка</div>
<div class="error-message"><?=($exception?$exception->getMessage():'Произошла какая-то ошибка')?></div>
<div class="error-desc m-b-20">
Страница не существует или у вас нет прав для ее просмотра.<br />
Проверьте введенный URL-адрес страницы или обратитесь в Службу технической поддержки для решения данного вопроса
......
......@@ -26,16 +26,11 @@ abstract class AdminController extends \common\components\BaseController
return $this->redirect('/site/login');
}
if(Yii::$app->user->identity->role != User::ROLE_ADMIN)
{
throw new NotSupportedException('The requested page does not exist.');
}
$module = $this->getModuleName();
if($module && !Yii::$app->authManager->checkAccess(Yii::$app->user->id, $module))
if(Yii::$app->user->identity->role != User::ROLE_ADMIN || ($module && !Yii::$app->authManager->checkAccess(Yii::$app->user->id, $module)))
{
throw new \Exception('There is no access to this page', 403);
throw new \yii\web\HttpException(403, 'У Вас нет прав для просмотра этой страницы');
}
}
......
......@@ -44,11 +44,18 @@ class LoginForm extends Model
*/
public function validatePassword($attribute, $params)
{
if (!$this->hasErrors()) {
if (!$this->hasErrors())
{
$user = $this->getUser();
if (!$user || !$user->validatePassword($this->password)) {
if (!$user || !$user->validatePassword($this->password))
{
$this->addError($attribute, 'Неверно указан e-mail или пароль. Проверьте правильность ввода.');
}
elseif($user->status == User::STATUS_BLOCKED)
{
$this->addError($attribute, 'У Вас нет прав для просмотра данного раздела. Обратитесь к Администратору для изменения параметров авторизации.');
}
}
}
......@@ -61,10 +68,15 @@ class LoginForm extends Model
{
$user = $this->getUser();
$user->last_logon = time();
$user->save(false, ['last_logon']);
if($user)
{
$user->last_logon = time();
$user->save(false, ['last_logon']);
return Yii::$app->user->login($user, $this->rememberMe ? 3600 * 24 * 30 : 0);
}
return Yii::$app->user->login($user, $this->rememberMe ? 3600 * 24 * 30 : 0);
return false;
}
/**
......
......@@ -183,13 +183,13 @@ class UserAdminController extends \common\components\AdminController
if($model->load(Yii::$app->request->post()))
{
if($model->send_email)
{
$model->sendPassword();
}
if($model->password)
{
if($model->send_email)
{
$model->sendPassword();
}
$model->password = $model->password_c = \Yii::$app->security->generatePasswordHash($model->password);
}
else
......
......@@ -286,7 +286,7 @@ class User extends \common\components\ActiveRecordModel implements IdentityInter
*/
public static function findByUsername($username)
{
return static::findOne(['email' => $username, 'status' => self::STATUS_ACTIVE]);
return static::findOne(['email' => $username/*, 'status' => self::STATUS_ACTIVE*/]);
}
/**
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment