Add min_private_message_title_length site setting so private messages can have short titles

This commit is contained in:
Neil Lalonde
2013-06-04 17:58:25 -04:00
parent 89ef726bb3
commit 2465c9c724
9 changed files with 131 additions and 9 deletions

View File

@ -0,0 +1,16 @@
class TopicTitleLengthValidator < ActiveModel::EachValidator
def initialize(options)
@topic_title_validator = ActiveModel::Validations::LengthValidator.new({attributes: :title, in: SiteSetting.topic_title_length, allow_blank: true})
@private_message_title_validator = ActiveModel::Validations::LengthValidator.new({attributes: :title, in: SiteSetting.private_message_title_length, allow_blank: true})
super
end
def validate_each(record, attribute, value)
if record.private_message?
@private_message_title_validator.validate_each(record, attribute, value)
else
@topic_title_validator.validate_each(record, attribute, value)
end
end
end