class ChambaSearchMx::JobPage

Job unique page

Public Class Methods

new(opts = {}) click to toggle source

@param <hash> options

# File lib/chamba_search_mx/job_page.rb, line 7
def initialize(opts = {})
  @http = opts[:http] || ChambaSearchMx::HTMLPage.new
  @job_decorator = opts[:job_decorator] || ChambaSearchMx::JobDecorator
end

Public Instance Methods

data() click to toggle source

@return <ChambaSearchMx::JobDecorator> instance

# File lib/chamba_search_mx/job_page.rb, line 23
def data
  @job_decorator.new decorator_data
end
load(url = '') click to toggle source

@param <string> url @return <class> self

# File lib/chamba_search_mx/job_page.rb, line 15
def load(url = '')
  @url = url
  @http.load @url
  self
end

Private Instance Methods

businesses() click to toggle source

@return <string> businesses

# File lib/chamba_search_mx/job_page.rb, line 65
def businesses
  content.css('#bg_triangle_ba dd:eq(3)').text
end
company() click to toggle source

@return <string> company

# File lib/chamba_search_mx/job_page.rb, line 53
def company
  content.css('#tittlejob_jo span h3 span').text
end
contact_email() click to toggle source

@return <string> contact_email

# File lib/chamba_search_mx/job_page.rb, line 77
def contact_email
  contact_email_text.gsub(/correo:/i, '').strip
end
contact_email_text() click to toggle source

@return <string> contact_email_text

# File lib/chamba_search_mx/job_page.rb, line 95
def contact_email_text
  content.css('#contactData #mail_info').text
end
contact_name() click to toggle source

@return <string> contact_name

# File lib/chamba_search_mx/job_page.rb, line 71
def contact_name
  contact_name_text.gsub(/contacto:/i, '').strip
end
contact_name_text() click to toggle source

@return <string> contact_name_text

# File lib/chamba_search_mx/job_page.rb, line 89
def contact_name_text
  content.css('#contactData span[itemprop=name]').text
end
content() click to toggle source

@return <class> Nokogiri::XML::Document

# File lib/chamba_search_mx/job_page.rb, line 101
def content
  @http.content
end
decorator_data() click to toggle source

data used for @job_decorator @return <Hash>

# File lib/chamba_search_mx/job_page.rb, line 32
def decorator_data
  {
    businesses: businesses,
    company: company,
    contact_email: contact_email,
    contact_name: contact_name,
    description: description,
    sector: sector,
    title: title,
    url: @url
  }
end
description() click to toggle source

@return <string> description

# File lib/chamba_search_mx/job_page.rb, line 83
def description
  content.css('.txt2_jo').text
end
sector() click to toggle source

@return <string> sector

# File lib/chamba_search_mx/job_page.rb, line 59
def sector
  content.css('#bg_triangle_ba dd:eq(2)').text
end
title() click to toggle source

@return <string> title

# File lib/chamba_search_mx/job_page.rb, line 47
def title
  content.css('#tittlejob_jo h1').text
end