paystack 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,105 +1,104 @@
1
-
2
- require 'paystack/error.rb'
3
-
4
- module Utils
5
-
6
- def Utils.nullifyString(value)
7
- if value.nil?
8
- return nil
9
- end
10
-
11
- if (value.strip.eql? "")
12
- return nil
13
- end
14
- return value;
15
- end
16
-
17
- def Utils.isWholePositiveNumber(value)
18
- if(value == nil)
19
- return false
20
- end
21
- length = value.length;
22
-
23
- for i in 0..(length-1)
24
- c = value[i]
25
-
26
- if((c =~ /[[:digit:]]/) == nil)
27
- return false
28
- end
29
- end
30
- return true
31
- end
32
-
33
- def Utils.isLuhnValidNumber(number)
34
- sum = 0
35
- length = number.strip.length;
36
-
37
- for i in 0..(length-1)
38
- c = number[length - 1 -i]
39
-
40
- if((c =~ /[[:digit:]]/) == nil)
41
- return false
42
- end
43
- digit = c.to_i
44
- if (i % 2 == 1)
45
- digit *= 2
46
- end
47
- sum += digit > 9 ? digit - 9 : digit
48
- end
49
-
50
- return (sum % 10 == 0)
51
- end
52
-
53
- def Utils.isEmpty(value)
54
- return (value.nil? || value.strip.eql?(""))
55
- end
56
-
57
- def Utils.hasYearPassed(year)
58
- return year < Time.new.year
59
- end
60
- def Utils.hasMonthPassed(year, month)
61
- t = Time.new
62
- return hasYearPassed(year) || year == t.year && month < (t.month)
63
- end
64
-
65
- def Utils.hasCardExpired(year, month)
66
- # Normalize Year value e.g 14 becomes 2014 or 2114 etc.
67
- year_int = year.strip.to_i
68
- if(year_int < 100 && year_int >= 0)
69
- cal_year = Time.new.year.to_s
70
- year_int = ("#{cal_year[0..1]}#{year.strip}").to_i
71
- end
72
-
73
- # Check for expiration
74
- return !hasYearPassed(year_int) && !hasMonthPassed(year_int, month.to_i)
75
-
76
- end
77
-
78
-
79
-
80
-
81
-
82
- def Utils.serverErrorHandler(e)
83
-
84
- if(e.response == nil)
85
- raise e
86
- return
87
- end
88
- error = PaystackServerError.new(e.response);
89
- case e.response.code
90
- when 400
91
- raise error, "HTTP Code 400: A validation or client side error occurred and the request was not fulfilled. "
92
- when 401
93
- raise error, "HTTP Code 401: The request was not authorized. This can be triggered by passing an invalid secret key in the authorization header or the lack of one"
94
- when 404
95
- raise error, "HTTP Code 404: Request could not be fulfilled as the request resource does not exist."
96
- when 500, 501,502,503,504
97
- raise error, "HTTP Code #{e.response.code}: Request could not be fulfilled due to an error on Paystack's end. This shouldn't happen so please report as soon as you encounter any instance of this."
98
- else
99
- raise error, "HTTP Code #{e.response.code}: #{e.response.body}"
100
-
101
- end
102
-
103
- end
104
-
105
- end
1
+ require 'paystack/error.rb'
2
+
3
+ module Utils
4
+
5
+ def Utils.nullifyString(value)
6
+ if value.nil?
7
+ return nil
8
+ end
9
+
10
+ if (value.strip.eql? "")
11
+ return nil
12
+ end
13
+ return value;
14
+ end
15
+
16
+ def Utils.isWholePositiveNumber(value)
17
+ if(value == nil)
18
+ return false
19
+ end
20
+ length = value.length;
21
+
22
+ for i in 0..(length-1)
23
+ c = value[i]
24
+
25
+ if((c =~ /[[:digit:]]/) == nil)
26
+ return false
27
+ end
28
+ end
29
+ return true
30
+ end
31
+
32
+ def Utils.isLuhnValidNumber(number)
33
+ sum = 0
34
+ length = number.strip.length;
35
+
36
+ for i in 0..(length-1)
37
+ c = number[length - 1 -i]
38
+
39
+ if((c =~ /[[:digit:]]/) == nil)
40
+ return false
41
+ end
42
+ digit = c.to_i
43
+ if (i % 2 == 1)
44
+ digit *= 2
45
+ end
46
+ sum += digit > 9 ? digit - 9 : digit
47
+ end
48
+
49
+ return (sum % 10 == 0)
50
+ end
51
+
52
+ def Utils.isEmpty(value)
53
+ return (value.nil? || value.strip.eql?(""))
54
+ end
55
+
56
+ def Utils.hasYearPassed(year)
57
+ return year < Time.new.year
58
+ end
59
+ def Utils.hasMonthPassed(year, month)
60
+ t = Time.new
61
+ return hasYearPassed(year) || year == t.year && month < (t.month)
62
+ end
63
+
64
+ def Utils.hasCardExpired(year, month)
65
+ # Normalize Year value e.g 14 becomes 2014 or 2114 etc.
66
+ year_int = year.strip.to_i
67
+ if(year_int < 100 && year_int >= 0)
68
+ cal_year = Time.new.year.to_s
69
+ year_int = ("#{cal_year[0..1]}#{year.strip}").to_i
70
+ end
71
+
72
+ # Check for expiration
73
+ return !hasYearPassed(year_int) && !hasMonthPassed(year_int, month.to_i)
74
+
75
+ end
76
+
77
+
78
+
79
+
80
+
81
+ def Utils.serverErrorHandler(e)
82
+
83
+ if(e.response == nil)
84
+ raise e
85
+ return
86
+ end
87
+ error = PaystackServerError.new(e.response);
88
+ case e.response.code
89
+ when 400
90
+ raise error, "HTTP Code 400: A validation or client side error occurred and the request was not fulfilled. "
91
+ when 401
92
+ raise error, "HTTP Code 401: The request was not authorized. This can be triggered by passing an invalid secret key in the authorization header or the lack of one"
93
+ when 404
94
+ raise error, "HTTP Code 404: Request could not be fulfilled as the request resource does not exist."
95
+ when 500, 501,502,503,504
96
+ raise error, "HTTP Code #{e.response.code}: Request could not be fulfilled due to an error on Paystack's end. This shouldn't happen so please report as soon as you encounter any instance of this."
97
+ else
98
+ raise error, "HTTP Code #{e.response.code}: #{e.response.body}"
99
+
100
+ end
101
+
102
+ end
103
+
104
+ end
@@ -1,3 +1,3 @@
1
1
  module Paystack
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.5"
3
3
  end
@@ -6,7 +6,7 @@ require 'paystack/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "paystack"
8
8
  spec.version = Paystack::VERSION
9
- spec.authors = ["Victor"]
9
+ spec.authors = ["Victor Ikoro"]
10
10
  spec.email = ["ikoro.victor@gmail.com"]
11
11
 
12
12
  spec.summary = %q{PayStack.co gem for Ruby/Rails}
@@ -22,9 +22,11 @@ Gem::Specification.new do |spec|
22
22
  #Dev dependencies
23
23
  spec.add_development_dependency "bundler", "~> 1.11"
24
24
  spec.add_development_dependency "rake", "~> 10.0"
25
- spec.add_development_dependency "rspec", "~> 0"
26
-
25
+ spec.add_development_dependency 'rspec', '~> 3.0'
26
+
27
27
  #Dependencies
28
- spec.add_dependency "rest-client", '~> 1.8'
29
-
28
+ spec.required_ruby_version = '>= 2.0.0'
29
+ spec.add_runtime_dependency 'rest-client', '~> 2.0'
30
+
31
+
30
32
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: paystack
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
- - Victor
7
+ - Victor Ikoro
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-02-12 00:00:00.000000000 Z
11
+ date: 2016-10-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -44,28 +44,28 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: '3.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: '3.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rest-client
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '1.8'
61
+ version: '2.0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '1.8'
68
+ version: '2.0'
69
69
  description: Client Library Gem for PayStack.co
70
70
  email:
71
71
  - ikoro.victor@gmail.com
@@ -75,6 +75,7 @@ extra_rdoc_files: []
75
75
  files:
76
76
  - ".gitignore"
77
77
  - ".rspec"
78
+ - ".travis.yml"
78
79
  - CODE_OF_CONDUCT.md
79
80
  - Gemfile
80
81
  - LICENSE.txt
@@ -82,7 +83,6 @@ files:
82
83
  - Rakefile
83
84
  - bin/console
84
85
  - bin/setup
85
- - key.pem
86
86
  - lib/paystack.rb
87
87
  - lib/paystack/error.rb
88
88
  - lib/paystack/modules/api.rb
@@ -90,6 +90,7 @@ files:
90
90
  - lib/paystack/objects/card.rb
91
91
  - lib/paystack/objects/customers.rb
92
92
  - lib/paystack/objects/plans.rb
93
+ - lib/paystack/objects/subscriptions.rb
93
94
  - lib/paystack/objects/transactions.rb
94
95
  - lib/paystack/utils/utils.rb
95
96
  - lib/paystack/version.rb
@@ -106,7 +107,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
106
107
  requirements:
107
108
  - - ">="
108
109
  - !ruby/object:Gem::Version
109
- version: '0'
110
+ version: 2.0.0
110
111
  required_rubygems_version: !ruby/object:Gem::Requirement
111
112
  requirements:
112
113
  - - ">="
@@ -114,7 +115,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
114
115
  version: '0'
115
116
  requirements: []
116
117
  rubyforge_project:
117
- rubygems_version: 2.4.5
118
+ rubygems_version: 2.6.6
118
119
  signing_key:
119
120
  specification_version: 4
120
121
  summary: PayStack.co gem for Ruby/Rails
data/key.pem DELETED
File without changes