public static string GetCaption(this UserFeatureAccess userFeatureAccess) { switch (userFeatureAccess) { case UserFeatureAccess.Nothing: return(Phrases.Access_None); case UserFeatureAccess.MenuUsers: return(Phrases.Access_UserMenu); } return(userFeatureAccess.ToString()); }
public static bool HasAccessToFeature(this UserRolesPair src, UserFeatureAccess feature) { return(HasAccessToFeature(src.User, src.Roles, feature)); }
public static bool HasAccessToFeature(this IBackOfficeUser src, IBackofficeUserRole[] roles, UserFeatureAccess feature) { if (src.IsAdmin) { return(true); } foreach (var roleId in src.Roles) { var foundRole = roles.FirstOrDefault(role => role.Id == roleId); if (foundRole == null) { continue; } if (foundRole.Features.Any(f => f == feature)) { return(true); } } return(false); }