Module: PostItemExcerpt

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



4
5
6
# File 'app/serializers/post_item_excerpt.rb', line 4

def self.included(base)
  base.attributes(:excerpt, :truncated)
end

Instance Method Details

#cookedObject



8
9
10
# File 'app/serializers/post_item_excerpt.rb', line 8

def cooked
  @cooked ||= object.cooked || PrettyText.cook(object.raw)
end

#excerptObject



12
13
14
15
# File 'app/serializers/post_item_excerpt.rb', line 12

def excerpt
  return nil unless cooked
  @excerpt ||= PrettyText.excerpt(cooked, 300, keep_emoji_images: true)
end

#include_truncated?Boolean

Returns:

  • (Boolean)


21
22
23
# File 'app/serializers/post_item_excerpt.rb', line 21

def include_truncated?
  cooked.length > 300
end

#truncatedObject



17
18
19
# File 'app/serializers/post_item_excerpt.rb', line 17

def truncated
  true
end