Implement a click-to-view spoiler system

This commit is contained in:
blackle 2017-01-12 23:54:26 -05:00
parent 1761d3f9c3
commit bf0f6eb62d
18 changed files with 192 additions and 77 deletions

View file

@ -0,0 +1,15 @@
class StatusLengthValidator < ActiveModel::Validator
def validate(status)
if status.local? && !status.reblog?
combinedText = status.text
if (status.spoiler? && status.spoiler_text.present?)
combinedText = status.spoiler_text + "\n" + status.text
end
maxChars = 500
unless combinedText.length <= maxChars
status.errors[:text] << "is too long (maximum is #{maxChars})"
end
end
end
end