2016-09-08 10:25:33 -05:00
|
|
|
# frozen_string_literal: true
|
2016-08-22 11:49:02 -05:00
|
|
|
class InputOptionsPresenceValidator < ActiveModel::EachValidator
|
|
|
|
def validate_each(record, attribute, value)
|
|
|
|
return true unless record.input_type =~ /radio|check/i
|
2016-09-08 10:39:26 -05:00
|
|
|
return true if value.present? && value.count.positive?
|
2016-08-22 11:49:02 -05:00
|
|
|
|
|
|
|
record.errors[attribute] << (options[:message] ||
|
|
|
|
"You must provide answer options for the selected input type.")
|
|
|
|
|
|
|
|
false
|
|
|
|
end
|
|
|
|
end
|