mirror of
https://github.com/discourse/discourse.git
synced 2025-09-07 12:02:53 +08:00
Add min_private_message_title_length site setting so private messages can have short titles
This commit is contained in:
parent
89ef726bb3
commit
2465c9c724
9 changed files with 131 additions and 9 deletions
16
lib/validators/topic_title_length_validator.rb
Normal file
16
lib/validators/topic_title_length_validator.rb
Normal 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
|
Loading…
Add table
Add a link
Reference in a new issue