public static bool GetAdminAuthorize(string userId, EnumAdminAuthorize crud, Type input) { if (String.IsNullOrEmpty(userId)) { return(false); } IEnumerable <string> basicRole = G.AdminRole.Split(','); var typeRole = GetAdminAuthorizeRoles(crud, input); if (typeRole.Count() > 0) { basicRole = typeRole; } return(UserIsInRoles(userId, basicRole)); }
public static IEnumerable <string> GetAdminAuthorizeRoles(EnumAdminAuthorize crud, Type input) { var adminList = config.AdminRole.Split(',') .Select(b => b.Trim()).Where(b => !String.IsNullOrEmpty(b)).ToList(); var children = input.GetAllowChildren(); if (children == null) { return(adminList); } switch (crud) { case EnumAdminAuthorize.Create: if (children.CreateRoles != null) { return(children.CreateRoles); } break; case EnumAdminAuthorize.Read: if (children.ReadRoles != null) { return(children.ReadRoles); } break; case EnumAdminAuthorize.Update: if (children.EditRoles != null) { return(children.EditRoles); } break; case EnumAdminAuthorize.Delete: if (children.DeleteRoles != null) { return(children.DeleteRoles); } break; } return(adminList); }