func hasAccessToFeature(feature m.FeatureFlag, ar AccessRequest) bool { // Handle trivial case if feature.IsEnabled() { return true } // Access thanks to a group? if len(ar.Groups) > 0 { for _, group := range ar.Groups { if feature.GroupHasAccess(group) { return true } } } // Access thanks to the user? if ar.User > 0 { return feature.UserHasAccess(ar.User) } return false }