示例#1
0
        // 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));
        }
示例#2
0
        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);
        }
示例#3
0
        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();
        }
示例#4
0
        public AccessDefinitionsViewModel UpdateAccessDefinitionViewModel(CFAccessDefinition accessDef, AccessDefinitionsViewModel adVM)
        {
            adVM.Name = accessDef.Name;
            //  List<AccessMode> selectedModes = accessDef.AccessModesList;

            adVM.AccessModes = PopulateAccessModesView(accessDef);
            return(adVM);
        }