class Cb::Clients::EmailSubscriptions

Public Class Methods

get(args = {}) click to toggle source
# File lib/cb/clients/email_subscriptions.rb, line 16
def get(args = {})
  cb_client.cb_get(Cb.configuration.uri_subscription_retrieve, query: query(args), headers: headers(args))
end
post(args = {}) click to toggle source
# File lib/cb/clients/email_subscriptions.rb, line 20
def post(args = {})
  @unsubscribe_all = args[:unsubscribe_all]
  cb_client.cb_post(Cb.configuration.uri_subscription_modify, body: body(args), headers: post_headers(args))
end

Private Class Methods

body(args = {}) click to toggle source
# File lib/cb/clients/email_subscriptions.rb, line 38
        def body(args = {})
          <<-eos.gsub /^\s+/, ""
          <Request>
            <DeveloperKey>#{Cb.configuration.dev_key}</DeveloperKey>
            <ExternalID>#{args[:external_id]}</ExternalID>
            <Hostsite>#{args[:host_site] || Cb.configuration.host_site}</Hostsite>
            <CareerResources>#{validate args[:career_resources]}</CareerResources>
            <ProductSponsorInfo>#{validate args[:product_sponsor_info]}</ProductSponsorInfo>
            <ApplicantSurveyInvites>#{validate args[:applicant_survey_invites]}</ApplicantSurveyInvites>
            <JobRecs>#{validate args[:job_recs]}</JobRecs>
            <DJR>#{validate args[:djr]}</DJR>
            <ResumeViewed>#{validate args[:resume_viewed]}</ResumeViewed>
            <ApplicationViewed>#{validate args[:application_viewed]}</ApplicationViewed>
            <UnsubscribeAll>#{args[:unsubscribe_all]}</UnsubscribeAll>
          </Request>
          eos
        end
post_headers(args = {}) click to toggle source
# File lib/cb/clients/email_subscriptions.rb, line 34
def post_headers(args = {})
  headers(args).merge('Content-Type' => 'application/xml')
end
query(args = {}) click to toggle source
# File lib/cb/clients/email_subscriptions.rb, line 27
def query(args = {})
  {
    ExternalID: args[:external_id],
    HostSite: args[:host_site] || Cb.configuration.host_site
  }
end
unsubscribe_all?() click to toggle source
# File lib/cb/clients/email_subscriptions.rb, line 61
def unsubscribe_all?
  @unsubscribe_all
end
validate(value) click to toggle source
# File lib/cb/clients/email_subscriptions.rb, line 56
def validate(value)
  return value unless unsubscribe_all?
  false.to_s
end