mirror of
https://github.com/internetee/registry.git
synced 2025-05-18 18:29:40 +02:00
108963480-validation_for_contact
This commit is contained in:
parent
1be64ef96f
commit
76e2152cce
1 changed files with 12 additions and 0 deletions
|
@ -30,6 +30,7 @@ class Contact < ActiveRecord::Base
|
|||
length: { maximum: 100, message: :too_long_contact_code }
|
||||
validate :ident_valid_format?
|
||||
validate :uniq_statuses?
|
||||
validate :validate_html
|
||||
|
||||
after_initialize do
|
||||
self.statuses = [] if statuses.nil?
|
||||
|
@ -221,6 +222,17 @@ class Contact < ActiveRecord::Base
|
|||
end
|
||||
end
|
||||
|
||||
def validate_html
|
||||
self.class.columns.each do |column|
|
||||
next unless column.type == :string
|
||||
|
||||
c_name = column.name
|
||||
val = read_atribute(c_name)
|
||||
errors.add(c_name, :invalid) if val.include?('<') || val.include?('>') || val.include?('%3C') || val.include?('%3E')
|
||||
return
|
||||
end
|
||||
end
|
||||
|
||||
def uniq_statuses?
|
||||
return true unless statuses.detect { |s| statuses.count(s) > 1 }
|
||||
errors.add(:statuses, :not_uniq)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue