Ejemplo n.º 1
0
        public ActionResult EditOrgRole(OrgRoleEditModel role)
        {
            var helper = new HelperFunctions(HttpContext);

            if (!helper.CheckValidSession())
            {
                return(RedirectToAction("Unauthorized", "Home"));
            }

            if (!helper.IsAdmin())
            {
                return(RedirectToAction("Forbidden", "Home"));
            }

            try
            {
                var roleToEdit = new OrgRole
                {
                    ID                 = role.ID,
                    OrganizationID     = role.OrganizationID,
                    RoleName           = role.RoleName,
                    RoleShortName      = role.RoleShortName,
                    RoleDisplayName    = role.RoleDisplayName,
                    RoleType           = role.RoleType,
                    RoleOrderBy        = role.OrderBy,
                    IsActive           = role.IsActive,
                    IsHidden           = role.IsHidden,
                    SupportedPayGrades = new List <PayGrade>()
                };

                foreach (var pg in role.SupportedPayGrades)
                {
                    roleToEdit.SupportedPayGrades.Add(
                        new PayGrade
                    {
                        ID = pg
                    }
                        );
                }

                var result = orgRestClient.EditOrgRole(HttpContext, roleToEdit);

                this.AddToastMessage(result);

                return(RedirectToAction("EditOrgRole", "Admin", new { roleID = role.ID }));
            }
            catch
            {
                return(View());
            }
        }
Ejemplo n.º 2
0
        public ActionResult EditOrgRole(int roleID)
        {
            var helper = new HelperFunctions(HttpContext);

            if (!helper.CheckValidSession())
            {
                return(RedirectToAction("Unauthorized", "Home"));
            }

            if (!helper.IsAdmin())
            {
                return(RedirectToAction("Forbidden", "Home"));
            }

            var orgRole = orgRestClient.GetOrgRoleByID(HttpContext, roleID);

            if (orgRole == null)
            {
                throw new Exception("Unable to retrive OrgRole for Edit");
            }

            var model = new OrgRoleEditModel
            {
                ID                 = orgRole.ID,
                OrganizationID     = orgRole.OrganizationID,
                RoleName           = orgRole.RoleName,
                RoleShortName      = orgRole.RoleShortName,
                RoleDisplayName    = orgRole.RoleDisplayName,
                RoleType           = orgRole.RoleType,
                OrderBy            = orgRole.RoleOrderBy,
                IsActive           = orgRole.IsActive,
                IsHidden           = orgRole.IsHidden,
                SupportedPayGrades = orgRole.SupportedPayGrades.Select(a => a.ID).Distinct().ToList(),
                RoleTypes          = new List <SelectListItem>(),
                PayGrades          = new List <SelectListItem>()
            };

            //PayGrades Multi-Select List
            var payGrades = peopleRestClient.ListPayGrades(HttpContext);

            foreach (var pg in payGrades)
            {
                bool selected = false;
                if (model.SupportedPayGrades.Contains(pg.ID))
                {
                    selected = true;
                }

                model.PayGrades.Add(new SelectListItem
                {
                    Value    = pg.ID.ToString(),
                    Text     = pg.PayGradeName,
                    Selected = selected
                });
            }

            //RoleType SELECT LIST
            model.RoleTypes.Add(new SelectListItem
            {
                Value = "",
                Text  = "-- Select a Type --"
            });
            model.RoleTypes.Add(new SelectListItem
            {
                Value = "UnitRole",
                Text  = "Unit Role"
            });

            model.RoleTypes.Where(a => a.Value == model.RoleType).FirstOrDefault().Selected = true;

            return(View(model));
        }