Class: Effective::Classified

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/effective/classified.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#current_userObject

Returns the value of attribute current_user.



7
8
9
# File 'app/models/effective/classified.rb', line 7

def current_user
  @current_user
end

#importingObject

Returns the value of attribute importing.



8
9
10
# File 'app/models/effective/classified.rb', line 8

def importing
  @importing
end

Instance Method Details

#approve!Object



184
185
186
# File 'app/models/effective/classified.rb', line 184

def approve!
  approved!
end

#for_jsonObject



157
158
159
# File 'app/models/effective/classified.rb', line 157

def for_json
  { id: id, title: title, body: body.to_s, created_at: created_at, updated_at: updated_at }
end

#published?Boolean

Returns:

  • (Boolean)


165
166
167
168
169
170
171
# File 'app/models/effective/classified.rb', line 165

def published?
  return false unless approved?
  return false if archived?
  return false if start_on.blank? || (Time.zone.now < start_on)
  return false if end_on.present? && (Time.zone.now >= end_on)
  true
end

#purchasable_nameObject



161
162
163
# File 'app/models/effective/classified.rb', line 161

def purchasable_name
  "#{category} - #{title}"
end

#submit!Object



173
174
175
176
177
178
179
180
181
182
# File 'app/models/effective/classified.rb', line 173

def submit!
  
  approve! if EffectiveClassifieds.auto_approve

  after_commit do
    EffectiveClassifieds.send_email(:classified_submitted, self)
  end

  true
end

#to_sObject



153
154
155
# File 'app/models/effective/classified.rb', line 153

def to_s
  title.presence || model_name.human
end

#unapprove!Object



188
189
190
# File 'app/models/effective/classified.rb', line 188

def unapprove!
  unapproved!
end