FIX: Actually error when topic timer time is in the past (#11434)

This commit is contained in:
Mark VanLandingham
2020-12-08 11:13:45 -06:00
committed by GitHub
parent b824af02d4
commit 9f786306bd
4 changed files with 21 additions and 6 deletions

View File

@ -1339,10 +1339,9 @@ class Topic < ActiveRecord::Base
topic_timer.execute_at = num_hours.hours.from_now if num_hours > 0
else
timestamp = utc.parse(time)
raise Discourse::InvalidParameters unless timestamp
raise Discourse::InvalidParameters unless timestamp && timestamp > utc.now
# a timestamp in client's time zone, like "2015-5-27 12:00"
topic_timer.execute_at = timestamp
topic_timer.errors.add(:execute_at, :invalid) if timestamp < utc.now
end
end