/**
  * {@inheritdoc}
  */
 public function getViewData(DocumentIterator $result, ViewData $data)
 {
     /** @var $data RangeAwareViewData */
     $data->setMinBounds(new \DateTime(date(\DateTime::ISO8601, $result->getAggregations()['date_range_agg']->getValue()['min'] / 1000)));
     $data->setMaxBounds(new \DateTime(date(\DateTime::ISO8601, $result->getAggregations()['date_range_agg']->getValue()['max'] / 1000)));
     return $data;
 }
Example #2
0
 /**
  * {@inheritdoc}
  */
 public function getViewData(DocumentIterator $result, ViewData $data)
 {
     /** @var $data ViewData\RangeAwareViewData */
     $data->setMinBounds($result->getAggregations()['range_agg']->getValue()['min']);
     $data->setMaxBounds($result->getAggregations()['range_agg']->getValue()['max']);
     return $data;
 }
Example #3
0
 /**
  * @param string   $key
  * @param ViewData $data
  *
  * @return array
  */
 protected function getOptionUrlParameters($key, ViewData $data)
 {
     $parameters = $data->getResetUrlParameters();
     $parameters[$this->getRequestField()] = $key;
     return $parameters;
 }
 /**
  * {@inheritdoc}
  */
 protected function isChoiceActive($key, ViewData $data)
 {
     return $data->getState()->isActive() && in_array($key, $data->getState()->getValue());
 }
 /**
  * Returns whether choice with the specified key is active.
  *
  * @param string   $key
  * @param ViewData $data
  *
  * @return bool
  */
 protected function isChoiceActive($key, ViewData $data)
 {
     return $data->getState()->isActive() && $data->getState()->getValue() == $key;
 }
Example #6
0
 /**
  * {@inheritdoc}
  */
 public function getViewData(DocumentIterator $result, ViewData $data)
 {
     /** @var ViewData\PagerAwareViewData $data */
     $data->setPager(new PagerService(new CountAdapter($result->getTotalCount()), array_filter(['page' => $data->getState()->getValue(), 'limit' => $this->getCountPerPage(), 'max_pages' => $this->getMaxPages()])));
     return $data;
 }
 /**
  * Creates view data for each filter.
  *
  * @param DocumentIterator $result
  * @param SearchRequest    $request
  *
  * @return ViewData[]
  */
 protected function getFiltersViewData(DocumentIterator $result, SearchRequest $request)
 {
     $out = [];
     /** @var FilterInterface[] $filters */
     $filters = $this->container->all();
     foreach ($filters as $name => $filter) {
         if ($filter instanceof ViewDataFactoryInterface) {
             $viewData = $filter->createViewData();
         } else {
             $viewData = new ViewData();
         }
         $viewData->setName($name);
         $viewData->setUrlParameters($this->composeUrlParameters($request, $filter));
         $viewData->setState($request->get($name));
         $viewData->setTags($filter->getTags());
         $viewData->setResetUrlParameters($this->composeUrlParameters($request, $filter, [$name]));
         $out[$name] = $filter->getViewData($result, $viewData);
     }
     return $out;
 }