open_id) { $us = UserSession::find()->where(['sub' => $partner->open_id])->one(); if(!$us) { Auth::userPartnerLogout(); return $this->redirect('/partner'); } } } $this->partner = $partner; UserRight::setPartner($this->partner); return parent::beforeAction($action); } public function actionIndex($page) { if(!$this->partner) { $redirect = \Yii::$app->params['cms'] . '/partner-register-login/'; header('Location: '. $redirect); exit; } return $this->render("index/$page"); } public function actionWebsite($page) { if ($page == 'users' && !$this->partner->getRightsIds(1)) return $this->redirect('/partner/index/dashboard'); return $this->render("website/$page"); } public function actionUser($page) { return $this->render("user/$page"); } public function actionLogout() { $partner = Auth::userPartner(); if($partner->open_id) { $q = ""; if(!empty($_SESSION['id_token_hint'])) { $redirect = \Yii::$app->params['cms'] . '/partner-register-login/'; $q = '?id_token_hint='.$_SESSION['id_token_hint'].'&post_logout_redirect_uri='.$redirect; } header('Location: '. \Yii::$app->params['sso_logout_url'].$q); exit; } exit; } public function actionRoleRights() { if (!empty($_GET['role_id'])) { $roleRights = CmsRr::find()->innerJoinWith('right')->where(['role_id' => $_GET['role_id'], 'is_active' => 1])->all(); $rightsIds = []; foreach ($roleRights as $rr) { $rightsIds[] = $rr->right_id; } return $this->asJson(['rights' => $rightsIds]); } return $this->asJson([]); } }