Class: Agms::HPP

Inherits:
Agms
  • Object
show all
Defined in:
lib/agms/hpp.rb

Constant Summary

Constants included from Agms

VERSION

Instance Method Summary collapse

Constructor Details

#initializeHPP

Returns a new instance of HPP.



9
10
11
12
13
14
# File 'lib/agms/hpp.rb', line 9

def initialize
  super()
  @api_url = 'https://gateway.agms.com/roxapi/AGMS_HostedPayment.asmx'
  @requestObject = 'HPPRequest'
  @responseObject = 'HPPResponse'
end

Instance Method Details

#generate(params) ⇒ Object

Returns:

  • (Object)


17
18
19
20
21
22
23
24
25
# File 'lib/agms/hpp.rb', line 17

def generate(params)
  @op = 'ReturnHostedPaymentSetup'
  AgmsResetParameters()
  params.each do |param, config|
    AgmsSetParameter(param, config)
  end
  self.execute()
  return @response.toArray()
end

#getHashString

Returns:

  • (String)


28
29
30
# File 'lib/agms/hpp.rb', line 28

def getHash
  return @hash
end

Returns:

  • (String)


33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/agms/hpp.rb', line 33

def getLink
  if not @hash
    raise UnexpectedError, 'Requested HPP link but no hash generated in HPP.'
  else
    format_field = @request.getField(:HPPFormat)
    if format_field[:value]
      if format_field[:value] == '1'
        return "https://gateway.agms.com/HostedPaymentForm/HostedPaymentPage.aspx?hash=#{@hash}"
      else
        return "https://gateway.agms.com/HostedPaymentForm/HostedPaymentPage2.aspx?hash=#{@hash}"
      end
    else
      if @@Configuration.Hpp_Template == 'TEMPLATE_1'
        return "https://gateway.agms.com/HostedPaymentForm/HostedPaymentPage.aspx?hash=#{@hash}"
      else
        return "https://gateway.agms.com/HostedPaymentForm/HostedPaymentPage2.aspx?hash=#{@hash}"
      end
    end
  end
end