You are here

public function date_sql_handler::part_is_valid in Date 7.3

Same name and namespace in other branches
  1. 5.2 date_api_sql.inc \date_sql_handler::part_is_valid()
  2. 6.2 date_api_sql.inc \date_sql_handler::part_is_valid()
  3. 6 date_api_sql.inc \date_sql_handler::part_is_valid()
  4. 7 date_api/date_api_sql.inc \date_sql_handler::part_is_valid()
  5. 7.2 date_api/date_api_sql.inc \date_sql_handler::part_is_valid()

A function to test the validity of various date parts.

File

date_api/date_api_sql.inc, line 909
SQL helper for Date API.

Class

date_sql_handler
A class to manipulate date SQL.

Code

public function part_is_valid($value, $type) {
  if (!preg_match('/^[0-9]*$/', $value)) {
    return FALSE;
  }
  $value = intval($value);
  if ($value <= 0) {
    return FALSE;
  }
  switch ($type) {
    case 'year':
      if ($value < DATE_MIN_YEAR) {
        return FALSE;
      }
      break;
    case 'month':
      if ($value < 0 || $value > 12) {
        return FALSE;
      }
      break;
    case 'day':
      if ($value < 0 || $value > 31) {
        return FALSE;
      }
      break;
    case 'week':
      if ($value < 0 || $value > 53) {
        return FALSE;
      }
      break;
  }
  return TRUE;
}