From 66d948a658e25e5981182ec7fd5e049dc1910a42 Mon Sep 17 00:00:00 2001 From: Vladimir Fomichev Date: Tue, 9 Sep 2025 15:25:29 +0300 Subject: [PATCH] =?utf8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD?= =?utf8?q?=D0=B8=D0=B5=20=D0=B3=D1=80=D1=83=D0=BF=D0=BF=D1=8B=2010=20?= =?utf8?q?=D0=B2=20=D0=BF=D1=80=D0=BE=D0=B2=D0=B5=D1=80=D0=BA=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- erp24/controllers/MatrixTypeController.php | 36 ++++++++++++++++------ 1 file changed, 27 insertions(+), 9 deletions(-) diff --git a/erp24/controllers/MatrixTypeController.php b/erp24/controllers/MatrixTypeController.php index c41d8224..d527cf25 100644 --- a/erp24/controllers/MatrixTypeController.php +++ b/erp24/controllers/MatrixTypeController.php @@ -7,7 +7,6 @@ use Yii; use yii_app\records\Admin; use yii_app\records\AdminGroup; use yii_app\records\MatrixType; -use yii\data\ActiveDataProvider; use yii\web\Controller; use yii\web\NotFoundHttpException; use yii\filters\VerbFilter; @@ -36,8 +35,8 @@ class MatrixTypeController extends Controller */ public function actionIndex() { - if (!in_array(Admin::findOne([Yii::$app->user->id])->group_id, [AdminGroup::GROUP_IT, AdminGroup::GROUP_BUSH_CHEF_FLORIST, AdminGroup::GROUP_BUSH_DIRECTOR])) { - return $this->render('/site/index'); + if (($resp = $this->checkAccess()) !== null) { + return $resp; } $searchModel = new MatrixTypeSearch(); $dataProvider = $searchModel->search(\Yii::$app->request->queryParams); @@ -56,8 +55,8 @@ class MatrixTypeController extends Controller */ public function actionView($id) { - if (!in_array(Admin::findOne([Yii::$app->user->id])->group_id, [AdminGroup::GROUP_IT, AdminGroup::GROUP_BUSH_CHEF_FLORIST, AdminGroup::GROUP_BUSH_DIRECTOR])) { - return $this->render('/site/index'); + if (($resp = $this->checkAccess()) !== null) { + return $resp; } return $this->render('view', [ 'model' => $this->findModel($id), @@ -71,8 +70,8 @@ class MatrixTypeController extends Controller */ public function actionCreate() { - if (!in_array(Admin::findOne([Yii::$app->user->id])->group_id, [AdminGroup::GROUP_IT, AdminGroup::GROUP_BUSH_CHEF_FLORIST, AdminGroup::GROUP_BUSH_DIRECTOR])) { - return $this->render('/site/index'); + if (($resp = $this->checkAccess()) !== null) { + return $resp; } $model = new MatrixType(); @@ -94,8 +93,8 @@ class MatrixTypeController extends Controller */ public function actionUpdate($id) { - if (!in_array(Admin::findOne([Yii::$app->user->id])->group_id, [AdminGroup::GROUP_IT, AdminGroup::GROUP_BUSH_CHEF_FLORIST, AdminGroup::GROUP_BUSH_DIRECTOR])) { - return $this->render('/site/index'); + if (($resp = $this->checkAccess()) !== null) { + return $resp; } $model = $this->findModel($id); @@ -200,6 +199,9 @@ class MatrixTypeController extends Controller */ public function actionDelete($id) { + if (($resp = $this->checkAccess()) !== null) { + return $resp; + } $model = $this->findModel($id); $this->deleteWithChildren($model); @@ -292,4 +294,20 @@ class MatrixTypeController extends Controller throw new NotFoundHttpException('The requested page does not exist.'); } + + private function checkAccess() { + $groupId = Yii::$app->user->identity->group_id; + + if (!in_array($groupId, [ + AdminGroup::GROUP_IT, + AdminGroup::GROUP_BUSH_CHEF_FLORIST, + AdminGroup::GROUP_BUSH_DIRECTOR, + AdminGroup::GROUP_RS_DIRECTOR, + ], true)) { + return $this->render('/site/index'); + } + + return null; + } + } -- 2.39.5