time() public static method

public static time ( $value )
 /**
  * checkDatetimeType
  *
  * @param array $question question
  * @param string $answer answer value
  * @return array error message
  */
 public function checkDatetimeType($question, $answer)
 {
     $errors = array();
     if ($question['question_type_option'] == QuestionnairesComponent::TYPE_OPTION_DATE) {
         if (!Validation::date($answer, 'ymd')) {
             $errors[] = sprintf(__d('questionnaires', 'Please enter a valid date in YY-MM-DD format.'));
         }
     } elseif ($question['question_type_option'] == QuestionnairesComponent::TYPE_OPTION_TIME) {
         if (!Validation::time($answer)) {
             $errors[] = sprintf(__d('questionnaires', 'Please enter the time.'));
         }
     } elseif ($question['question_type_option'] == QuestionnairesComponent::TYPE_OPTION_DATE_TIME) {
         if (!Validation::datetime($answer, 'ymd')) {
             $errors[] = sprintf(__d('questionnaires', 'Please enter a valid date and time.'));
         }
     }
     return $errors;
 }
 /**
  * _validateDatetime 日付・時間の正当性
  *
  * @param object &$model use model
  * @param int $questionTypeOption 時間・日付オプション
  * @param string $answer 登録データ
  * @return bool
  */
 protected function _validateDatetime(&$model, $questionTypeOption, $answer)
 {
     if ($questionTypeOption == RegistrationsComponent::TYPE_OPTION_DATE) {
         if (!Validation::date($answer, 'ymd')) {
             $model->validationErrors['answer_value'][] = __d('registrations', 'Please enter a valid date in YY-MM-DD format.');
             return false;
         }
     } elseif ($questionTypeOption == RegistrationsComponent::TYPE_OPTION_TIME) {
         if (!Validation::time($answer)) {
             $model->validationErrors['answer_value'][] = __d('registrations', 'Please enter the time.');
             return false;
         }
     } elseif ($questionTypeOption == RegistrationsComponent::TYPE_OPTION_DATE_TIME) {
         if (!Validation::datetime($answer, 'ymd')) {
             $model->validationErrors['answer_value'][] = __d('registrations', 'Please enter a valid date and time.');
             return false;
         }
     } else {
         $model->validationErrors['answer_value'][] = __d('net_commons', 'Invalid request.');
         return false;
     }
     return true;
 }
Ejemplo n.º 3
0
 /**
  * testTime method
  *
  * @return void
  */
 public function testTime()
 {
     $this->assertTrue(Validation::time('00:00'));
     $this->assertTrue(Validation::time('23:59'));
     $this->assertFalse(Validation::time('24:00'));
     $this->assertTrue(Validation::time('12:00'));
     $this->assertTrue(Validation::time('12:01'));
     $this->assertTrue(Validation::time('12:01am'));
     $this->assertTrue(Validation::time('12:01pm'));
     $this->assertTrue(Validation::time('1pm'));
     $this->assertTrue(Validation::time('1 pm'));
     $this->assertTrue(Validation::time('1 PM'));
     $this->assertTrue(Validation::time('01:00'));
     $this->assertFalse(Validation::time('1:00'));
     $this->assertTrue(Validation::time('1:00pm'));
     $this->assertFalse(Validation::time('13:00pm'));
     $this->assertFalse(Validation::time('9:00'));
 }
Ejemplo n.º 4
0
 /**
  * Validates a datetime value by acting as a decorator for native
  * Validation::date() and Validation::time() methods.
  *
  * @param   $check    array   field_name => value
  * @param   $options  array   Options for this rule
  * @return  boolean
  * @access  public
  */
 public function datetime($check, $options)
 {
     $check = array_shift(array_values($check));
     $datetime = strtotime($check);
     if ($datetime !== false) {
         return Validation::date(date('Y-m-d', $datetime), 'ymd') && Validation::time(date('H:i', $datetime));
     }
     return false;
 }
Ejemplo n.º 5
0
 /**
  * @testdox time should return true to 12 hours format without leading zero
  */
 public function testValidTimeWith12Hours2()
 {
     $value = '6:00pm';
     $this->assertTrue(Validation::time($value));
 }
Ejemplo n.º 6
0
 /**
  * @param options
  * - timeFormat (defaults to 'hms')
  * - allowEmpty
  * - after/before (fieldName to validate against)
  * - min/max (defaults to >= 1 - at least 1 minute apart)
  * 2011-03-02 ms
  */
 public function validateTime($data, $options = array())
 {
     if (is_array($data)) {
         $value = array_shift($data);
     } else {
         $value = $data;
     }
     $dateTime = explode(' ', trim($value), 2);
     $value = array_pop($dateTime);
     if (Validation::time($value)) {
         # after/before?
         if (!empty($options['after']) && isset($this->data[$this->alias][$options['after']])) {
             if ($this->data[$this->alias][$options['after']] >= $value) {
                 return false;
             }
         }
         if (!empty($options['before']) && isset($this->data[$this->alias][$options['before']])) {
             if ($this->data[$this->alias][$options['before']] <= $value) {
                 return false;
             }
         }
         return true;
     }
     return false;
 }