]> git.openstreetmap.org Git - rails.git/blob - app/validators/whitespace_validator.rb
Merge pull request #5932 from tomhughes/frozen-strings
[rails.git] / app / validators / whitespace_validator.rb
1 # frozen_string_literal: true
2
3 class WhitespaceValidator < ActiveModel::EachValidator
4   def validate_each(record, attribute, value)
5     record.errors.add(attribute, options[:message] || I18n.t("validations.leading_whitespace")) if !options.fetch(:leading, true) && /\A\s/.match?(value)
6     record.errors.add(attribute, options[:message] || I18n.t("validations.trailing_whitespace")) if !options.fetch(:trailing, true) && /\s\z/.match?(value)
7   end
8 end