Class: Lafcadio::EmailField

Inherits:
TextField show all
Defined in:
lib/lafcadio/objectField/EmailField.rb

Overview

EmailField takes a text value that is expected to be formatted as a single valid email address.

Instance Attribute Summary

Attributes inherited from TextField

#large, #size

Attributes inherited from ObjectField

#dbFieldName, #default, #defaultFieldName, #hideDisplay, #hideLabel, #name, #notNull, #notUniqueMsg, #objectType, #unique, #writeOnce

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from TextField

#valueForSQL

Methods inherited from ObjectField

#<=>, #bind_write?, #dbWillAutomaticallyWrite, #db_table_and_field_name, #englishName, #firstTime, instantiateFromXml, instantiateWithParameters, instantiationParameters, #nameForSQL, #prevValue, #processBeforeVerify, #valueForSQL, #valueFromSQL, valueType, #verifyUniqueness

Constructor Details

#initialize(objectType, name = "email", englishName = nil) ⇒ EmailField

Returns a new instance of EmailField.



13
14
15
# File 'lib/lafcadio/objectField/EmailField.rb', line 13

def initialize(objectType, name = "email", englishName = nil)
	super(objectType, name, englishName)
end

Class Method Details

.validAddress(address) ⇒ Object

Is address a valid email address?



9
10
11
# File 'lib/lafcadio/objectField/EmailField.rb', line 9

def EmailField.validAddress(address)
	address =~ /^[^ @]+@[^ \.]+\.[^ ,]+$/
end

Instance Method Details

#nullErrorMsgObject

:nodoc:



17
18
19
# File 'lib/lafcadio/objectField/EmailField.rb', line 17

def nullErrorMsg #:nodoc:
	"Please enter an email address."
end

#verify(value, pkId) ⇒ Object

:nodoc:



21
22
23
24
25
26
# File 'lib/lafcadio/objectField/EmailField.rb', line 21

def verify(value, pkId) #:nodoc:
	super(value, pkId)
	if !EmailField.validAddress(value)
		raise FieldValueError, "Please enter a valid email address.", caller
	end
end