Sha256: 35b1366bcf3a599ac08136253157028025d6e99fa9192370ed89ca56e078dafa

Contents?: true

Size: 760 Bytes

Versions: 31

Compression:

Stored size: 760 Bytes

Contents

module Recruiter
  class Job < ActiveRecord::Base
    belongs_to :user
    belongs_to :city
    has_and_belongs_to_many :tags, class_name: 'Recruiter::Tag'

    validates :user, presence: true
    validates :city, presence: true
    validates :title, presence: true
    validates :description, presence: true
    validates :how_to_apply, presence: true

    default_scope ->{ order('recruiter_jobs.created_at DESC') }
    scope :open, ->{ where(open: true) }

    def to_param
      "#{id}-#{title.parameterize}"
    end

    # form helper
    def state_id=(value)
      @state_id = value
    end

    # form helper
    def state_id
      if @state_id.present?
        @state_id.to_i
      elsif city.present?
        city.state_id
      end
    end
  end
end

Version data entries

31 entries across 31 versions & 1 rubygems

Version Path
recruiter-1.1.18 app/models/recruiter/job.rb
recruiter-1.1.17 app/models/recruiter/job.rb
recruiter-1.1.16 app/models/recruiter/job.rb
recruiter-1.1.15 app/models/recruiter/job.rb
recruiter-1.1.14 app/models/recruiter/job.rb
recruiter-1.1.12 app/models/recruiter/job.rb
recruiter-1.1.11 app/models/recruiter/job.rb
recruiter-1.1.10 app/models/recruiter/job.rb
recruiter-1.1.9 app/models/recruiter/job.rb
recruiter-1.1.8 app/models/recruiter/job.rb
recruiter-1.1.7 app/models/recruiter/job.rb
recruiter-1.1.6 app/models/recruiter/job.rb
recruiter-1.1.5 app/models/recruiter/job.rb
recruiter-1.1.4 app/models/recruiter/job.rb
recruiter-1.1.3 app/models/recruiter/job.rb
recruiter-1.1.2 app/models/recruiter/job.rb
recruiter-1.1.1 app/models/recruiter/job.rb
recruiter-1.1.0 app/models/recruiter/job.rb
recruiter-1.0.0 app/models/recruiter/job.rb
recruiter-0.1.5 app/models/recruiter/job.rb