/** * @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')); }
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; }
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; }