* @since 1.0 */ class RouteController extends Controller { public function behaviors() { return [ 'verbs' => [ 'class' => VerbFilter::className(), 'actions' => [ 'create' => ['post'], 'assign' => ['post'], 'remove' => ['post'], 'refresh' => ['post'], ], ], ]; } /** * Lists all Route models. * @return mixed */ public function actionIndex() { $model = new Route(); return $this->render('index', ['routes' => $model->getRoutes()]); } /** * Creates a new AuthItem model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { Yii::$app->getResponse()->format = 'json'; $routes = Yii::$app->getRequest()->post('route', ''); $routes = preg_split('/\s*,\s*/', trim($routes), -1, PREG_SPLIT_NO_EMPTY); $model = new Route(); $model->addNew($routes); return $model->getRoutes(); } /** * Assign routes * @return array */ public function actionAssign() { $routes = Yii::$app->getRequest()->post('routes', []); $model = new Route(); $model->addNew($routes); Yii::$app->getResponse()->format = 'json'; return $model->getRoutes(); } /** * Remove routes * @return array */ public function actionRemove() { $routes = Yii::$app->getRequest()->post('routes', []); $model = new Route(); $model->remove($routes); Yii::$app->getResponse()->format = 'json'; return $model->getRoutes(); } /** * Refresh cache * @return type */ public function actionRefresh() { $model = new Route(); $model->invalidate(); Yii::$app->getResponse()->format = 'json'; return $model->getRoutes(); } }