virtual_merchant 0.3.4 → 0.3.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 72797bfae1434d9bc0273a01cd525c10f07c3df3
4
- data.tar.gz: b56f47277819911d30a8c546eb505d30c79181f4
3
+ metadata.gz: f6ca7cbb9d65a0a2a00731c69a236d6494acdd23
4
+ data.tar.gz: fe1c36484a1773707966d174e7f47056d4f39bc2
5
5
  SHA512:
6
- metadata.gz: 2d398dc6ecba591b7def754daa9e53d6f54420b7a4c0f650e20336c4a09e70f0aabb6e18bbf28e3e70e2fcbef8557d83156a46248769cba77811c17ece8d4874
7
- data.tar.gz: 2a6b8cb2442f30131f78d6c63532987be1a3cd6518834d6a065a9b9593ec680346c9b786cb4f13fefef42318423e9cd9ba5328ec1ab8c3f3c09702d77c1d2ba8
6
+ metadata.gz: 5fcc4f723fe2dda3c59202c0ad7be37dd126070e1ab7a32b69ef6610f5b60a2ee9e7435992c81118dfa8fe6c574c8507c489878a1d8d8ac6b17d4570d56a4891
7
+ data.tar.gz: 306247aa0420dcf3fe86d3e1be29ea41dab737830ce93e32bfb4dc170a996c36d0595f1c2fa47cb3a7234f0c93109e86cc9a4ff4ab0ab06904cf1eebc9c24b19
@@ -106,12 +106,20 @@ module VirtualMerchant
106
106
  end
107
107
 
108
108
  def blurred_number
109
- number = self.number.to_s
110
- leng = number.length
111
- n = number[0..1]
112
- (leng-6).times {n+= "*"}
113
- n += number[number.length-4..number.length]
114
- n
109
+ begin
110
+ number = self.number.to_s
111
+ leng = number.length
112
+ n = number[0..1]
113
+ (leng-6).times {n+= "*"}
114
+ n += number[number.length-4..number.length]
115
+ n
116
+ rescue Exception => e
117
+ puts "-"
118
+ puts "Error in VirtualMerchant-Ruby Gem when trying to blur card number: #{e}."
119
+ puts "You either passed a nil value for card_number or a number that is too short."
120
+ puts caller
121
+ puts "-"
122
+ end
115
123
  end
116
124
  end
117
125
  end
@@ -38,29 +38,43 @@ module VirtualMerchant
38
38
  end
39
39
 
40
40
  def error_response(code, message)
41
- @approved = false
41
+ @approved = false
42
42
  @result_message = message
43
- @error = code
43
+ @error = code
44
44
  end
45
45
 
46
46
  def approval(xml)
47
- @approved = true
48
- @result_message = xml.elements["ssl_result_message"].text if xml.elements["ssl_result_message"]
49
- @result = xml.elements["ssl_result"].text if xml.elements["ssl_result"]
47
+ basic(xml)
48
+ if xml.elements["ssl_result"]
49
+ normal_approval(xml)
50
+ else #recurring
51
+ recurring_approval(xml)
52
+ end
53
+ end
54
+
55
+ def basic(xml)
56
+ @approved = true
57
+ @result_message = xml.elements["ssl_result_message"].text
50
58
  @blurred_card_number = xml.elements["ssl_card_number"].text
51
- @exp_date = xml.elements["ssl_exp_date"].text
52
- @approval_code = xml.elements["ssl_approval_code"].text if xml.elements["ssl_approval_code"]
53
- @cvv2_response = xml.elements["ssl_cvv2_response"].text if xml.elements["ssl_cvv2_response"]
54
- @transaction_id = xml.elements["ssl_txn_id"].text if xml.elements["ssl_txn_id"]
55
- @transaction_time = xml.elements["ssl_txn_time"].text if xml.elements["ssl_txn_time"]
56
- #Recurring variables
57
- @billing_cycle = xml.elements["ssl_billing_cycle"].text if xml.elements["ssl_billing_cycle"]
58
- @start_payment_date = xml.elements["ssl_start_payment_date"].text if xml.elements["ssl_start_payment_date"]
59
- @transaction_type = xml.elements["ssl_transaction_type"].text if xml.elements["ssl_transaction_type"]
60
- @recurring_id = xml.elements["ssl_recurring_id"].text if xml.elements["ssl_recurring_id"]
61
- @next_payment_date = xml.elements["ssl_next_payment_date"].text if xml.elements["ssl_next_payment_date"]
62
- @skip_payment = xml.elements["ssl_skip_payment"].text if xml.elements["ssl_skip_payment"]
63
- @recurring_batch_count = xml.elements["ssl_recurring_batch_count"].text if xml.elements["ssl_recurring_batch_count"]
59
+ @exp_date = xml.elements["ssl_exp_date"].text
60
+ end
61
+
62
+ def normal_approval(xml)
63
+ @result = xml.elements["ssl_result"].text
64
+ @approval_code = xml.elements["ssl_approval_code"].text
65
+ @cvv2_response = xml.elements["ssl_cvv2_response"].text
66
+ @transaction_id = xml.elements["ssl_txn_id"].text
67
+ @transaction_time = xml.elements["ssl_txn_time"].text
68
+ end
69
+
70
+ def recurring_approval(xml)
71
+ @billing_cycle = xml.elements["ssl_billing_cycle"].text
72
+ @start_payment_date = xml.elements["ssl_start_payment_date"].text
73
+ @transaction_type = xml.elements["ssl_transaction_type"].text
74
+ @recurring_id = xml.elements["ssl_recurring_id"].text
75
+ @next_payment_date = xml.elements["ssl_next_payment_date"].text
76
+ @skip_payment = xml.elements["ssl_skip_payment"].text
77
+ @recurring_batch_count = xml.elements["ssl_recurring_batch_count"].text
64
78
  end
65
79
  end
66
80
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: virtual_merchant
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.4
4
+ version: 0.3.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lee Quarella
@@ -45,7 +45,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
45
45
  version: '0'
46
46
  requirements: []
47
47
  rubyforge_project:
48
- rubygems_version: 2.0.3
48
+ rubygems_version: 2.1.10
49
49
  signing_key:
50
50
  specification_version: 4
51
51
  summary: Virtual Merchant API