示例#1
0
 public static function findModel($id)
 {
     if (($model = Model::find()->where(['menu_id' => $id])->one()) !== null) {
         return $model;
     } else {
         return (object) ['menu' => '{"left" : [{"label": "wrong id of menu"}], "right": []}'];
     }
 }
示例#2
0
 /**
  * Creates data provider instance with search query applied
  * @param array $params
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Model::find();
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     if (!($this->load($params) && $this->validate())) {
         return $dataProvider;
     }
     $query->andFilterWhere(['menu_id' => $this->menuId]);
     $query->andFilterWhere(['like', 'menu', $this->menu]);
     return $dataProvider;
 }
示例#3
0
 public function actionUpdate($id)
 {
     $m = Model::findModel($id);
     $r = Yii::$app->request;
     if ($r->isAjax) {
         \Yii::$app->response->format = Response::FORMAT_JSON;
         switch (true) {
             case $r->post('get'):
                 return ['success' => true, 'menu' => $m->menu];
             case $r->post('update'):
                 $m->menu = $r->post('menu');
                 return $m->save() ? ['success' => true] : ['success' => false];
             default:
                 return ['success' => false];
         }
     }
     return $this->render('update');
 }
示例#4
0
 public static function NavbarRight($id)
 {
     $m = Model::findModel($id);
     $m = Json::decode($m->menu);
     return $m['right'];
 }