// GET: Manager/AccessDefinition/Edit/5 public ActionResult Edit(int?id) { AccessDefinitionsViewModel adVM = new AccessDefinitionsViewModel(); CFAccessDefinition access = new CFAccessDefinition(); if (id != null) { CFAccessDefinition accessDef = AccessDefinitionService.GetAccessDefinitionById(id.Value); adVM = UpdateAccessDefinitionViewModel(accessDef, adVM); } else { //get all available AccessMode enum int i = 0; foreach (AccessMode am in Enum.GetValues(typeof(AccessMode))) { if (i > 0) //skip the first one -- None { adVM.AccessModes.Add(new AccessCheckBox { Text = am.ToString(), Value = ((int)am) }); } i++; } } return(View(adVM)); }
public CFAccessDefinition UpdateAccessDefinition(AccessDefinitionsViewModel accessDefVM, string[] selectedModes) { CFAccessDefinition accessDef = new CFAccessDefinition(); if (accessDefVM.Id != null) { accessDef = AccessDefinitionService.GetAccessDefinitionById(accessDefVM.Id.Value); foreach (string am in selectedModes.ToList()) { AccessMode selectedMode = (AccessMode)Enum.Parse(typeof(AccessMode), am); accessDef.AccessModes |= selectedMode; } } else { foreach (string am in selectedModes.ToList()) { AccessMode selectedMode = (AccessMode)Enum.Parse(typeof(AccessMode), am); accessDef.AccessModes |= selectedMode; } } accessDef.Name = accessDefVM.Name; return(accessDef); }
// GET: Manager/AccessDefinition public ActionResult Index() { //AccessDefinitionsViewModel adVM = new AccessDefinitionsViewModel(); var acessDefs = (AccessDefinitionService.GetAccessDefinitions()).Select(a => a as CFAccessDefinition); // adVM = UpdateAccessDefinitionViewModel(accessDef, adVM); return(View(acessDefs)); }
public EntityAccessDefinitionsViewModel UpdateViewModel(CFEntity entity) { UserService us = new UserService(); UserListService uListService = new UserListService(Db); EntityAccessDefinitionsViewModel entityAccessVM = new EntityAccessDefinitionsViewModel(); entityAccessVM.Id = entity.Id; entityAccessVM.EntityName = entity.Name; entityAccessVM.BlockInheritance = entity.BlockInheritance; entityAccessVM.AvailableUsers2 = us.GetUserIdAndLoginName(); Dictionary <string, string> allUserLists = uListService.GetDictionaryUserLists(); allUserLists.ToList().ForEach(x => entityAccessVM.AvailableUsers2.Add(x.Key, x.Value)); AccessDefinitionService accessDefinitionService = new AccessDefinitionService(Db); SelectList accessDefs = new SelectList(accessDefinitionService.GetSelectListAccessDefinitions() .GroupBy(a => a.Name) .Select(a => a.FirstOrDefault()) .Select(i => new SelectListItem() { Value = ((int)i.AccessModes).ToString(), Text = i.StringAccessModesList }), "Value", "Text"); entityAccessVM.AvailableAccessDefinitions = accessDefs; entityAccessVM.AvailableAccessDefinitions2 = accessDefs.ToList(); if (entity.AccessGroups.Count > 0) { //update SelectedAccessGroups foreach (CFAccessGroup gr in entity.AccessGroups) { AccessGroup accGrp = new Models.ViewModels.AccessGroup(); accGrp.userId = gr.AccessGuid.ToString(); //FirstOrDefault().ToString(); var user = us.GetUserById(accGrp.userId); string name = string.Empty; if (user == null) { name = uListService.GetEntityGroup(accGrp.userId).Name; } else { name = user.Login; } accGrp.User = name; accGrp.AccessMode = gr.AccessDefinition.StringAccessModesList; accGrp.AccessModesNum = (int)gr.AccessDefinition.AccessModes; entityAccessVM.SelectedAccessGroups.Add(accGrp); } } return(entityAccessVM); }
public JsonResult Delete(int id) { bool success = false; try { AccessDefinitionService.DeleteAccessDefinition(id); Db.SaveChanges(User.Identity); success = true; }catch (Exception ex) { success = false; } return(Json(success, JsonRequestBehavior.AllowGet)); }
public ActionResult Edit(AccessDefinitionsViewModel accessDefVM) { try { if (ModelState.IsValid) { CFAccessDefinition accessDefinition = new CFAccessDefinition(); string[] selectedModes = Request.Form["SelectedAccessModes"].Split(','); accessDefinition = UpdateAccessDefinition(accessDefVM, selectedModes); accessDefinition = AccessDefinitionService.EditAccessDefinition(accessDefinition); accessDefinition.Serialize(); Db.SaveChanges(); } return(RedirectToAction("Index")); } catch (Exception ex) { throw ex; } //return View(); }