From 3cc046d278fda7ec556de51784b12018f23ace78 Mon Sep 17 00:00:00 2001 From: multiple creatures Date: Wed, 19 Feb 2020 14:51:04 -0600 Subject: only process bangtags on `create`, add `process_bangtags?` & `process_bangtags!` methods to status model --- app/models/status.rb | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'app/models/status.rb') diff --git a/app/models/status.rb b/app/models/status.rb index 969cb0c16..15ad76944 100644 --- a/app/models/status.rb +++ b/app/models/status.rb @@ -395,6 +395,7 @@ class Status < ApplicationRecord around_create Mastodon::Snowflake::Callbacks before_create :set_locality + before_create :process_bangtags?, if: :local? before_validation :prepare_contents, if: :local? before_validation :set_reblog @@ -405,8 +406,6 @@ class Status < ApplicationRecord after_create :set_poll_id - before_save :process_bangtags?, if: :local? - after_save :update_sharekey, if: :local? after_save :update_origin, if: :local? after_save :process_bangtags, if: :local? @@ -714,9 +713,13 @@ class Status < ApplicationRecord @_process_bangtags |= text_changed? end + def process_bangtags! + Bangtags.new(self).process + end + def process_bangtags return unless @_process_bangtags - Bangtags.new(self).process + process_bangtags! end def update_sharekey -- cgit