class Cb::Models::SavedSearch

Attributes

boolean_operator[RW]
browser_id[RW]
category[RW]
city[RW]
cobrand[RW]
company[RW]
country[RW]
did[RW]
education_code[RW]
email_address[RW]
email_delivery_day[RW]
emp_type[RW]
errors[RW]
exclude_company_names[RW]
exclude_job_titles[RW]
exclude_national[RW]
external_id[RW]
external_user_id[RW]
host_site[RW]
industry_codes[RW]
is_daily_email[RW]
job_category[RW]
job_search_url[RW]
jrdid[RW]
keywords[RW]
location[RW]
order_by[RW]
order_direction[RW]
pay_high[RW]
pay_info_only[RW]
pay_low[RW]
posted_within[RW]
radius[RW]
search_name[RW]
search_parameters[RW]
session_id[RW]
site_id[RW]
specific_education[RW]
state[RW]
test[RW]
user_oauth_token[RW]

Public Class Methods

new(args = {}) click to toggle source
# File lib/cb/models/implementations/saved_search.rb, line 21
def initialize(args = {})
  @host_site                  = args['HostSite'] || args[:host_site] || ''
  @cobrand                    = args['Cobrand'] || args[:cobrand] || ''
  @search_name                = args['SearchName'] || args[:search_name] || ''
  @site_id                    = args['SiteId'] || args[:site_id] || ''
  @is_daily_email             = args['IsDailyEmail'] || args[:is_daily_email] || false
  @email_delivery_day         = args['EmailDeliveryDay'] || args[:email_delivery_day] || ''
  @job_search_url             = args['JobSearchUrl'] || args[:job_search_url] || ''
  @external_id                = args['ExternalID'] || args[:external_id] || ''
  @external_user_id           = args['ExternalUserID'] || args[:external_user_id] || ''
  @browser_id                 = args['BrowserID'] || args[:browser_id] || nil
  @session_id                 = args['SessionID'] || args[:session_id] || ''
  @email_address              = args['EmailAddress'] || args[:email_address] || ''
  @did                        = args['DID'] || args[:did] || ''
  @user_oauth_token           = args['userOAuthToken'] || args[:user_oauth_token] || ''
  @search_parameters          = SearchParameters.new(args['SavedSearchParameters'] || {})
end

Public Instance Methods

create_anon_to_xml() click to toggle source
# File lib/cb/models/implementations/saved_search.rb, line 53
      def create_anon_to_xml
        <<-eos
          <Request>
            <HostSite>#{host_site}</HostSite>
            <Cobrand>#{cobrand}</Cobrand>
            <BrowserID>#{browser_id}</BrowserID>
            <SessionID>#{session_id}</SessionID>
            <SiteID>#{site_id}</SiteID>
            <Test>false</Test>
            <EmailAddress>#{email_address}</EmailAddress>
            <SearchName>#{search_name}</SearchName>
            #{search_parameters.to_xml}
            <IsDailyEmail>#{is_daily_email.to_s.upcase}</IsDailyEmail>
            <DeveloperKey>#{Cb.configuration.dev_key}</DeveloperKey>
          </Request>
        eos
      end
create_to_json() click to toggle source
# File lib/cb/models/implementations/saved_search.rb, line 39
def create_to_json
  hash = {
    'SiteID' => site_id,
    'Cobrand' => cobrand,
    'EmailDeliveryDay' => email_delivery_day,
    'IsDailyEmail' => is_daily_email,
    'userOAuthToken' => user_oauth_token,
    'HostSite' => host_site,
    'SearchName' => search_name,
    'SavedSearchParameters' => search_parameters.to_hash
  }
  hash.to_json
end
delete_anon_to_xml() click to toggle source
# File lib/cb/models/implementations/saved_search.rb, line 87
      def delete_anon_to_xml
        <<-eos
          <Request>
            <ExternalID>#{external_id}</ExternalID>
            <DeveloperKey>#{Cb.configuration.dev_key}</DeveloperKey>
            <Test>false</Test>
          </Request>
        eos
      end
update_to_json() click to toggle source
# File lib/cb/models/implementations/saved_search.rb, line 71
def update_to_json
  hash = {
    'DID' => did,
    'SearchName' => search_name,
    'HostSite' => host_site,
    'SiteID' => site_id,
    'Cobrand' => cobrand,
    'EmailDeliveryDay' => email_delivery_day,
    'IsDailyEmail' => is_daily_email,
    'userOAuthToken' => user_oauth_token,
    'SavedSearchParameters' => search_parameters.to_hash
  }
  hash['EmailDeliveryDay'] = email_delivery_day unless is_daily_email
  hash.to_json
end