Merge branch '536-resq-api-have-data-null-instead-of-empty-object-in-response' into 'master'

Add support for geofencing in location_support api call #536

Closes #536

See merge request jankstudio/resq!624
This commit is contained in:
Kendrick Chan 2021-02-10 09:07:48 +00:00
commit a021efea72
2 changed files with 13 additions and 8 deletions

View file

@ -1954,7 +1954,7 @@ class APIController extends Controller implements LoggedController
return $res->getReturnResponse(); return $res->getReturnResponse();
} }
public function locationSupport(Request $req) public function locationSupport(Request $req, GeofenceTracker $geo)
{ {
$required_params = [ $required_params = [
'longitude', 'longitude',
@ -1965,11 +1965,16 @@ class APIController extends Controller implements LoggedController
if ($res->isError()) if ($res->isError())
return $res->getReturnResponse(); return $res->getReturnResponse();
$long = $req->query->get('longitude');
$lat = $req->query->get('latitude');
// geofence
$is_covered = $geo->isCovered($long, $lat);
$data = [ $data = [
'longitude' => $req->query->get('longitude'), 'longitude' => $long,
'latitude' => $req->query->get('latitude'), 'latitude' => $lat,
'supported' => true, 'supported' => $is_covered,
]; ];
$res->setData($data); $res->setData($data);

View file

@ -14,7 +14,7 @@ class APIResult
{ {
$this->err_flag = false; $this->err_flag = false;
$this->err_message = ''; $this->err_message = '';
$this->data = []; $this->data = null;
} }
public function setError($flag = true) public function setError($flag = true)
@ -39,7 +39,7 @@ class APIResult
return $this->err_message; return $this->err_message;
} }
public function setData($data) public function setData($data = null)
{ {
$this->data = $data; $this->data = $data;
return $this; return $this;
@ -57,8 +57,8 @@ class APIResult
else else
$status = 'success'; $status = 'success';
if (count($this->data) == 0) if ($this->data == null || count($this->data) == 0)
$this->data = new \stdClass(); $this->data = null;
$return_data = [ $return_data = [
'error' => [ 'error' => [