cb-api 5.4.0 → 5.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +12 -0
- data/lib/cb/clients/user.rb +12 -6
- data/lib/cb/config.rb +2 -1
- data/lib/cb/responses/timing.rb +15 -1
- data/lib/cb/responses/user/temporary_password.rb +38 -0
- data/lib/cb/version.rb +1 -1
- metadata +3 -2
data/README.md
CHANGED
@@ -5,6 +5,18 @@ Now that you have a key, lets get to the good stuff.
|
|
5
5
|
You can find an example rails site that uses the gem here:
|
6
6
|
https://github.com/cbdr/ruby-cb-api-demo
|
7
7
|
|
8
|
+
Installation
|
9
|
+
================
|
10
|
+
|
11
|
+
Install required gems:
|
12
|
+
|
13
|
+
gem install iconv
|
14
|
+
gem install cb-api
|
15
|
+
|
16
|
+
Require the library in your Ruby script:
|
17
|
+
|
18
|
+
require 'cb'
|
19
|
+
|
8
20
|
Configuration
|
9
21
|
================
|
10
22
|
Set your dev key, and any other configuration settings in a place that will run prior to your API calls.
|
data/lib/cb/clients/user.rb
CHANGED
@@ -11,7 +11,13 @@ module Cb
|
|
11
11
|
Cb::Responses::User::CheckExisting.new(response)
|
12
12
|
end
|
13
13
|
|
14
|
-
def
|
14
|
+
def temporary_password(external_id)
|
15
|
+
query = { 'ExternalID' => external_id }
|
16
|
+
response = api_client.cb_get(Cb.configuration.uri_user_temp_password, query: query)
|
17
|
+
Cb::Responses::User::TemporaryPassword.new(response)
|
18
|
+
end
|
19
|
+
|
20
|
+
def retrieve(external_id, test_mode = false)
|
15
21
|
my_api = Cb::Utils::Api.new
|
16
22
|
json_hash = my_api.cb_post Cb.configuration.uri_user_retrieve, :body => build_retrieve_request(external_id, true)
|
17
23
|
if json_hash.has_key? 'ResponseUserInfo'
|
@@ -24,7 +30,7 @@ module Cb
|
|
24
30
|
my_api.append_api_responses user, json_hash
|
25
31
|
end
|
26
32
|
|
27
|
-
def change_password
|
33
|
+
def change_password(external_id, old_password, new_password, test_mode = false)
|
28
34
|
result = false
|
29
35
|
my_api = Cb::Utils::Api.new
|
30
36
|
json_hash = my_api.cb_post Cb.configuration.uri_user_change_password, :body => build_change_password_request(external_id, old_password, new_password, test_mode)
|
@@ -39,7 +45,7 @@ module Cb
|
|
39
45
|
my_api.append_api_responses result, json_hash
|
40
46
|
end
|
41
47
|
|
42
|
-
def delete
|
48
|
+
def delete(external_id, password, test_mode = false)
|
43
49
|
result = false
|
44
50
|
my_api = Cb::Utils::Api.new
|
45
51
|
json_hash = my_api.cb_post Cb.configuration.uri_user_delete, :body => build_delete_request(external_id, password, test_mode)
|
@@ -67,7 +73,7 @@ module Cb
|
|
67
73
|
eos
|
68
74
|
end
|
69
75
|
|
70
|
-
def build_retrieve_request
|
76
|
+
def build_retrieve_request(external_id, test_mode)
|
71
77
|
<<-eos
|
72
78
|
<Request>
|
73
79
|
<DeveloperKey>#{Cb.configuration.dev_key}</DeveloperKey>
|
@@ -77,7 +83,7 @@ module Cb
|
|
77
83
|
eos
|
78
84
|
end
|
79
85
|
|
80
|
-
def build_change_password_request
|
86
|
+
def build_change_password_request(external_id, old_password, new_password, test_mode)
|
81
87
|
<<-eos
|
82
88
|
<Request>
|
83
89
|
<DeveloperKey>#{Cb.configuration.dev_key}</DeveloperKey>
|
@@ -89,7 +95,7 @@ module Cb
|
|
89
95
|
eos
|
90
96
|
end
|
91
97
|
|
92
|
-
def build_delete_request
|
98
|
+
def build_delete_request(external_id, password, test_mode)
|
93
99
|
<<-eos
|
94
100
|
<Request>
|
95
101
|
<DeveloperKey>#{Cb.configuration.dev_key}</DeveloperKey>
|
data/lib/cb/config.rb
CHANGED
@@ -8,7 +8,7 @@ module Cb
|
|
8
8
|
:uri_recommendation_for_company,
|
9
9
|
:uri_application, :uri_application_submit,
|
10
10
|
:uri_application_external,
|
11
|
-
:uri_application_registered, :uri_user_change_password,
|
11
|
+
:uri_application_registered, :uri_user_change_password, :uri_user_temp_password,
|
12
12
|
:uri_user_delete, :uri_user_retrieve, :uri_user_check_existing,
|
13
13
|
:uri_job_branding,
|
14
14
|
:uri_resume_own_all, :uri_resume_retrieve,
|
@@ -44,6 +44,7 @@ module Cb
|
|
44
44
|
@uri_user_delete ||= '/v2/User/delete'
|
45
45
|
@uri_user_retrieve ||= '/v2/user/retrieve'
|
46
46
|
@uri_user_check_existing ||= '/v2/user/checkexisting'
|
47
|
+
@uri_user_temp_password ||= '/v1/user/temporarypassword'
|
47
48
|
@uri_job_branding ||= '/branding'
|
48
49
|
@uri_resume_own_all ||= '/v2/resume/ownall'
|
49
50
|
@uri_resume_retrieve ||= '/v2/resume/retrieve'
|
data/lib/cb/responses/timing.rb
CHANGED
@@ -29,7 +29,21 @@ module Cb
|
|
29
29
|
end
|
30
30
|
|
31
31
|
def parsed_time_elapsed
|
32
|
-
|
32
|
+
elapsed_node_parsable? ? response[elapsed_node].to_f : nil
|
33
|
+
end
|
34
|
+
|
35
|
+
def elapsed_node_parsable?
|
36
|
+
response.include?(elapsed_node) &&
|
37
|
+
response[elapsed_node].respond_to?(:to_f) &&
|
38
|
+
timing_parses_to_nonzero?
|
39
|
+
end
|
40
|
+
|
41
|
+
def timing_parses_to_nonzero?
|
42
|
+
response[elapsed_node].to_f != 0.0
|
43
|
+
end
|
44
|
+
|
45
|
+
def elapsed_node
|
46
|
+
'TimeElapsed'
|
33
47
|
end
|
34
48
|
end
|
35
49
|
|
@@ -0,0 +1,38 @@
|
|
1
|
+
module Cb
|
2
|
+
module Responses
|
3
|
+
module User
|
4
|
+
|
5
|
+
class TemporaryPassword < ApiResponse
|
6
|
+
|
7
|
+
# there's really no response model here, so let's just
|
8
|
+
# pass the new password along in a way that makes sense.
|
9
|
+
alias_method :temp_password, :model
|
10
|
+
|
11
|
+
protected
|
12
|
+
|
13
|
+
def validate_api_hash
|
14
|
+
required_response_field(password_node, response)
|
15
|
+
end
|
16
|
+
|
17
|
+
def extract_models
|
18
|
+
response[password_node]
|
19
|
+
end
|
20
|
+
|
21
|
+
def hash_containing_metadata
|
22
|
+
response
|
23
|
+
end
|
24
|
+
|
25
|
+
def raise_on_timing_parse_error
|
26
|
+
false
|
27
|
+
end
|
28
|
+
|
29
|
+
private
|
30
|
+
|
31
|
+
def password_node
|
32
|
+
'TemporaryPassword'
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
data/lib/cb/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cb-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.
|
4
|
+
version: 5.5.0
|
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-03-
|
12
|
+
date: 2014-03-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: httparty
|
@@ -218,6 +218,7 @@ files:
|
|
218
218
|
- lib/cb/responses/spot/retrieve_response.rb
|
219
219
|
- lib/cb/responses/api_response.rb
|
220
220
|
- lib/cb/responses/user/check_existing.rb
|
221
|
+
- lib/cb/responses/user/temporary_password.rb
|
221
222
|
- lib/cb/responses/timing.rb
|
222
223
|
- lib/cb/responses/saved_search/list.rb
|
223
224
|
- lib/cb/responses/saved_search/singular.rb
|