Sha256: db26d3787573fb70bed71b4324860902580ac48061b82e4799194799dd9ac1fd
Contents?: true
Size: 1.49 KB
Versions: 1
Compression:
Stored size: 1.49 KB
Contents
module Catarse class BackerObserver < ActiveRecord::Observer def after_create(backer) backer.define_key backer.define_payment_method end def before_save(backer) Notification.create_notification_once(:payment_slip, backer.user, {backer_id: backer.id}, backer: backer, project_name: backer.project.name) if backer.payment_choice_was.nil? && backer.payment_choice == 'BoletoBancario' if backer.confirmed and backer.confirmed_at.nil? backer.confirmed_at = Time.now Notification.create_notification_once(:confirm_backer, backer.user, {backer_id: backer.id}, backer: backer, project_name: backer.project.name) end unless backer.user.have_address? backer.user.address_street = backer.address_street backer.user.address_number = backer.address_number backer.user.address_neighbourhood = backer.address_neighbourhood backer.user.address_zip_code = backer.address_zip_code backer.user.address_city = backer.address_city backer.user.address_state = backer.address_state backer.user.phone_number = backer.address_phone_number end unless backer.user.full_name.present? backer.user.full_name = backer.payer_name end backer.user.save end def after_save(backer) Notification.create_notification_once(:project_success, backer.project.user, {project_id: backer.project.id}, project: backer.project) if backer.project.reached_goal? end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
catarse_core-1.0.0.beta | app/observers/catarse/backer_observer.rb |