so_paid 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -25,6 +25,8 @@ See examples folder for instructions and copy/pastable files. More will be added
25
25
  1. cybersource
26
26
  * request field info and doc:
27
27
  * http://apps.cybersource.com/library/documentation/dev_guides/Secure_Acceptance_WM/Secure_Acceptance_WM.pdf
28
+ * Field Mapping Info (helpful when upgrading from Legacy Hop to Secure Acceptance):
29
+ * http://www.cybersource.com/products_and_services/payment_security/secure_acceptance/installbase/resources/SecureAcceptance_API_Discovery.htm
28
30
  2. no more yet...
29
31
 
30
32
 
@@ -112,7 +112,7 @@ module SoPaid
112
112
  end
113
113
  end
114
114
 
115
- @pv_order_params[:signed_date_time] = get_isotime if @pv_order_params[:signed_date_time].blank?
115
+ @pv_order_params[:signed_date_time] = self.class.get_isotime if @pv_order_params[:signed_date_time].blank?
116
116
  end
117
117
 
118
118
 
@@ -127,7 +127,7 @@ module SoPaid
127
127
  data << key.to_s + "=" + @pv_order_params[key].to_s
128
128
  end
129
129
  data = data.join(",")
130
- encode_hop(data, @merged_pv_opts[:secret_key])
130
+ self.class.encode_hop(data, @merged_pv_opts[:secret_key])
131
131
  end
132
132
 
133
133
 
data/lib/so_paid/hop.rb CHANGED
@@ -30,39 +30,40 @@ module SoPaid
30
30
  return self
31
31
  end
32
32
 
33
-
34
- def initialize(order, pv_options={}, config_options={})
35
- @pv_order_params = {}.with_indifferent_access
36
- @pv_options = self.merge_defaults(pv_options, @@pv_defaults)
37
- @config_options = self.merge_defaults(config_options, @@config_defaults)
38
-
39
- @order = order
40
- @current_user_email = @config_options[:current_user_email] || @config_options[:current_user].try(:email) || (@order.user.try(:email) if @order.respond_to?(:user))
41
- generate_params
42
- return self
43
- end
44
-
45
-
46
-
47
- def get_isotime
33
+ def self.get_isotime
48
34
  Time.now.utc.iso8601
49
35
  end
50
36
 
51
- def encode_hop(data, key)
37
+ def self.encode_hop(data, key)
52
38
  mac = HMAC::SHA256.new(key)
53
39
  mac.update data
54
40
  Base64.encode64(mac.digest).gsub "\n", ''
55
41
  end
56
42
 
57
- def verify_signature(data,signature)
43
+ def self.verify_signature(data,signature)
58
44
  pub_digest = encode_hop(data, secret_key)
59
45
  pub_digest.eql?(signature)
60
46
  end
61
47
 
62
- def verify_transaction_signature(message)
48
+ def self.verify_transaction_signature(message)
63
49
  verify_signature(message[:signed_field_names], message[:signature])
64
50
  end
65
51
 
52
+
53
+
54
+
55
+ def initialize(order, pv_options={}, config_options={})
56
+ @pv_order_params = {}.with_indifferent_access
57
+ @pv_options = self.merge_defaults(pv_options, @@pv_defaults)
58
+ @config_options = self.merge_defaults(config_options, @@config_defaults)
59
+
60
+ @order = order
61
+ @current_user_email = @config_options[:current_user_email] || @config_options[:current_user].try(:email) || (@order.user.try(:email) if @order.respond_to?(:user))
62
+ generate_params
63
+ return self
64
+ end
65
+
66
+
66
67
  def merge_defaults(opts={}, default_opts={})
67
68
  SoPaid::Hop.merge_defaults(opts, default_opts)
68
69
  end
@@ -1,3 +1,3 @@
1
1
  module SoPaid
2
- VERSION = "0.0.6"
2
+ VERSION = "0.0.7"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: so_paid
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-07-17 00:00:00.000000000 Z
12
+ date: 2014-07-31 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler