Ejemplo n.º 1
0
 /**
  * Get formatted calendar task due events
  *
  * @access public
  * @param  QueryBuilder       $queryBuilder
  * @param  string             $start
  * @param  string             $end
  * @return array
  */
 public function getTaskDateDueEvents(QueryBuilder $queryBuilder, $start, $end)
 {
     $formatter = new TaskCalendarFormatter($this->container);
     $formatter->setFullDay();
     $formatter->setColumns('date_due');
     return $queryBuilder->withFilter(new TaskDueDateRangeFilter(array($start, $end)))->format($formatter);
 }
Ejemplo n.º 2
0
 /**
  * Get formatted calendar task due events
  *
  * @access public
  * @param  QueryBuilder  $queryBuilder
  * @param  iCalendar     $calendar
  * @param  string        $start
  * @param  string        $end
  */
 public function addTaskDateDueEvents(QueryBuilder $queryBuilder, iCalendar $calendar, $start, $end)
 {
     $queryBuilder->withFilter(new TaskDueDateRangeFilter(array($start, $end)));
     $formatter = new TaskICalFormatter($this->container);
     $formatter->setColumns('date_due');
     $formatter->setCalendar($calendar);
     $formatter->withQuery($queryBuilder->getQuery());
     $formatter->addFullDayEvents();
 }
Ejemplo n.º 3
0
 /**
  * Apply filters to the query
  *
  * @access protected
  * @param  FilterInterface $filter
  * @param  array           $values
  */
 protected function applyFilters(FilterInterface $filter, array $values)
 {
     $len = count($values);
     if ($len > 1) {
         $criteria = new OrCriteria();
         $criteria->withQuery($this->query);
         foreach ($values as $value) {
             $currentFilter = clone $filter;
             $criteria->withFilter($currentFilter->withValue($value));
         }
         $this->queryBuilder->withCriteria($criteria);
     } elseif ($len === 1) {
         $this->queryBuilder->withFilter($filter->withValue($values[0]));
     }
 }