示例#1
0
        public virtual ActionResult GridGetAllNavigation()
        {
            gridMvcHelper = new GridMvcHelper();
            IOrderedQueryable <CMSNavigation> allNavigation = CMSNavigation.GetAll().OrderBy(x => x.sort);
            AjaxGrid <CMSNavigation>          grid          = this.gridMvcHelper.GetAjaxGrid(allNavigation);

            return(PartialView(grid));
        }
示例#2
0
        public virtual ActionResult Delete(long ID)
        {
            CMSNavigation navigation = CMSNavigation.GetByID(ID);

            CMSNavigationPrivilegeMapping.HardDeleteByNavigationID(ID);
            CMSNavigation.Delete(navigation);
            return(RedirectToAction(MVC.CMSNavigation.Index("Delete_Success")));
        }
示例#3
0
        private NavigationModel CMSNavigationToNavigationModel(CMSNavigation model)
        {
            NavigationModel navigation = new NavigationModel();

            navigation.ID         = model.ID;
            navigation.Name       = model.Name;
            navigation.Controller = model.Controller;
            navigation.sort       = model.sort;
            navigation.ParentID   = model.ParentID;
            navigation.IsHide     = model.IsHide;
            return(navigation);
        }
示例#4
0
        private CMSNavigation NavigationModelToCMSNavigation(NavigationModel model)
        {
            CMSNavigation navigation = new CMSNavigation();

            navigation.Name       = model.Name;
            navigation.Controller = model.Controller;
            navigation.sort       = model.sort;
            navigation.IsChild    = (model.ParentID != null);
            navigation.ParentID   = model.ParentID;
            navigation.IsHide     = model.IsHide;
            return(navigation);
        }
示例#5
0
        private void GetListNavigationParent()
        {
            List <SelectListItem>      items    = new List <SelectListItem>();
            IQueryable <CMSNavigation> listdata = CMSNavigation.GetAllParent();

            foreach (CMSNavigation data in listdata)
            {
                items.Add(new SelectListItem {
                    Text = data.Name, Value = data.ID.ToString(), Selected = false
                });
            }
            ViewBag.ListNavigationParent = items;
        }
示例#6
0
        public virtual ActionResult GridGetAllNavigationPager(string txtSearch, int?page)
        {
            gridMvcHelper = new GridMvcHelper();
            IOrderedQueryable <CMSNavigation> allData = CMSNavigation.GetAll().OrderBy(x => x.sort);

            if (!string.IsNullOrEmpty(txtSearch))
            {
                allData = allData.Where(x => x.Name.Contains(txtSearch) || x.Controller.Contains(txtSearch)).OrderBy(x => x.sort);
            }
            AjaxGrid <CMSNavigation> grid = this.gridMvcHelper.GetAjaxGrid(allData, page);
            object jsonData = this.gridMvcHelper.GetGridJsonData(grid, MVC.CMSNavigation.Views.GridGetAllNavigation, this);

            return(Json(jsonData, JsonRequestBehavior.AllowGet));
        }
示例#7
0
        public virtual ActionResult Edit(long NavId)
        {
            CMSNavigation currentNav = CMSNavigation.GetByID(NavId);

            if (currentNav == null)
            {
                return(RedirectToAction(MVC.CMSNavigation.Index()));
            }
            GetListNavigationParent();
            GetListPrevilege();
            ViewBag.currentNavPrevilage = CMSNavigationPrivilegeMapping.GetByNavigation(currentNav.ID).ToList();
            NavigationModel model = CMSNavigationToNavigationModel(currentNav);

            return(View(model));
        }
示例#8
0
        public virtual ActionResult Edit(NavigationModel model)
        {
            if (string.IsNullOrEmpty(model.Name))
            {
                ModelState.AddModelError("Name", "Name is required");
            }
            if (string.IsNullOrEmpty(model.Controller))
            {
                ModelState.AddModelError("Controller", "Controller name is required");
            }
            if (model.sort < 0)
            {
                ModelState.AddModelError("sort", "Sort can not be null or smaller than 0");
            }
            CMSUserInformation _CMSInformation = new CMSUserInformation();

            if (ModelState.IsValid)
            {
                CMSNavigation navigation = CMSNavigation.GetByID(model.ID);
                navigation.Name       = model.Name;
                navigation.Controller = model.Controller;
                navigation.sort       = model.sort;
                navigation.IsChild    = (model.ParentID != null);
                navigation.ParentID   = model.ParentID;
                navigation.IsHide     = model.IsHide;
                var result = CMSNavigation.Update(navigation, CurrentUser.FullName);
                if (result.IsSuccess)
                {
                    NavigationEditPrevilage(model.Previlage, navigation.ID);
                    SetRemoveCurrentNavigationCache();
                    _CMSInformation.SetRemoveCurrentAllowedControllerActionCache();
                    return(RedirectToAction(MVC.CMSNavigation.Index("Edit_Success")));
                }
                else
                {
                    ModelState.AddModelError(result.MessageText, result.MessageText);
                }
            }
            GetListNavigationParent();
            GetListPrevilege();
            return(View());
        }
示例#9
0
        public virtual ActionResult Add(NavigationModel model)
        {
            CMSUserInformation _CMSInformation = new CMSUserInformation();

            if (string.IsNullOrEmpty(model.Name))
            {
                ModelState.AddModelError("Name", "Name is required");
            }
            if (string.IsNullOrEmpty(model.Controller))
            {
                ModelState.AddModelError("Controller", "Controller name is required");
            }
            if (model.sort < 0)
            {
                ModelState.AddModelError("sort", "Sort can not be null or smaller than 0");
            }
            if (ModelState.IsValid)
            {
                CMSNavigation navigation = NavigationModelToCMSNavigation(model);

                var result = CMSNavigation.Insert(navigation, CurrentUser.FullName);
                if (result.IsSuccess)
                {
                    //set navigation previlage
                    NavigationAddPrevilage(model.Previlage, navigation.ID);

                    SetRemoveCurrentNavigationCache();
                    _CMSInformation.SetRemoveCurrentAllowedControllerActionCache();
                    return(RedirectToAction(MVC.CMSNavigation.Index("Create_Success")));
                }
                else
                {
                    ModelState.AddModelError(result.MessageText, result.MessageText);
                }
            }
            GetListNavigationParent();
            GetListPrevilege();
            return(View());
        }