Class: Plugins::CamaSubscriber::Item

Inherits:
ActiveRecord::Base
  • Object
show all
Includes:
CamaleonCms::Metas
Defined in:
app/models/plugins/cama_subscriber/item.rb

Constant Summary collapse

STATUS =
['approved', 'pending', 'unsubscribed']

Instance Method Summary collapse

Instance Method Details

#add_groups(group_ids = []) ⇒ Object

add this item into groups



20
21
22
23
24
25
26
# File 'app/models/plugins/cama_subscriber/item.rb', line 20

def add_groups(group_ids = [])
  g = self.groups.pluck(:id)
  self.item_groups.where(group_id: g - group_ids).destroy_all
  (group_ids - g).each do |g_id|
    self.item_groups.create(group_id: g_id)
  end
end

#extra_values(values) ⇒ Object

values: (Hash) sample: ‘camaleon cms’, city: ‘Cochabamba’



15
16
17
# File 'app/models/plugins/cama_subscriber/item.rb', line 15

def extra_values(values)
  self.set_multiple_options(values, 'custom_values')
end

#unsubscribe!Object

unsubscribe user from all groups



29
30
31
# File 'app/models/plugins/cama_subscriber/item.rb', line 29

def unsubscribe!
  self.update(status: 'unsubscribed')
end