From 8fc1289172142fdca17d8cfcabc0901928b4d668 Mon Sep 17 00:00:00 2001 From: Neil Lalonde Date: Tue, 17 Apr 2018 15:08:13 -0400 Subject: [PATCH] move topic excerpt code to one method to DRY it up and for extensibility --- app/models/post.rb | 4 ++++ lib/post_creator.rb | 2 +- lib/post_revisor.rb | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/app/models/post.rb b/app/models/post.rb index 7d8da4859e2..4eb309c7c62 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -406,6 +406,10 @@ class Post < ActiveRecord::Base Post.excerpt(cooked, maxlength, options) end + def excerpt_for_topic + Post.excerpt(cooked, 220, strip_links: true) + end + def is_first_post? post_number.blank? ? topic.try(:highest_post_number) == 0 : diff --git a/lib/post_creator.rb b/lib/post_creator.rb index 522dc288da4..1773adecfab 100644 --- a/lib/post_creator.rb +++ b/lib/post_creator.rb @@ -397,7 +397,7 @@ class PostCreator attrs[:last_posted_at] = @post.created_at attrs[:last_post_user_id] = @post.user_id attrs[:word_count] = (@topic.word_count || 0) + @post.word_count - attrs[:excerpt] = @post.excerpt(220, strip_links: true) if new_topic? + attrs[:excerpt] = @post.excerpt_for_topic if new_topic? attrs[:bumped_at] = @post.created_at unless @post.no_bump attrs[:updated_at] = 'now()' @topic.update_columns(attrs) diff --git a/lib/post_revisor.rb b/lib/post_revisor.rb index 3a1a55d3f12..efa718787d5 100644 --- a/lib/post_revisor.rb +++ b/lib/post_revisor.rb @@ -533,7 +533,7 @@ class PostRevisor end def update_topic_excerpt - excerpt = @post.excerpt(220, strip_links: true) + excerpt = @post.excerpt_for_topic @topic.update_column(:excerpt, excerpt) if @topic.archetype == "banner" ApplicationController.banner_json_cache.clear