Class: GpWebpay::Verification

Inherits:
Object
  • Object
show all
Defined in:
lib/gp_webpay/verification.rb

Instance Method Summary collapse

Constructor Details

#initialize(payment_attributes, verification_attrs = nil) ⇒ Verification

Returns a new instance of Verification.



5
6
7
8
9
10
# File 'lib/gp_webpay/verification.rb', line 5

def initialize(payment_attributes, verification_attrs = nil)
  @payment_attributes = payment_attributes
  GpWebpay.logger.info "Payment Attrs: #{@payment_attributes}"
  @verification_attrs = verification_attrs
  GpWebpay.logger.info "Verification Attrs: #{@verification_attrs}" if @verification_attrs
end

Instance Method Details

#digestObject



21
22
23
24
# File 'lib/gp_webpay/verification.rb', line 21

def digest
  sign = merchant_key.sign(OpenSSL::Digest::SHA1.new, digest_text)
  Base64.encode64(sign).gsub("\n", "")
end

#payment_attributes_with_digestObject



17
18
19
# File 'lib/gp_webpay/verification.rb', line 17

def payment_attributes_with_digest
  PaymentAttributes.map_to_keys(@payment_attributes).merge("DIGEST" => digest)
end

#verified_response?(params) ⇒ Boolean

Returns:

  • (Boolean)


12
13
14
15
# File 'lib/gp_webpay/verification.rb', line 12

def verified_response?(params)
  verify_digest(params["DIGEST"], digest_verification(params)) &&
    verify_digest(params["DIGEST1"], digest1_verification(params))
end