Sha256: 769aa396da54120e3563795f76fdc6883dcc11b08727ebf07ac70e12168b081e

Contents?: true

Size: 891 Bytes

Versions: 1

Compression:

Stored size: 891 Bytes

Contents

module ActiveRecord
  module Validations #:nodoc:
    module ClassMethods
      local_part_illegal_chars = '[^@<>\(\)\[\]:;\\\s\.]'
      EMAIL_REGEXP = /^[^\.](#{local_part_illegal_chars}|\.#{local_part_illegal_chars})+@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i
      
      # Takes a list of attributes that should be validated to be valid
      # formatted email addresses. Takes all other options that
      # validates_format_of does.
      #
      #   class Member < ActiveRecord::Base
      #     validates_email :email, :message => "is not a valid email address"
      #   end
      #
      # Note that the example message is the default.
      def validates_email(*attr_names)
        options = { :with => EMAIL_REGEXP, :message => "is not a valid email address" }
        options.merge!(attr_names.extract_options!)
        validates_format_of attr_names, options
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
Fingertips-validates_email-san-0.1.0 lib/validates_email_san.rb