mekari_sso 0.0.1.6 → 0.0.1.7

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
  SHA256:
3
- metadata.gz: 9be084567d981280cebabaee82018bbf4a69ec4cdfdb6bbd400bccc585deade2
4
- data.tar.gz: e67b2617867bdbb62ce1d0a7f007311c47ae10f8979d3155b20d8b7303fc1106
3
+ metadata.gz: 02a789d6e10a3a5cc60dbab56d604901d39925bce3149235edb7146fa83ae72a
4
+ data.tar.gz: 86c6b9e5a897f73726c80059aa7fb5cf62384dc2d0bbaea6747cc747b2bf5e4b
5
5
  SHA512:
6
- metadata.gz: 845a9f57796761788bdb6bbe8c2759838f78bd8fd8d8af875c1c1d95cec3e3949ae5650173869953b70f1032e8f658bad2a83f5072b24f24b18a60395b6b9ac6
7
- data.tar.gz: 4dcbe05224c0edc21fb4b594c3274542f6e6e9cab110c3b0545b437ebb01f7cde636ff8488115562bdbeba4dc095e323fb5f58e903bf6e5652cecef450fca652
6
+ metadata.gz: f5a44a965734942cf2b1f3fe00f96e7fed17911f9a91f4f7e899405575ed23eb57a7bd4955b34b2f10f5017d9964f73727205be78f4970f35af45014ef769952
7
+ data.tar.gz: 2e91276c59b412d635232de59dd4493ca070cc201483f6b12f1c7fbd3824bc91aa444a478196eefbd13a4202b1e8adfe12654f2742229fcaff4e08d287219998
data/lib/mekari_sso.rb CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  require_relative 'config'
4
4
  require 'requests/add_user_to_company'
5
+ require 'requests/check_user_existence'
5
6
  require 'requests/cities'
6
7
  require 'requests/companies'
7
8
  require 'requests/company_member'
@@ -32,6 +33,7 @@ require 'params/company'
32
33
  require 'params/province'
33
34
  require 'params/remove_user_company'
34
35
  require 'params/list'
36
+ require 'params/user_existence'
35
37
  require 'params/user_update'
36
38
  require 'params/user_avatar'
37
39
  require 'params/user_verify_email'
@@ -187,5 +189,13 @@ module MekariSso
187
189
  sender = MekariSso::Sender.new
188
190
  sender >> MekariSso::VerifyEmailUser.new(@options, user)
189
191
  end
192
+
193
+ def existence_user(params)
194
+ user = MekariSso::UserExistence.new(params)
195
+ user.validate_required!
196
+
197
+ sender = MekariSso::Sender.new
198
+ sender >> MekariSso::CheckUserExistence.new(@options, user)
199
+ end
190
200
  end
191
201
  end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'config'
4
+
5
+ module MekariSso
6
+ class UserExistence < MekariSso::Config
7
+ attr_accessor :key, :value, :access_token
8
+
9
+ def initialize(options = nil)
10
+ apply(options) if options
11
+ end
12
+
13
+ def available_keys
14
+ %i[key value access_token]
15
+ end
16
+
17
+ def validate_required!
18
+ unless @key.present?
19
+ raise ArgumentError, "Params key is required options"
20
+ end
21
+
22
+ unless @value.present?
23
+ raise ArgumentError, "Params value is required options"
24
+ end
25
+
26
+ unless @access_token.present?
27
+ raise ArgumentError, "Params access_token is required options"
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rest-client'
4
+ require 'cgi'
5
+ require 'uri'
6
+ require_relative 'http_request'
7
+
8
+ module MekariSso
9
+ class CheckUserExistence < MekariSso::HttpRequest
10
+
11
+ attr_reader :config, :params
12
+
13
+ def initialize(config, params)
14
+ @config = config
15
+ @params = params
16
+ end
17
+
18
+ def params
19
+ {
20
+ attr_key: @params.key,
21
+ attr_value: @params.value,
22
+ }
23
+ end
24
+
25
+ def headers_request
26
+ headers.merge({
27
+ authorization: "Bearer #{@params.access_token}"
28
+ })
29
+ end
30
+
31
+ def send
32
+ url = URI("#{@config.base_url}/v1/users/check")
33
+ url.query = URI.encode_www_form(params)
34
+ # url = URI("#{@config.base_url}/v1/users/check?attr_key=#{@params.key}&attr_value=#{CGI.escape(@params.value)}")
35
+
36
+ RestClient.get url.to_s, headers_request
37
+ end
38
+ end
39
+
40
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mekari_sso
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.6
4
+ version: 0.0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - WSPDV
@@ -44,6 +44,20 @@ dependencies:
44
44
  - - ">="
45
45
  - !ruby/object:Gem::Version
46
46
  version: 2.6.1
47
+ - !ruby/object:Gem::Dependency
48
+ name: uri
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
47
61
  - !ruby/object:Gem::Dependency
48
62
  name: rspec
49
63
  requirement: !ruby/object:Gem::Requirement
@@ -75,10 +89,12 @@ files:
75
89
  - lib/params/province.rb
76
90
  - lib/params/remove_user_company.rb
77
91
  - lib/params/user_avatar.rb
92
+ - lib/params/user_existence.rb
78
93
  - lib/params/user_register.rb
79
94
  - lib/params/user_update.rb
80
95
  - lib/params/user_verify_email.rb
81
96
  - lib/requests/add_user_to_company.rb
97
+ - lib/requests/check_user_existence.rb
82
98
  - lib/requests/cities.rb
83
99
  - lib/requests/companies.rb
84
100
  - lib/requests/company_member.rb