Class: Docdata::Order::CreateResponse

Inherits:
Response
  • Object
show all
Defined in:
lib/docdata/order/response.rb

Overview

Response to a create operation.

Instance Attribute Summary

Attributes inherited from Response

#options, #response

Instance Method Summary collapse

Methods inherited from Response

#body, #error_code, #error_message, #initialize

Constructor Details

This class inherits a constructor from Docdata::Order::Response

Instance Method Details

#dataObject



31
32
33
# File 'lib/docdata/order/response.rb', line 31

def data
  body[:create_response]
end

#error?Boolean

Returns:

  • (Boolean)


39
40
41
# File 'lib/docdata/order/response.rb', line 39

def error?
  data.key?(:create_errors)
end

#errorsObject



43
44
45
# File 'lib/docdata/order/response.rb', line 43

def errors
  data[:create_errors]
end

#order_keyObject



47
48
49
# File 'lib/docdata/order/response.rb', line 47

def order_key
  data[:create_success][:key]
end

#redirect_urlObject



51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# File 'lib/docdata/order/response.rb', line 51

def redirect_url
  params = {
    command: "show_payment_cluster",
    merchant_name: merchant_name,
    client_language: client_language,
    payment_cluster_key: order_key
  }

  if payment_method
    params[:default_pm] = payment_method

    case payment_method
    when PaymentMethod::IDEAL
      params[:default_act] = true
      params[:ideal_issuer_id] = issuer_id if issuer_id
    when PaymentMethod::PAYPAL
      params[:default_act] = true
    end
  end

  if return_url
    params.merge!(
      return_url_success: build_return_url("success"),
      return_url_canceled: build_return_url("cancelled"),
      return_url_pending: build_return_url("pending"),
      return_url_error: build_return_url("error")
    )
  end

  uri = URI.parse(redirect_base_url)
  uri.query = URI.encode_www_form(params)
  uri.to_s
end

#success?Boolean

Returns:

  • (Boolean)


35
36
37
# File 'lib/docdata/order/response.rb', line 35

def success?
  data.key?(:create_success)
end