From f9ae568b8f10fd4f3c5f7bf3b1231fa59e15ef7b Mon Sep 17 00:00:00 2001 From: rulingcom Date: Fri, 5 Jun 2026 16:22:57 +0800 Subject: [PATCH] Adjust logic --- app/models/event_news.rb | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/app/models/event_news.rb b/app/models/event_news.rb index b9c3e33..218cad7 100644 --- a/app/models/event_news.rb +++ b/app/models/event_news.rb @@ -359,12 +359,16 @@ class EventNews def calculate_is_event_expired setting = EventNewsSetting.first - if setting && setting.expired_event_to_bottom && event_end_date.present? && event_end_date >= Time.now - self.is_top = true - self.top_end_date = event_end_date - elsif setting && setting.expired_event_to_bottom && event_end_date.present? && event_end_date < Time.now - self.is_top = false - self.top_end_date = nil + if setting && setting.expired_event_to_bottom + if self.new_record? + self.is_top = true + self.top_end_date = event_end_date if event_end_date.present? + elsif event_end_date.present? + self.is_top = true + self.top_end_date = event_end_date + elsif event_end_date.blank? && self.top_end_date.present? + self.top_end_date = nil + end end end