Module: SpreeSignifyd

Defined in:
lib/spree_signifyd.rb,
lib/spree_signifyd/engine.rb,
lib/spree_signifyd/request_verifier.rb,
app/models/spree_signifyd/order_score.rb,
lib/spree_signifyd/create_signifyd_case.rb,
app/models/spree_signifyd/shipment_decorator.rb,
app/serializers/spree_signifyd/user_serializer.rb,
app/serializers/spree_signifyd/order_serializer.rb,
app/serializers/spree_signifyd/address_serializer.rb,
app/serializers/spree_signifyd/line_item_serializer.rb,
app/serializers/spree_signifyd/credit_card_serializer.rb,
app/serializers/spree_signifyd/billing_address_serializer.rb,
app/serializers/spree_signifyd/delivery_address_serializer.rb

Defined Under Namespace

Modules: OrderConcerns, RequestVerifier, ShipmentDecorator Classes: AddressSerializer, BillingAddressSerializer, CreateSignifydCase, CreditCardSerializer, DeliveryAddressSerializer, Engine, LineItemSerializer, OrderScore, OrderSerializer, UserSerializer

Class Method Summary collapse

Class Method Details

.approve(order:) ⇒ Object



21
22
23
24
25
26
# File 'lib/spree_signifyd.rb', line 21

def approve(order:)
  order.contents.approve(name: self.name)
  order.shipments.each { |shipment| shipment.ready! unless shipment.ready? }
  order.updater.update_shipment_state
  order.save!
end

.create_case(order_number:) ⇒ Object



28
29
30
31
# File 'lib/spree_signifyd.rb', line 28

def create_case(order_number:)
  Rails.logger.info "Queuing Signifyd case creation event: #{order_number}"
  Resque.enqueue(SpreeSignifyd::CreateSignifydCase, order_number)
end

.score_above_threshold?(score) ⇒ Boolean

Returns:

  • (Boolean)


33
34
35
# File 'lib/spree_signifyd.rb', line 33

def score_above_threshold?(score)
  score > SpreeSignifyd::Config[:signifyd_score_threshold]
end

.set_score(order:, score:) ⇒ Object



13
14
15
16
17
18
19
# File 'lib/spree_signifyd.rb', line 13

def set_score(order:, score:)
  if order.signifyd_order_score
    order.signifyd_order_score.update!(score: score)
  else
    order.create_signifyd_order_score!(score: score)
  end
end