Module: Comable::Order::Callbacks
- Extended by:
- ActiveSupport::Concern
- Included in:
- Comable::Order
- Defined in:
- app/models/comable/order/callbacks.rb
Instance Method Summary collapse
- #clone_addresses_from_user ⇒ Object
- #clone_addresses_to_user ⇒ Object
- #copy_ship_address_from_bill_address ⇒ Object
- #generate_code ⇒ Object
- #generate_guest_token ⇒ Object
Instance Method Details
#clone_addresses_from_user ⇒ Object
31 32 33 34 35 |
# File 'app/models/comable/order/callbacks.rb', line 31 def clone_addresses_from_user return unless user self.bill_address ||= user.bill_address.try(:clone) self.ship_address ||= user.ship_address.try(:clone) end |
#clone_addresses_to_user ⇒ Object
37 38 39 40 41 |
# File 'app/models/comable/order/callbacks.rb', line 37 def clone_addresses_to_user return unless user user.update_bill_address_by bill_address user.update_ship_address_by ship_address end |
#copy_ship_address_from_bill_address ⇒ Object
43 44 45 |
# File 'app/models/comable/order/callbacks.rb', line 43 def copy_ship_address_from_bill_address self.ship_address = bill_address end |
#generate_code ⇒ Object
16 17 18 19 20 21 |
# File 'app/models/comable/order/callbacks.rb', line 16 def generate_code self.code = loop do random_token = "C#{Array.new(11) { rand(9) }.join}" break random_token unless self.class.exists?(code: random_token) end end |
#generate_guest_token ⇒ Object
23 24 25 26 27 28 29 |
# File 'app/models/comable/order/callbacks.rb', line 23 def generate_guest_token return if user self.guest_token ||= loop do random_token = SecureRandom.urlsafe_base64(nil, false) break random_token unless self.class.exists?(guest_token: random_token) end end |