/**
  * returns the current date if no $date string is given (needed for mocking only)
  *
  * @param string $date
  * @param boolean $usertimezone
  */
 protected function _getDate($date = NULL, $usertimezone = FALSE)
 {
     if (self::$testDate == NULL) {
         return parent::_getDate($date, $usertimezone);
     }
     return self::$testDate;
 }
Ejemplo n.º 2
0
 /**
  * calculates the date filter values
  *
  * @param string $_operator
  * @param string $_value
  * @param string $_dateFormat
  * @return array|string date value
  */
 protected function _getDateValues($_operator, $_value)
 {
     if ($_operator === 'within' || $_operator === 'inweek') {
         // get beginning / end date and add 00:00:00 / 23:59:59
         date_default_timezone_set(array_key_exists('timezone', $this->_options) && !empty($this->_options['timezone']) ? $this->_options['timezone'] : Tinebase_Core::get(Tinebase_Core::USERTIMEZONE));
         $value = parent::_getDateValues($_operator, $_value);
         $value[0] .= ' 00:00:00';
         $value[1] .= ' 23:59:59';
         date_default_timezone_set('UTC');
         // convert to utc
         $value[0] = $this->_convertStringToUTC($value[0]);
         $value[1] = $this->_convertStringToUTC($value[1]);
     } else {
         $value = $_value instanceof DateTime ? $_value->toString(Tinebase_Record_Abstract::ISO8601LONG) : $_value;
     }
     return $value;
 }