forked from La_Bureautique/zeg1jeux
51 lines
764 B
PHP
51 lines
764 B
PHP
|
<?php
|
||
|
|
||
|
require_once('DAO.class.php');
|
||
|
|
||
|
class CesiumPlus {
|
||
|
|
||
|
private $dao;
|
||
|
|
||
|
public function __construct () {
|
||
|
|
||
|
$this->dao = DAO::getInstance();
|
||
|
}
|
||
|
|
||
|
public function getNearbyUsers ($lat, $lon, $radius) {
|
||
|
|
||
|
$n = 15;
|
||
|
|
||
|
$queryParams = [
|
||
|
'size' => $n,
|
||
|
|
||
|
'query' => [
|
||
|
'bool' => [
|
||
|
'must' => [
|
||
|
[
|
||
|
'geo_distance' => [
|
||
|
|
||
|
"distance" => $radius . 'km',
|
||
|
"geoPoint"=> [
|
||
|
"lat" => $lat,
|
||
|
"lon" => $lon
|
||
|
]
|
||
|
]
|
||
|
]
|
||
|
]
|
||
|
]
|
||
|
],
|
||
|
|
||
|
"sort" => [
|
||
|
[ "time" => ["order" => "desc"] ],
|
||
|
"_score"
|
||
|
]
|
||
|
|
||
|
];
|
||
|
|
||
|
$json = $this->dao->fetchJson('/user/profile/_search?pretty', 'gchange', $queryParams);
|
||
|
$result = json_decode($json);
|
||
|
|
||
|
return $result->hits->hits;
|
||
|
}
|
||
|
}
|