             validate =
                 status: null
                 message: null
-                issuer: 'number'
+                issuer: 'phone'
+            # validates United States phone number patterns
             re = new RegExp '^\\(?\\d{3}[\\)\\-\\.]?\\d{3}[\\-\\.]?\\d{4}(?:[xX]\\d+)?$','gi'
 
             evaluate = (result, value) ->
-                message = 'please enter a valid phone number'
-                if result and value is result
-                    status = 'success'
-                    @removeNotice 'danger', message
-                else
-                    status = 'danger'
-                    @issueNotice.call that, status, message
-                status
-
-            if value?
-                result = $.trim re.exec value
-                status = evaluate result, value
+                if result and value is result
+                    validate.status = 'success'
+                else
+                    validate.status = 'danger'
+                    validate.message = 'please enter a valid phone number'
+                validate.status
+
+            if value?
+                result = $.trim re.exec value
+                validate.status = evaluate result, value
 
             validate
 

                validate = self.validateURL value
                validateField.call @, value, validate

            # body.on 'keyup', ':input.drm-valid-phone', self.validatePhone
            # body.on 'keyup', ':input.drm-valid-email', self.validateEmail
            # body.on 'keyup', ':input.drm-valid-full-name', self.validateFullName
            # body.on 'keyup', ':input.drm-valid-alpha', self.validateAlpha
            # body.on 'keyup', ':input.drm-valid-alphanum', self.validateAlphaNum
            # body.on 'keyup', ':input.drm-valid-alphadash', self.validateAlphaNumDash
            # body.on 'keyup', ':input.drm-valid-alpha-num-underscore', self.validateAlphaNumUnderscore
            # body.on 'keyup', ':input.drm-valid-no-spaces', self.validateNoSpaces
            # body.on 'keyup', ':input.drm-valid-no-tags', self.validateNoTags
            # body.on 'keyup', ':input[data-max-value]:not([data-min-value])', self.validateMaxValue
            # body.on 'keyup', ':input[data-min-value]:not([data-max-value])', self.validateMinValue
            # body.on 'keyup', ':input[data-max-length]:not([data-min-length])', self.validateMaxLength
            # body.on 'keyup', ':input[data-min-length]:not([data-max-length])', self.validateMinLength
            # body.on 'keyup', ':input[data-min-value][data-max-value]', self.validateBetweenValue
            # body.on 'keyup', ':input[data-min-length][data-max-length]', self.validateBetweenLength
            body.on 'keyup', ':input', self.trackLength

            body.on 'keyup', '[required]', -> 

            value = $.trim that.val()
            length = value.length

            evaluate = (min, length) ->                
                if length < min
                    validate.status = 'danger'
                    validate.message = "please enter at least #{min} characters"
                else
                    validate.status = 'success'
                validate.status

            if value?
                validate.status = evaluate min, length

            validate

