cb-api 7.6.2 → 7.7.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/lib/cb/config.rb +0 -7
- data/lib/cb/models/implementations/email_subscription.rb +2 -1
- data/lib/cb/requests/anonymous_saved_search/create.rb +8 -8
- data/lib/cb/requests/anonymous_saved_search/delete.rb +1 -1
- data/lib/cb/requests/application/create.rb +12 -12
- data/lib/cb/requests/application/update.rb +14 -14
- data/lib/cb/requests/application_external/submit_application.rb +7 -7
- data/lib/cb/requests/base.rb +3 -1
- data/lib/cb/requests/category/search.rb +1 -1
- data/lib/cb/requests/company/find.rb +1 -1
- data/lib/cb/requests/email_subscription/modify.rb +46 -0
- data/lib/cb/requests/email_subscription/retrieve.rb +26 -0
- data/lib/cb/requests/user/change_password.rb +3 -3
- data/lib/cb/requests/user/check_existing.rb +2 -2
- data/lib/cb/requests/user/delete.rb +2 -2
- data/lib/cb/requests/user/retrieve.rb +1 -1
- data/lib/cb/requests/user/temporary_password.rb +1 -1
- data/lib/cb/responses/email_subscription/response.rb +34 -0
- data/lib/cb/utils/response_map.rb +13 -2
- data/lib/cb/version.rb +1 -1
- metadata +5 -2
data/lib/cb/config.rb
CHANGED
@@ -11,8 +11,6 @@ module Cb
|
|
11
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
|
-
:uri_resume_own_all, :uri_resume_retrieve,
|
15
|
-
:uri_resume_create, :uri_resume_update, :uri_resume_delete,
|
16
14
|
:uri_saved_search_retrieve, :uri_saved_search_create, :uri_saved_search_update, :uri_saved_search_list, :uri_saved_search_delete,
|
17
15
|
:uri_anon_saved_search_create, :uri_anon_saved_search_delete,
|
18
16
|
:uri_saved_job_search_create,
|
@@ -91,11 +89,6 @@ module Cb
|
|
91
89
|
:uri_user_retrieve => @uri_user_retrieve,
|
92
90
|
:uri_user_check_existing => @uri_user_check_existing,
|
93
91
|
:uri_job_branding => @uri_job_branding,
|
94
|
-
:uri_resume_own_all => @uri_resume_own_all,
|
95
|
-
:uri_resume_retrieve => @uri_resume_retrieve,
|
96
|
-
:uri_resume_create => @uri_resume_create,
|
97
|
-
:uri_resume_update => @uri_resume_update,
|
98
|
-
:uri_resume_delete => @uri_resume_delete,
|
99
92
|
:uri_saved_search_retrieve => @uri_saved_search_retrieve,
|
100
93
|
:uri_saved_search_create => @uri_saved_search_create,
|
101
94
|
:uri_saved_search_update => @uri_saved_search_update,
|
@@ -2,7 +2,7 @@ module Cb
|
|
2
2
|
module Models
|
3
3
|
class EmailSubscription
|
4
4
|
attr_accessor :career_resources, :product_sponsor_info, :applicant_survey_invites,
|
5
|
-
:job_recs, :unsubscribe_all
|
5
|
+
:job_recs, :unsubscribe_all, :djr
|
6
6
|
|
7
7
|
def initialize(args = {})
|
8
8
|
return if args.nil?
|
@@ -11,6 +11,7 @@ module Cb
|
|
11
11
|
@product_sponsor_info = args['ProductSponsorInfo'].to_s || ''
|
12
12
|
@applicant_survey_invites = args['ApplicantSurveyInvites'].to_s || ''
|
13
13
|
@job_recs = args['JobRecs'].to_s || ''
|
14
|
+
@djr = args['DJR'].to_s || ''
|
14
15
|
end
|
15
16
|
end
|
16
17
|
end
|
@@ -16,15 +16,15 @@ module Cb
|
|
16
16
|
def body
|
17
17
|
<<-eos
|
18
18
|
<Request>
|
19
|
-
<HostSite>#{
|
20
|
-
<Cobrand>#{
|
21
|
-
<BrowserID>#{
|
22
|
-
<SessionID>#{
|
19
|
+
<HostSite>#{args[:host_site]}</HostSite>
|
20
|
+
<Cobrand>#{args[:cobrand]}</Cobrand>
|
21
|
+
<BrowserID>#{args[:browser_id]}</BrowserID>
|
22
|
+
<SessionID>#{args[:session_id]}</SessionID>
|
23
23
|
<Test>#{test?}</Test>
|
24
|
-
<EmailAddress>#{
|
25
|
-
<SearchName>#{
|
26
|
-
#{search_parameters(
|
27
|
-
<IsDailyEmail>#{
|
24
|
+
<EmailAddress>#{args[:email_address]}</EmailAddress>
|
25
|
+
<SearchName>#{args[:search_name]}</SearchName>
|
26
|
+
#{search_parameters(args[:search_parameters]) unless args[:search_parameters].nil?}
|
27
|
+
<IsDailyEmail>#{args[:is_daily_email]}</IsDailyEmail>
|
28
28
|
<DeveloperKey>#{Cb.configuration.dev_key}</DeveloperKey>
|
29
29
|
</Request>
|
30
30
|
eos
|
@@ -25,18 +25,18 @@ module Cb
|
|
25
25
|
|
26
26
|
def body
|
27
27
|
{
|
28
|
-
JobDID:
|
29
|
-
IsSubmitted:
|
30
|
-
ExternalUserID:
|
31
|
-
VID:
|
32
|
-
BID:
|
33
|
-
SID:
|
34
|
-
SiteID:
|
35
|
-
IPathID:
|
36
|
-
TNDID:
|
37
|
-
Resume: resume_info(
|
38
|
-
CoverLetter: cover_letter_info(
|
39
|
-
Responses: parsed_responses(
|
28
|
+
JobDID: args[:job_did],
|
29
|
+
IsSubmitted: args[:is_submitted],
|
30
|
+
ExternalUserID: args[:external_user_id],
|
31
|
+
VID: args[:vid],
|
32
|
+
BID: args[:bid],
|
33
|
+
SID: args[:sid],
|
34
|
+
SiteID: args[:site_id],
|
35
|
+
IPathID: args[:ipath_id],
|
36
|
+
TNDID: args[:tn_did],
|
37
|
+
Resume: resume_info(args[:resume]),
|
38
|
+
CoverLetter: cover_letter_info(args[:cover_letter]),
|
39
|
+
Responses: parsed_responses(args[:responses]),
|
40
40
|
Test: test?
|
41
41
|
}.to_json
|
42
42
|
end
|
@@ -8,7 +8,7 @@ module Cb
|
|
8
8
|
include Cb::Requests::ApplicationUtils
|
9
9
|
|
10
10
|
def endpoint_uri
|
11
|
-
Cb.configuration.uri_application.sub ':did',
|
11
|
+
Cb.configuration.uri_application.sub ':did', args[:application_did].to_s
|
12
12
|
end
|
13
13
|
|
14
14
|
def http_method
|
@@ -25,19 +25,19 @@ module Cb
|
|
25
25
|
|
26
26
|
def body
|
27
27
|
{
|
28
|
-
ApplicationDID:
|
29
|
-
JobDID:
|
30
|
-
IsSubmitted:
|
31
|
-
ExternalUserID:
|
32
|
-
VID:
|
33
|
-
BID:
|
34
|
-
SID:
|
35
|
-
SiteID:
|
36
|
-
IPathID:
|
37
|
-
TNDID:
|
38
|
-
Resume: resume_info(
|
39
|
-
CoverLetter: cover_letter_info(
|
40
|
-
Responses: parsed_responses(
|
28
|
+
ApplicationDID: args[:application_did],
|
29
|
+
JobDID: args[:job_did],
|
30
|
+
IsSubmitted: args[:is_submitted],
|
31
|
+
ExternalUserID: args[:external_user_id],
|
32
|
+
VID: args[:vid],
|
33
|
+
BID: args[:bid],
|
34
|
+
SID: args[:sid],
|
35
|
+
SiteID: args[:site_id],
|
36
|
+
IPathID: args[:ipath_id],
|
37
|
+
TNDID: args[:tn_did],
|
38
|
+
Resume: resume_info(args[:resume]),
|
39
|
+
CoverLetter: cover_letter_info(args[:cover_letter]),
|
40
|
+
Responses: parsed_responses(args[:responses]),
|
41
41
|
Test: test?
|
42
42
|
}.to_json
|
43
43
|
end
|
@@ -17,12 +17,12 @@ module Cb
|
|
17
17
|
<<-eos
|
18
18
|
<Request>
|
19
19
|
<DeveloperKey>#{Cb.configuration.dev_key}</DeveloperKey>
|
20
|
-
<EmailAddress>#{
|
21
|
-
<JobDID>#{
|
22
|
-
<SiteID>#{
|
20
|
+
<EmailAddress>#{args[:email_address]}</EmailAddress>
|
21
|
+
<JobDID>#{args[:job_did]}</JobDID>
|
22
|
+
<SiteID>#{args[:site_id]}</SiteID>
|
23
23
|
<IPath>#{ipath}</IPath>
|
24
|
-
<IsExternalLinkApply>#{
|
25
|
-
<HostSite>#{
|
24
|
+
<IsExternalLinkApply>#{args[:is_external_link_apply]}</IsExternalLinkApply>
|
25
|
+
<HostSite>#{args[:host_site] || Cb.configuration.host_site}</HostSite>
|
26
26
|
</Request>
|
27
27
|
eos
|
28
28
|
end
|
@@ -30,10 +30,10 @@ module Cb
|
|
30
30
|
private
|
31
31
|
|
32
32
|
def ipath
|
33
|
-
return '' unless
|
33
|
+
return '' unless args[:ipath].is_a?(String)
|
34
34
|
ipath_length = 10
|
35
35
|
|
36
|
-
|
36
|
+
args[:ipath].slice(0, ipath_length)
|
37
37
|
end
|
38
38
|
|
39
39
|
end
|
data/lib/cb/requests/base.rb
CHANGED
@@ -2,6 +2,8 @@ module Cb
|
|
2
2
|
module Requests
|
3
3
|
class Base
|
4
4
|
|
5
|
+
attr_reader :args
|
6
|
+
|
5
7
|
def initialize(argument_hash)
|
6
8
|
raise ArgumentError.new("#{argument_hash.class} is not a Hash") unless argument_hash.is_a?(Hash)
|
7
9
|
@args = argument_hash
|
@@ -30,7 +32,7 @@ module Cb
|
|
30
32
|
private
|
31
33
|
|
32
34
|
def test?
|
33
|
-
(
|
35
|
+
(args[:test] || Cb.configuration.test_resources).to_s
|
34
36
|
end
|
35
37
|
|
36
38
|
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
require_relative '../base'
|
2
|
+
|
3
|
+
module Cb
|
4
|
+
module Requests
|
5
|
+
module EmailSubscription
|
6
|
+
class Modify < Base
|
7
|
+
|
8
|
+
def endpoint_uri
|
9
|
+
Cb.configuration.uri_subscription_modify
|
10
|
+
end
|
11
|
+
|
12
|
+
def http_method
|
13
|
+
:post
|
14
|
+
end
|
15
|
+
|
16
|
+
def body
|
17
|
+
<<eos
|
18
|
+
<Request>
|
19
|
+
<DeveloperKey>#{Cb.configuration.dev_key.to_s}</DeveloperKey>
|
20
|
+
<ExternalID>#{args[:external_id]}</ExternalID>
|
21
|
+
<Hostsite>#{args[:host_site]}</Hostsite>
|
22
|
+
<CareerResources>#{validate args[:career_resources]}</CareerResources>
|
23
|
+
<ProductSponsorInfo>#{validate args[:product_sponsor_info]}</ProductSponsorInfo>
|
24
|
+
<ApplicantSurveyInvites>#{validate args[:applicant_survey_invites]}</ApplicantSurveyInvites>
|
25
|
+
<JobRecs>#{validate args[:job_recs]}</JobRecs>
|
26
|
+
<DJR>#{validate args[:djr]}</DJR>
|
27
|
+
<UnsubscribeAll>#{args[:unsubscribe_all]}</UnsubscribeAll>
|
28
|
+
</Request>
|
29
|
+
eos
|
30
|
+
end
|
31
|
+
|
32
|
+
private
|
33
|
+
|
34
|
+
def validate value
|
35
|
+
return value unless unsubscribe_all?
|
36
|
+
false.to_s
|
37
|
+
end
|
38
|
+
|
39
|
+
def unsubscribe_all?
|
40
|
+
args[:unsubscribe_all] == "true" || args[:unsubscribe_all] == true
|
41
|
+
end
|
42
|
+
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require_relative '../base'
|
2
|
+
|
3
|
+
module Cb
|
4
|
+
module Requests
|
5
|
+
module EmailSubscription
|
6
|
+
class Retrieve < Base
|
7
|
+
|
8
|
+
def endpoint_uri
|
9
|
+
Cb.configuration.uri_subscription_retrieve
|
10
|
+
end
|
11
|
+
|
12
|
+
def http_method
|
13
|
+
:get
|
14
|
+
end
|
15
|
+
|
16
|
+
def query
|
17
|
+
{
|
18
|
+
ExternalID: args[:external_id],
|
19
|
+
HostSite: args[:host_site]
|
20
|
+
}
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -17,10 +17,10 @@ module Cb
|
|
17
17
|
<<-eos
|
18
18
|
<Request>
|
19
19
|
<DeveloperKey>#{Cb.configuration.dev_key}</DeveloperKey>
|
20
|
-
<ExternalID>#{
|
20
|
+
<ExternalID>#{args[:external_id]}</ExternalID>
|
21
21
|
<Test>#{test?}</Test>
|
22
|
-
<OldPassword>#{
|
23
|
-
<NewPassword>#{
|
22
|
+
<OldPassword>#{args[:old_password]}</OldPassword>
|
23
|
+
<NewPassword>#{args[:new_password]}</NewPassword>
|
24
24
|
</Request>
|
25
25
|
eos
|
26
26
|
end
|
@@ -17,8 +17,8 @@ module Cb
|
|
17
17
|
<<-eos
|
18
18
|
<Request>
|
19
19
|
<DeveloperKey>#{Cb.configuration.dev_key}</DeveloperKey>
|
20
|
-
<Email>#{
|
21
|
-
<Password>#{
|
20
|
+
<Email>#{args[:email]}</Email>
|
21
|
+
<Password>#{args[:password]}</Password>
|
22
22
|
<Test>#{test?}</Test>
|
23
23
|
</Request>
|
24
24
|
eos
|
@@ -17,9 +17,9 @@ module Cb
|
|
17
17
|
<<-eos
|
18
18
|
<Request>
|
19
19
|
<DeveloperKey>#{Cb.configuration.dev_key}</DeveloperKey>
|
20
|
-
<ExternalID>#{
|
20
|
+
<ExternalID>#{args[:external_id]}</ExternalID>
|
21
21
|
<Test>#{test?}</Test>
|
22
|
-
<Password>#{
|
22
|
+
<Password>#{args[:password]}</Password>
|
23
23
|
</Request>
|
24
24
|
eos
|
25
25
|
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
require 'cb/responses/api_response'
|
2
|
+
|
3
|
+
module Cb
|
4
|
+
module Responses
|
5
|
+
module EmailSubscription
|
6
|
+
class Response < ApiResponse
|
7
|
+
|
8
|
+
protected
|
9
|
+
|
10
|
+
def hash_containing_metadata
|
11
|
+
response
|
12
|
+
end
|
13
|
+
|
14
|
+
def validate_api_hash
|
15
|
+
required_response_field(response_node, response)
|
16
|
+
end
|
17
|
+
|
18
|
+
def extract_models
|
19
|
+
Cb::Models::EmailSubscription.new(model_hash)
|
20
|
+
end
|
21
|
+
|
22
|
+
private
|
23
|
+
|
24
|
+
def response_node
|
25
|
+
"SubscriptionValues"
|
26
|
+
end
|
27
|
+
|
28
|
+
def model_hash
|
29
|
+
response[response_node]
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -8,6 +8,14 @@ module Cb
|
|
8
8
|
raise ResponseNotFoundError.new request_class
|
9
9
|
end
|
10
10
|
|
11
|
+
protected
|
12
|
+
|
13
|
+
def response_hash_extension
|
14
|
+
{
|
15
|
+
response_hash_extension_not_implemented: true
|
16
|
+
}
|
17
|
+
end
|
18
|
+
|
11
19
|
private
|
12
20
|
|
13
21
|
def response_hash
|
@@ -24,16 +32,19 @@ module Cb
|
|
24
32
|
|
25
33
|
Cb::Requests::Category::Search => Cb::Responses::Category::Search,
|
26
34
|
|
35
|
+
Cb::Requests::Company::Find => Cb::Responses::Company::Find,
|
36
|
+
|
27
37
|
Cb::Requests::Education::Get => Cb::Responses::Education::Get,
|
28
38
|
|
29
|
-
Cb::Requests::
|
39
|
+
Cb::Requests::EmailSubscription::Retrieve => Cb::Responses::EmailSubscription::Response,
|
40
|
+
Cb::Requests::EmailSubscription::Modify => Cb::Responses::EmailSubscription::Response,
|
30
41
|
|
31
42
|
Cb::Requests::User::ChangePassword => Cb::Responses::User::ChangePassword,
|
32
43
|
Cb::Requests::User::CheckExisting => Cb::Responses::User::CheckExisting,
|
33
44
|
Cb::Requests::User::Delete => Cb::Responses::User::Delete,
|
34
45
|
Cb::Requests::User::Retrieve => Cb::Responses::User::Retrieve,
|
35
46
|
Cb::Requests::User::TemporaryPassword => Cb::Responses::User::TemporaryPassword
|
36
|
-
}
|
47
|
+
}.merge response_hash_extension
|
37
48
|
end
|
38
49
|
|
39
50
|
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: 7.
|
4
|
+
version: 7.7.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-06-
|
12
|
+
date: 2014-06-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: httparty
|
@@ -217,6 +217,7 @@ files:
|
|
217
217
|
- lib/cb/responses/job/search.rb
|
218
218
|
- lib/cb/responses/application/application_form.rb
|
219
219
|
- lib/cb/responses/spot/retrieve_response.rb
|
220
|
+
- lib/cb/responses/email_subscription/response.rb
|
220
221
|
- lib/cb/responses/industry/search.rb
|
221
222
|
- lib/cb/responses/api_response.rb
|
222
223
|
- lib/cb/responses/user/check_existing.rb
|
@@ -279,6 +280,8 @@ files:
|
|
279
280
|
- lib/cb/requests/application/form.rb
|
280
281
|
- lib/cb/requests/application/create.rb
|
281
282
|
- lib/cb/requests/application/utils.rb
|
283
|
+
- lib/cb/requests/email_subscription/modify.rb
|
284
|
+
- lib/cb/requests/email_subscription/retrieve.rb
|
282
285
|
- lib/cb/requests/user/check_existing.rb
|
283
286
|
- lib/cb/requests/user/delete.rb
|
284
287
|
- lib/cb/requests/user/change_password.rb
|