diff --git a/config/locales/en.yml b/config/locales/en.yml new file mode 100644 index 0000000..60ab820 --- /dev/null +++ b/config/locales/en.yml @@ -0,0 +1,4 @@ +en: + errors: + messages: + invalid_url: "is an invalid URL" diff --git a/lib/valid_url.rb b/lib/valid_url.rb index e99c93a..f1091c1 100644 --- a/lib/valid_url.rb +++ b/lib/valid_url.rb @@ -1,4 +1,5 @@ # -*- encoding : utf-8 -*- +require "valid_url/engine" require "addressable/uri" require "resolv" @@ -19,7 +20,7 @@ def validate_each(record, attribute, value) end unless !invalid && valid_scheme?(uri.scheme) && valid_host?(uri.host) && valid_path?(uri.path) - record.errors[attribute] << (options[:message] || "is an invalid URL") + record.errors.add attribute, :invalid_url, options end end diff --git a/lib/valid_url/engine.rb b/lib/valid_url/engine.rb new file mode 100644 index 0000000..d6e46f9 --- /dev/null +++ b/lib/valid_url/engine.rb @@ -0,0 +1,7 @@ +module ValidUrl + class Engine < ::Rails::Engine + config.before_initialize do + config.i18n.load_path += Dir["#{config.root}/config/locales/**/*.yml"] + end + end +end