lib/pxpay/response.rb in pxpay-0.1.1 vs lib/pxpay/response.rb in pxpay-0.1.2

- old
+ new

@@ -1,23 +1,28 @@ module Pxpay + # The response object received from Payment Express class Response - attr_accessor :result + attr_accessor :post + + # Create a new Payment Express response object by passing in the return parameters provided to the success/failure URL + def initialize(params) @result = params[:result] @user_id = params[:userid] + @post = build_xml( params[:result] ) end # Retrieving the transaction details from Payment Express as an instance of Pxpay::Notification def response require 'rest_client' - response = ::RestClient.post( 'https://www.paymentexpress.com/pxpay/pxaccess.aspx', build_xml( result ) ) + response = ::RestClient.post( 'https://www.paymentexpress.com/pxpay/pxaccess.aspx', self.post ) return ::Pxpay::Notification.new( response ) end private # Internal method to build the xml to send to Payment Express def build_xml( result ) - xml = Builder::XmlMarkup.new + xml = ::Builder::XmlMarkup.new xml.ProcessResponse do xml.PxPayUserId PXPAY_CONFIG[:pxpay][:pxpay_user_id] xml.PxPayKey PXPAY_CONFIG[:pxpay][:pxpay_key] xml.Response result \ No newline at end of file