Class: Effective::Post

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

Instance Method Summary collapse

Instance Method Details

#approved?Boolean

Returns:

  • (Boolean)


51
52
53
# File 'app/models/effective/post.rb', line 51

def approved?
  draft == false
end

#bodyObject



55
56
57
# File 'app/models/effective/post.rb', line 55

def body
  region(:body).content
end

#body=(input) ⇒ Object



59
60
61
# File 'app/models/effective/post.rb', line 59

def body=(input)
  region(:body).content = input
end

#send_post_submitted_to_admin!Object



72
73
74
# File 'app/models/effective/post.rb', line 72

def 
  send_email(:post_submitted_to_admin, to_param)
end

#time_to_read_in_seconds(reading_speed = 3.333) ⇒ Object

3.333 words/second is the default reading speed.



68
69
70
# File 'app/models/effective/post.rb', line 68

def time_to_read_in_seconds(reading_speed = 3.333)
  (regions.to_a.sum { |region| (region.content || '').scan(/\w+/).size } / reading_speed).seconds
end

#to_paramObject



63
64
65
# File 'app/models/effective/post.rb', line 63

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

#to_sObject



47
48
49
# File 'app/models/effective/post.rb', line 47

def to_s
  title.presence || 'New Post'
end