|
|
<?php
namespace backend\controllers;
use antgoods\goods\models\ars\Goods; use Yii; use yii\base\NotSupportedException; use yii\web\Controller; use yii\filters\VerbFilter; use yii\filters\AccessControl; use common\models\LoginForm; use common\models\CategorySearch; use yii\web\Cookie; use yii\web\ForbiddenHttpException; use yii\web\NotAcceptableHttpException; use yii\web\NotFoundHttpException; use backend\logic\PermissionManager; use ReflectionException; use yii\base\InvalidConfigException;
/** * Site controller * @DESCRIBE 网站基本权限 DESCRIBE */ class SiteController extends Controller {
/** * {@inheritdoc} */ public function behaviors() { return [ 'access' => [ 'class' => AccessControl::className(), 'rules' => [ [ 'actions' => ['login', 'error', 'get-permission'], 'allow' => true, ], [ 'actions' => ['logout', 'index'], 'allow' => true, 'roles' => ['@'], ], ], ], 'verbs' => [ 'class' => VerbFilter::className(), 'actions' => [ // 'logout' => ['post'],
], ], ]; }
/** * {@inheritdoc} */ public function actions() { return [ 'error' => [ 'class' => 'yii\web\ErrorAction', ], 'upload' => [ 'class' => 'iron\actions\UploadAction', ] ]; }
/** * Displays homepage. * * @return string */ public function actionIndex() { return $this->render('index'); }
/** * Login action. * * @return string * @ACTION 登录 ACTION * @throws ForbiddenHttpException */ public function actionLogin() {
$this->layout = 'base'; if (!Yii::$app->user->isGuest) { return $this->goHome(); } $key = Yii::$app->request->get('key'); if (Yii::$app->userLogic->login($key)) { return $this->goBack(); } else { throw new ForbiddenHttpException('身份验证失败,请重新进去'); } }
/** * Logout action. * * @return string * @ACTION 登出 ACTION */ public function actionLogout() { Yii::$app->user->logout();
return $this->goHome(); }
/** * 获取权限 * @return array * @throws ReflectionException * @throws InvalidConfigException */ public function actionGetPermission() { return PermissionManager::getAppPermission(); }
}
|