Module: OpenPayU
- Defined in:
- lib/openpayu.rb,
lib/openpayu/order.rb,
lib/openpayu/token.rb,
lib/openpayu/refund.rb,
lib/openpayu/version.rb,
lib/openpayu/document.rb,
lib/openpayu/connection.rb,
lib/openpayu/models/fee.rb,
lib/openpayu/models/card.rb,
lib/openpayu/models/buyer.rb,
lib/openpayu/models/model.rb,
lib/openpayu/models/order.rb,
lib/openpayu/models/token.rb,
lib/openpayu/configuration.rb,
lib/openpayu/models/refund.rb,
lib/openpayu/models/address.rb,
lib/openpayu/models/product.rb,
lib/openpayu/documents/request.rb,
lib/openpayu/models/pay_method.rb,
lib/openpayu/documents/response.rb,
lib/openpayu/models/status_update.rb,
lib/openpayu/models/buyer/invoice.rb,
lib/openpayu/models/buyer/delivery.rb,
lib/openpayu/models/notify_response.rb,
lib/openpayu/models/shipping_method.rb
Defined Under Namespace
Modules: Documents, Models Classes: Configuration, Connection, Document, Order, Refund, Token
Constant Summary
- VERSION =
'0.1.2'
Class Method Summary (collapse)
-
+ (String) hosted_order_form(order)
Generate a form body for hosted order.
-
+ (String) sign_form(form_fields, key = nil, algorithm = nil, pos_id = nil)
Generate a signature for signing form sent directly to PayU.
Class Method Details
+ (String) hosted_order_form(order)
Generate a form body for hosted order
52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/openpayu.rb', line 52 def self.hosted_order_form(order) @order = Models::Order.new(order) render_hash = @order.to_flatten_hash html_form = "<form method='post' " + "action='#{Configuration.get_base_url}order'>\n" render_hash.each do |key, value| html_form << "<input type='hidden' name='#{key}' value='#{value}' />\n" end html_form << "<input type='hidden' name='OpenPayu-Signature' value='#{sign_form(render_hash)}' /> <button type='submit' formtarget='_blank' />\n</form>" end |
+ (String) sign_form(form_fields, key = nil, algorithm = nil, pos_id = nil)
Generate a signature for signing form sent directly to PayU
38 39 40 41 42 43 44 45 46 |
# File 'lib/openpayu.rb', line 38 def self.sign_form(form_fields, key = nil, algorithm = nil, pos_id = nil) sorted_values = form_fields.sort.map { |array| array[1] }.join Document.new.generate_signature_structure( sorted_values, algorithm || Configuration.algorithm, pos_id || Configuration.merchant_pos_id, key || Configuration.signature_key ) end |