Sha256: 8a736aee183024f2091034eefcfe4601d25695e25ed9f80343cde247e150f4c2

Contents?: true

Size: 915 Bytes

Versions: 3

Compression:

Stored size: 915 Bytes

Contents

module Pageflow
  module Admin
    module FeaturesHelper
      def feature_state_select_tag(feature_target, feature_name)
        value = FeatureTarget::STATE_MAPPING[feature_target.feature_state(feature_name)]

        select_tag(feature_state_input_name(feature_target, feature_name),
                   options_for_select(feature_states_collection, value))
      end

      def feature_state_input_name(feature_target, feature_name)
        param_key = feature_target.class.model_name.param_key
        "#{param_key}[feature_states][#{feature_name}]"
      end

      def feature_states_collection
        {
          I18n.t('pageflow.admin.features.states.undefined') => nil,
          I18n.t('pageflow.admin.features.states.enabled') => FeatureTarget::STATE_MAPPING[true],
          I18n.t('pageflow.admin.features.states.disabled') => FeatureTarget::STATE_MAPPING[false]
        }
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
pageflow-0.9.2 app/helpers/pageflow/admin/features_helper.rb
pageflow-0.9.1 app/helpers/pageflow/admin/features_helper.rb
pageflow-0.9.0 app/helpers/pageflow/admin/features_helper.rb