Module: Sapling::ActiveRecord::AdminAPI
- Included in:
- Sapling::ActiveRecord
- Defined in:
- lib/sapling/active_record.rb
Instance Method Summary collapse
- #activate_percentage(feature, percentage) ⇒ Object
- #activate_user(feature, user) ⇒ Object
- #deactivate_percentage(feature) ⇒ Object
- #deactivate_user(feature, user) ⇒ Object
Instance Method Details
#activate_percentage(feature, percentage) ⇒ Object
58 59 60 61 62 63 64 |
# File 'lib/sapling/active_record.rb', line 58 def activate_percentage(feature, percentage) raise "invalid percentage #{percentage.inspect}" unless percentage.kind_of?(Integer) && percentage>=0 && percentage<=100 Model.transaction do deactivate_percentage(feature) Model.create(:feature => feature.to_s, :percentage => percentage) end end |
#activate_user(feature, user) ⇒ Object
47 48 49 50 51 52 |
# File 'lib/sapling/active_record.rb', line 47 def activate_user(feature, user) Model.transaction do deactivate_user(feature, user) Model.create(:feature => feature.to_s, :user_id => user.id) end end |
#deactivate_percentage(feature) ⇒ Object
66 67 68 69 70 |
# File 'lib/sapling/active_record.rb', line 66 def deactivate_percentage(feature) Model.delete_all ["feature = ? AND percentage IS NOT NULL AND user_id IS NULL", feature.to_s ] end |
#deactivate_user(feature, user) ⇒ Object
54 55 56 |
# File 'lib/sapling/active_record.rb', line 54 def deactivate_user(feature, user) Model.delete_all ["feature = ? AND percentage IS NULL and user_id = ?",feature.to_s,user.id] end |