Пример #1
0
 /**
  * @group unit
  */
 public function testSetTimezone()
 {
     $agg = new DateHistogram('hist', 'created', '1h');
     $agg->setTimezone('-02:30');
     $expected = array('date_histogram' => array('field' => 'created', 'interval' => '1h', 'time_zone' => '-02:30'));
     $this->assertEquals($expected, $agg->toArray());
     $this->assertInstanceOf('Elastica\\Aggregation\\DateHistogram', $agg->setTimezone('-02:30'));
 }
Пример #2
0
 private function getDatedStatsQuery($journal)
 {
     $filter = new Term();
     $filter->setTerm('journalUsers.journal.id', $journal->getId());
     $filterQuery = new Query\Filtered();
     $filterQuery->setFilter($filter);
     $query = new Query($filterQuery);
     $dateHistogram = new DateHistogram('dateHistogram', 'created', 'month');
     $dateHistogram->setFormat("YYYY-MM-dd");
     $query->addAggregation($dateHistogram);
     $query->setSize(0);
     return $query;
 }
Пример #3
0
 private function getStatsQuery(Journal $journal)
 {
     $filter = new Term();
     $filter->setTerm('journal.id', $journal->getId());
     $filterQuery = new Filtered();
     $filterQuery->setFilter($filter);
     $query = new Query($filterQuery);
     $dateHistogram = new DateHistogram('dateHistogram', 'created', 'month');
     $dateHistogram->setFormat("YYYY-MM-dd");
     $query->addAggregation($dateHistogram);
     $genderAggregation = new Terms('language');
     $genderAggregation->setField('locale');
     $query->addAggregation($genderAggregation);
     $query->setSize(0);
     return $query;
 }