mirror of
https://github.com/zammad/zammad
synced 2026-05-24 09:48:36 +00:00
16 lines
521 B
Ruby
16 lines
521 B
Ruby
# Copyright (C) 2012-2026 Zammad Foundation, https://zammad-foundation.org/
|
|
|
|
class Setting::Validator < ActiveModel::Validator
|
|
def validate(record)
|
|
return if record.preferences.blank? || record.preferences[:validations].blank?
|
|
|
|
failed_validation = record.preferences[:validations]
|
|
.lazy
|
|
.map { |klass| klass.constantize.new(record).run }
|
|
.find { |elem| !elem[:success] }
|
|
|
|
return if !failed_validation
|
|
|
|
record.errors.add(:base, :invalid, message: failed_validation[:message])
|
|
end
|
|
end
|