Framework  3.9
MinimumAgeValidator Class Reference

AgeRangeValidator can be used with DateOfBirth fields. More...

+ Inheritance diagram for MinimumAgeValidator:
+ Collaboration diagram for MinimumAgeValidator:

Public Member Functions

 MinimumAgeValidator ($field, $title, $min, $message=null)
 
 validate ()
 
- Public Member Functions inherited from AbstractValidator
 AbstractValidator ($field, $title)
 
 writeClient ()
 

Public Attributes

 $min = 0
 
 $message
 
- Public Attributes inherited from AbstractValidator
 $field
 
 $title
 

Detailed Description

AgeRangeValidator can be used with DateOfBirth fields.

Author
andy

Definition at line 389 of file validation.inc.

Member Function Documentation

◆ MinimumAgeValidator()

MinimumAgeValidator::MinimumAgeValidator (   $field,
  $title,
  $min,
  $message = null 
)

Definition at line 394 of file validation.inc.

395  {
397  $this->min = $min;
398  $this->message = $message;
399 
400  }
AbstractValidator($field, $title)
Definition: validation.inc:53

◆ validate()

MinimumAgeValidator::validate ( )

Reimplemented from AbstractValidator.

Definition at line 402 of file validation.inc.

403  {
404  $mm = checkNumeric($_POST["{$this->field}_mm"]);
405  $dd = checkNumeric($_POST["{$this->field}_dd"]);
406  $yy = checkNumeric($_POST["{$this->field}_yy"]);
407 
408  if (!$mm && !$dd && !$yy)
409  {
410  return "";
411  }
412 
413  if (!$mm || !$dd || !$yy)
414  {
415  return "Incomplete date of birth - $mm/$dd/$yy";
416  }
417 
418  $dob = new DateTime("$mm/$dd/$yy");
419  $today = new DateTime();
420 
421  $age = $dob->diff($today);
422  if ($age->y < $this->min)
423  {
424  return $this->message;
425  }
426 
427  return "";
428  }
checkNumeric($p)
Security helper function.
Definition: functions.inc:630

Member Data Documentation

◆ $message

MinimumAgeValidator::$message

Definition at line 392 of file validation.inc.

◆ $min

MinimumAgeValidator::$min = 0

Definition at line 391 of file validation.inc.


The documentation for this class was generated from the following file: