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
- #generate_code ⇒ Object
- #generate_guest_token ⇒ Object
Instance Method Details
#clone_addresses_from_user ⇒ Object
30 31 32 33 34 |
# File 'app/models/comable/order/callbacks.rb', line 30 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
36 37 38 39 40 |
# File 'app/models/comable/order/callbacks.rb', line 36 def clone_addresses_to_user return unless user user.update_bill_address_by bill_address user.update_ship_address_by ship_address end |
#generate_code ⇒ Object
15 16 17 18 19 20 |
# File 'app/models/comable/order/callbacks.rb', line 15 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
22 23 24 25 26 27 28 |
# File 'app/models/comable/order/callbacks.rb', line 22 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 |