# frozen_string_literal: true class SearchRankingWeightsValidator def initialize(opts = {}) @opts = opts end WEIGHT_REGEXP = "1\.0|0\.[0-9]+" WEIGHTS_REGEXP = /{(?#{WEIGHT_REGEXP}),(?#{WEIGHT_REGEXP}),(?#{WEIGHT_REGEXP}),(?#{WEIGHT_REGEXP})}/ def valid_value?(value) return true if value.blank? value.match(WEIGHTS_REGEXP) end def error_message I18n.t("site_settings.errors.invalid_search_ranking_weights") end end