module ActsAsPushable::Pushable

Public Instance Methods

add_device(device_params) click to toggle source
# File lib/acts_as_pushable/pushable.rb, line 22
def add_device(device_params)
  device = build_device(device_params)
  if device.save
    return device
  else
    device.errors.each do |attribute, message|
      errors.add(:devices, "#{attribute} #{message}")
    end
    return false
  end
end
add_device!(device_params) click to toggle source
# File lib/acts_as_pushable/pushable.rb, line 34
def add_device!(device_params)
  device = build_device(device_params)
  device.save!
  return device
end
android_devices() click to toggle source
# File lib/acts_as_pushable/pushable.rb, line 18
def android_devices
  devices.where(platform: 'android')
end
ios_devices() click to toggle source
# File lib/acts_as_pushable/pushable.rb, line 14
def ios_devices
  devices.where(platform: 'ios')
end
send_push_notification(title:, message:, **options) click to toggle source
# File lib/acts_as_pushable/pushable.rb, line 40
def send_push_notification(title:, message:, **options)
  devices.each do |device|
    device.send_push_notification(title: title, message: message, **options)
  end
end

Private Instance Methods

build_device(device_params) click to toggle source
# File lib/acts_as_pushable/pushable.rb, line 48
def build_device(device_params)
  self.devices.build(device_params)
end