From a5c0333a5d49ffaffd46653b87c46ba9d0352b34 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Wed, 23 Nov 2016 18:09:55 +0200 Subject: [PATCH] Add email validator #186 --- config/application.rb | 3 ++- lib/validators/email_validator.rb | 15 +++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 lib/validators/email_validator.rb diff --git a/config/application.rb b/config/application.rb index 730935b9a..109fa4d1b 100644 --- a/config/application.rb +++ b/config/application.rb @@ -23,7 +23,7 @@ module Registry # Set Time.zone default to the specified zone and make Active Record auto-convert to this zone. # Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC. - config.time_zone = ENV['time_zone'] || 'Tallinn' # NB! It should be defined, + config.time_zone = ENV['time_zone'] || 'Tallinn' # NB! It should be defined, # otherwise ActiveRecord usese other class internally. config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.yml').to_s] @@ -35,6 +35,7 @@ module Registry # Autoload all model subdirs config.autoload_paths += Dir[Rails.root.join('app', 'models', '**/')] config.autoload_paths << Rails.root.join('lib') + config.eager_load_paths << config.root.join('lib', 'validators') # Add the fonts path config.assets.paths << Rails.root.join('vendor', 'assets', 'fonts') diff --git a/lib/validators/email_validator.rb b/lib/validators/email_validator.rb new file mode 100644 index 000000000..60b1b3ce1 --- /dev/null +++ b/lib/validators/email_validator.rb @@ -0,0 +1,15 @@ +class EmailValidator + def self.regexp + Devise::email_regexp + end + + def initialize(email) + @email = email + end + + def valid? + email =~ self.class.regexp + end + + attr_reader :email +end