public function update(Request $request, $menuId) { $info = $request->only('info'); $menu = Menu::find($menuId); $menu->update($info['info']); return view('message', ['msg' => '操作成功', 'redirect' => route('menus.index')]); }
public function run() { $menu = Menu::find()->where(['position' => 'bottom'])->one(); $p = explode(',', $menu->content); $model = Page::find()->where(['id' => $p])->all(); return $this->render('links', ['pages' => $model]); }
public static function getChildMenu($ParentId, $ParentLabel) { $menuData = Menu::find()->where(['ismenu' => TRUE, 'status' => TRUE, 'parentid' => $ParentId, 'isweb' => FALSE])->orderBy('orderby')->all(); $submenu = array(); $menu = array(); if (!empty($menuData)) { foreach ($menuData as $mKey => $mValue) { $menu['label'] = Html::tag('i', '', ['class' => $mValue['labelicon']]) . Html::encode($mValue['label']); $urlArray = [$mValue['module'], $mValue['controller'], $mValue['action']]; $menu['url'] = \Yii::$app->urlManager->createUrl(implode('/', $urlArray)); $class = ''; if (\Yii::$app->controller->id == $urlArray[1] && \Yii::$app->controller->action->id == $urlArray[2]) { $class = 'active'; \Yii::$app->params['breadcrumbs'][] = $ParentLabel; \Yii::$app->params['breadcrumbs'][] = $mValue['label']; } $menu['options'] = ['class' => $class]; $submenu[$mValue['orderby']] = $menu; unset($menu, $urlArray); } // $submenu['options'] = ['class' => 'children']; } return $submenu; //, 'options' => ['class' => 'children']]; }
public function destroy($id) { // $data = Menu::find($id); if ($data->delete()) { return response()->json(array('success' => TRUE, 'msg' => 'Data Berhasil Dihapus')); } }
public function postDestroy() { $menu = Menu::find(Input::get('id')); if ($menu) { $menu->delete(); return Redirect::back()->with('message', 'Элемент меню удален'); } return Redirect::back()->with('message', "Ошибка"); }
public function actionPage($slug) { $page = Page::find()->where(['slug' => $slug])->one(); if ($slug == 'home') { return $this->goHome(); } if (Yii::$app->deviceDetect->isMobile()) { $this->layout = "//mobile"; $mobile = 'mobile/'; } else { $this->layout = "//inner"; $mobile = ''; } if ($page->parent_id == 0) { $menu = Menu::find()->where(['position' => 'bottom'])->one(); $links = explode(',', $menu->content); if ($page->id == 13) { $group_news = Post::find()->where(['page_id' => 14])->orderBy(['create_date' => SORT_DESC])->all(); $industry_news = Post::find()->where(['page_id' => 15])->orderBy(['create_date' => SORT_DESC])->limit(6)->all(); $media_news = Post::find()->where(['page_id' => 16])->orderBy(['create_date' => SORT_DESC])->limit(6)->all(); $pic_news = Photo::find()->where(['page_id' => 39, 'parent_id' => 0])->orderBy(['create_date' => SORT_DESC])->limit(10)->all(); $headlines = Post::find()->where(['is_headline' => 1])->orderBy(['create_date' => SORT_DESC])->all(); return $this->render($mobile . 'template/' . $page->template, ['page' => $page, 'group_news' => $group_news, 'industry_news' => $industry_news, 'media_news' => $media_news, 'pic_news' => $pic_news, 'headlines' => $headlines]); } else { if (in_array($page->id, $links)) { return $this->render($mobile . 'template/' . $page->template, ['page' => $page, 'menu' => Page::find()->where(['id' => $links])->all()]); } } $menu = Page::find()->where(['parent_id' => $page->id])->orderBy(['display_order' => SORT_ASC])->all(); $s = $menu ? $menu[0]->slug : null; return $this->redirect(['page', 'slug' => $s]); } else { $menu = Page::find()->where(['parent_id' => $page->parent_id])->orderBy(['display_order' => SORT_ASC])->all(); } if ($page->type == 3) { //新闻列表 $query = Post::find()->where(['page_id' => $page->id]); $countQuery = clone $query; $pnation = new Pagination(['defaultPageSize' => 12, 'totalCount' => $countQuery->count()]); $posts = $query->orderBy(['create_date' => SORT_DESC])->offset($pnation->offset)->limit($pnation->limit)->all(); return $this->render($mobile . 'template/' . $page->template, ['page' => $page, 'menu' => $menu, 'pnation' => $pnation, 'posts' => $posts]); } else { if ($page->type == 4) { //相册列表 $query = Photo::find()->where(['page_id' => $page->id, 'parent_id' => 0]); $countQuery = clone $query; $pnation = new Pagination(['defaultPageSize' => 9, 'totalCount' => $countQuery->count()]); $albums = $query->orderBy(['create_date' => SORT_DESC])->offset($pnation->offset)->limit($pnation->limit)->all(); // $albums = Photo::find()->where(['page_id'=>$page->id,'parent_id'=>0])->orderBy(['create_date'=>SORT_DESC])->all(); return $this->render($mobile . 'template/' . $page->template, ['page' => $page, 'albums' => $albums, 'pnation' => $pnation, 'menu' => $menu]); } } return $this->render($mobile . 'template/' . $page->template, ['page' => $page, 'menu' => $menu]); }
function getAllChild($role_id, $parent_id = NULL, $level = 0) { foreach (\app\models\Menu::find()->where(["parent_id" => $parent_id])->all() as $menu) { ?> <div class="form-group" style="padding-left: <?php echo $level * 20; ?> px"> <label> <input type="checkbox" name="menu[]" value="<?php echo $menu->id; ?> " class="minimal" <?php echo isChecked($role_id, $menu->id) ? "checked" : ""; ?> > </label> <label style="padding-left: 10px"> <?php echo $menu->name; ?> </label> </div> <?php //Show All Actions $camelName = Inflector::id2camel($menu->controller); $fullControllerName = "app\\controllers\\" . $camelName . "Controller"; if (class_exists($fullControllerName)) { $reflection = new ReflectionClass($fullControllerName); $methods = $reflection->getMethods(); echo "<div class=\"form-group\" style=\"padding-left: " . ($level * 20 + 10) . "px;\">"; echo "<label><input type=\"checkbox\" class=\"minimal select-all\" ></label><label style=\"padding: 0px 20px 0px 5px\"> Select All</label>"; foreach ($methods as $method) { if (substr($method->name, 0, 6) == "action" && $method->name != "actions") { $camelAction = substr($method->name, 6); $id = Inflector::camel2id($camelAction); $name = Inflector::camel2words($camelAction); $action = \app\models\Action::find()->where(["action_id" => $id, "controller_id" => $menu->controller])->one(); if ($action == NULL) { //If the action not in database, save it ! $action = new \app\models\Action(); $action->action_id = $id; $action->controller_id = $menu->controller; $action->name = $name; $action->save(); } showCheckbox("action[]", $action->id, $name, hasAccessToAction($role_id, $action->id)); } } echo "</div>"; } getAllChild($role_id, $menu->id, $level + 1); } }
public function update(StoreMenuPostRequest $request, $id) { $menu = Menu::find($id); $res = $menu->update($request->all()); Menu::fixTree(); if ($res) { flash()->success('操作成功'); } else { flash()->error('操作失败'); } return redirect()->back(); }
public static function getMenu($roleId, $parentId = NULL) { $output = []; foreach (Menu::find()->where(["parent_id" => $parentId])->all() as $menu) { $obj = ["label" => $menu->name, "icon" => $menu->icon, "url" => SidebarMenu::getUrl($menu), "visible" => SidebarMenu::roleHasAccess($roleId, $menu->id)]; if (count($menu->menus) != 0) { $obj["items"] = SidebarMenu::getMenu($roleId, $menu->id); } $output[] = $obj; } return $output; }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Menu::find(); $dataProvider = new ActiveDataProvider(['query' => $query]); $this->load($params); if (!$this->validate()) { // uncomment the following line if you do not want to return any records when validation fails // $query->where('0=1'); return $dataProvider; } $query->andFilterWhere(['menu_id' => $this->menu_id, 'parent_id' => $this->parent_id, 'flag_active' => $this->flag_active]); $query->andFilterWhere(['like', 'menu_name', $this->menu_name])->andFilterWhere(['like', 'menu_url', $this->menu_url])->andFilterWhere(['like', 'menu_class', $this->menu_class]); return $dataProvider; }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Menu::find(); $dataProvider = new ActiveDataProvider(['query' => $query]); $this->load($params); if (!$this->validate()) { // uncomment the following line if you do not want to return any records when validation fails // $query->where('0=1'); return $dataProvider; } $query->andFilterWhere(['id' => $this->id, 'parent_id' => $this->parent_id, 'is_active' => $this->is_active, 'order' => $this->order, 'created_at' => $this->created_at, 'updated_at' => $this->updated_at]); $query->andFilterWhere(['like', 'user_role', $this->user_role])->andFilterWhere(['like', 'title', $this->title])->andFilterWhere(['like', 'route', $this->route])->andFilterWhere(['like', 'params', $this->params])->andFilterWhere(['like', 'menu_icon_class', $this->menu_icon_class]); return $dataProvider; }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Menu::find(); $dataProvider = new ActiveDataProvider(['query' => $query]); $this->load($params); if (!$this->validate()) { // uncomment the following line if you do not want to any records when validation fails // $query->where('0=1'); return $dataProvider; } $query->andFilterWhere(['id' => $this->id, 'order' => $this->order, 'parent_id' => $this->parent_id]); $query->andFilterWhere(['like', 'name', $this->name])->andFilterWhere(['like', 'controller', $this->controller])->andFilterWhere(['like', 'action', $this->action])->andFilterWhere(['like', 'icon', $this->icon]); return $dataProvider; }
public function run() { $menu = Menu::find()->where(['position' => 'top'])->one(); $p = explode(",", $menu->content); $pages = Page::find()->where(['id' => $p])->all(); if (strpos(\Yii::$app->request->url, "view-post")) { $post = Post::findOne(\Yii::$app->request->get('id')); $current_page = $post->page; } else { $slug = \Yii::$app->request->get('slug'); $current_page = Page::find()->where(['slug' => $slug])->one(); } return $this->render('nav', ['pages' => $pages, 'current_page' => $current_page]); }
public function run() { $menu = Menu::find()->where(['position' => 'top'])->one(); $p = explode(',', $menu->content); $model = Page::find()->orderBy('display_order asc')->all(); $pages = $this->tree($model, 0, $p); if (strpos(\Yii::$app->request->url, "view-post")) { $post = Post::findOne(\Yii::$app->request->get('id')); $current_page = $post->page; } else { $slug = \Yii::$app->request->get('slug'); $current_page = Page::find()->where(['slug' => $slug])->one(); } return $this->render('cateWidget', ['pages' => $pages, 'current_page' => $current_page]); }
private function _moveMenuItem($menu_id, $operator) { $menu = Menu::find($menu_id); $order = $operator == '>' ? 'asc' : 'desc'; $neighbour = Menu::where('sort', $operator, $menu->sort)->orderBy('sort', $order)->first(); if (empty($neighbour)) { return false; } $old_sort = $menu->sort; $menu->sort = $neighbour->sort; $neighbour->sort = $old_sort; $menu->save(); $neighbour->save(); return true; }
public function actionIndex($uid) { $user = User::findOne($uid); if (empty($user)) { throw new HttpException(404, '用户不存在!'); } if ($this->user->rid > 1 && $user->rid == 2) { throw new MethodNotAllowedHttpException('权限不够!'); } $menus = Menu::find()->orderBy('sortNum desc')->all(); $userPermissions = UserPermission::find()->where('uid = :uid', [':uid' => $uid])->all(); $permissions = array(); foreach ($userPermissions as $userPermission) { $permissions[$userPermission->mid] = $userPermission->mid; } return $this->render('index', array('menus' => $menus, 'permissions' => $permissions, 'uid' => $uid)); }
private static function buildMenu($id, $settings) { $known = Menu::find()->where(['parent' => $id])->orderBy('order')->all(); //()->where $menu = array(); //var_dump($known); //exit; foreach ($known as $item) { if (($item->id == 43 || $item->parent == 43) && $settings['company.doublebook'] == false) { //??($item->id == 43) || continue; } //echo " ".$item->id." ".$item->label."<br />"; //$url = str_replace('/', '.', $item->route); $url = $item->route; //echo "/".$url.Yii::$app->user->can("/".$url)."<br>\n"; //echo yii\rbac\ManagerInterface::checkAccess(1,$url); //if ((Yii::$app->user->can("/".$url))||($url===null)) {//if has access if (is_null($item->route)) { $url = ''; } else { $url = yii\helpers\BaseUrl::base() . "/" . $item->route; } $menu[$item->id] = array('label' => Yii::t('app', $item->name), 'url' => $url, 'icon' => $item->icon, 'items' => Menu::buildMenu($item->id, $settings)); //} //} } return $menu; }
/** * Lists all Menu models. * @return mixed */ public function actionIndex() { $dataProvider = new ActiveDataProvider(['query' => Menu::find()]); return $this->render('index', ['dataProvider' => $dataProvider]); }
echo $form->field($model, 'title')->textInput(['maxlength' => true]); ?> <?php echo $form->field($model, 'route')->textInput(['maxlength' => true]); ?> <?php echo $form->field($model, 'params')->textInput(['maxlength' => true]); ?> <?php echo $form->field($model, 'menu_icon_class')->textInput(['maxlength' => true]); ?> <?php echo $form->field($model, 'parent_id')->dropDownList(['' => 'Select parent category...'] + ArrayHelper::map(Menu::find()->all(), 'id', 'title'), ['allowNull' => true]); ?> <div class="form-group"> <?php echo Html::submitButton($model->isNewRecord ? Yii::t('app', 'Create') : Yii::t('app', 'Update'), ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']); ?> </div> <?php ActiveForm::end(); ?> </div>
/** * Delete Confirm * * @param int $id * * @return View */ public function getModalDelete($id) { $error = null; $menu = Menu::find($id); if (!$menu->isdeletable()) { $modal_title = trans('admin/menu-builder/menu-builder.modal-delete-title-cant-be-deleted'); $modal_body = trans('admin/menu-builder/menu-builder.modal-delete-message-cant-be-deleted', ['id' => $menu->id, 'label' => $menu->label]); // Force a redirect to the index page if the user clicks on OK. $modal_route = route('admin.menus.index'); } else { $modal_title = trans('admin/menu-builder/menu-builder.modal-delete-title'); $modal_body = trans('admin/menu-builder/menu-builder.modal-delete-message', ['id' => $menu->id, 'label' => $menu->label]); $modal_route = route('admin.menus.delete', array('id' => $menu->id)); } return view('modal_confirmation', compact('error', 'modal_route', 'modal_title', 'modal_body')); }
private function isPermiss($user, $controller, $action) { $menu = Menu::find()->where('controller = :controller', [':controller' => $controller])->andWhere('action = :action', [':action' => $action])->one(); //echo '$controller:'.$controller.'/$action:'.$action; $permiss = FALSE; if ($menu) { if ($user->isadmin == 1 || !empty($this->permissions[$menu->id])) { $permiss = TRUE; } } else { $permiss = TRUE; } return $permiss; }
/** * Remove the specified resource from storage. * * @param int $id * @return Response */ public function destroy($id) { // $menu = \App\Models\Menu::find($id); $menu->delete(); return redirect("menus"); }
public function run() { $menu = Menu::find()->where(['status' => Menu::STATUS_ENABLED])->all(); return $this->render('menu', ['menu' => $menu]); }
public static function getAllMenu() { $items = Menu::find()->asArray()->all(); $all = []; foreach ($items as $key => $value) { $add = ""; if ($value['menu_type'] == 'doeuvres') { $add = " \$" . $value['menu_price'] . "/dozen"; } elseif ($value['menu_type'] == 'reseption') { $add = " \$" . $value['menu_price'] . "/person"; } $all[$value['menu_type']][$value['menu_id']] = $value['menu_name'] . $add; } return $all; }
/** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { $menu = Menu::find($id); $menu->delete(); return redirect('admin/menu'); }
public function manageUpdate($id) { //save $menu = Menu::find($id); if ($menu != null) { $menu->content = Input::get('content'); $menu->save(); } }
public function actionList() { \Yii::$app->language = 'vi-VN'; $dataProvider = new ActiveDataProvider(['query' => Menu::find()]); return $this->render('list', ['dataProvider' => $dataProvider]); }