Module: SpreeKlaviyo::ShipmentHandlerDecorator

Defined in:
app/models/spree_klaviyo/shipment_handler_decorator.rb

Instance Method Summary collapse

Instance Method Details

#performObject



3
4
5
6
# File 'app/models/spree_klaviyo/shipment_handler_decorator.rb', line 3

def perform
  super
  track_package_shipped_event
end

#track_package_shipped_eventObject



8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'app/models/spree_klaviyo/shipment_handler_decorator.rb', line 8

def track_package_shipped_event
  order = @shipment.order

  klaviyo_integration = order.store.integrations.active.find_by(type: 'Spree::Integrations::Klaviyo')
  return if klaviyo_integration.blank?

  klaviyo_integration.create_event(event: 'Package Shipped', resource: @shipment, email: order.email)
rescue StandardError => e
  Rails.error.report(
    e,
    context: { event_name: 'package_shipped', record: { order: order, shipment: @shipment } },
    source: 'spree.core'
  )
end