Method: Optimizely::Project#get_enabled_features
- Defined in:
- lib/optimizely.rb
#get_enabled_features(user_id, attributes = nil) ⇒ feature flag keys
Gets keys of all feature flags which are enabled for the user.
550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 |
# File 'lib/optimizely.rb', line 550 def get_enabled_features(user_id, attributes = nil) enabled_features = [] unless is_valid @logger.log(Logger::ERROR, InvalidProjectConfigError.new('get_enabled_features').) return enabled_features end return enabled_features unless Optimizely::Helpers::Validator.inputs_valid?( { user_id: user_id }, @logger, Logger::ERROR ) return enabled_features unless user_inputs_valid?(attributes) config = project_config config.feature_flags.each do |feature| enabled_features.push(feature['key']) if is_feature_enabled( feature['key'], user_id, attributes ) == true end enabled_features end |