lib/adyen/form.rb in adyen-1.1.0 vs lib/adyen/form.rb in adyen-1.2.0

- old
+ new

@@ -124,11 +124,11 @@ # end # # @param [Hash] parameters The payment parameters to include in the payment request. # @return [String] An absolute URL to redirect to the Adyen payment system. def redirect_url(parameters = {}) - url + '?' + payment_parameters(parameters).map { |(k, v)| + url + '?' + payment_parameters(parameters).map{|k,v| [k.to_s,v] }.sort.map { |(k, v)| "#{camelize(k)}=#{CGI.escape(v.to_s)}" }.join('&') end # Returns a HTML snippet of hidden INPUT tags with the provided payment parameters. # The snippet can be included in a payment form that POSTs to the Adyen payment system. @@ -169,17 +169,18 @@ # is used by Adyen to check whether the request is genuinely originating from you. # @param [Hash] parameters The parameters that will be included in the payment request. # @return [String] The string for which the siganture is calculated. def calculate_signature_string(parameters) merchant_sig_string = "" - merchant_sig_string << parameters[:payment_amount].to_s << parameters[:currency_code].to_s << - parameters[:ship_before_date].to_s << parameters[:merchant_reference].to_s << - parameters[:skin_code].to_s << parameters[:merchant_account].to_s << - parameters[:session_validity].to_s << parameters[:shopper_email].to_s << - parameters[:shopper_reference].to_s << parameters[:recurring_contract].to_s << - parameters[:allowed_methods].to_s << parameters[:blocked_methods].to_s << - parameters[:shopper_statement].to_s << parameters[:billing_address_type].to_s + merchant_sig_string << parameters[:payment_amount].to_s << parameters[:currency_code].to_s << + parameters[:ship_before_date].to_s << parameters[:merchant_reference].to_s << + parameters[:skin_code].to_s << parameters[:merchant_account].to_s << + parameters[:session_validity].to_s << parameters[:shopper_email].to_s << + parameters[:shopper_reference].to_s << parameters[:recurring_contract].to_s << + parameters[:allowed_methods].to_s << parameters[:blocked_methods].to_s << + parameters[:shopper_statement].to_s << parameters[:merchant_return_data].to_s << + parameters[:billing_address_type].to_s << parameters[:offset].to_s end # Calculates the payment request signature for the given payment parameters. # # This signature is used by Adyen to check whether the request is @@ -204,10 +205,11 @@ # Generates the string for which the redirect signature is calculated, using the request paramaters. # @param [Hash] params A hash of HTTP GET parameters for the redirect request. # @return [String] The signature string. def redirect_signature_string(params) - params[:authResult].to_s + params[:pspReference].to_s + params[:merchantReference].to_s + params[:skinCode].to_s + params[:authResult].to_s + params[:pspReference].to_s + params[:merchantReference].to_s + + params[:skinCode].to_s + params[:merchantReturnData].to_s end # Computes the redirect signature using the request parameters, so that the # redirect can be checked for forgery. #