utils = $utils ;
}
public function index(Request $request) : JsonResponse
{
$term = $request->get('term') ;
$context = $request->get('context') ;
$data = [
'boost' => 'population',
] ;
if(strlen($term) == 5 && is_numeric($term)) {
$data['codePostal'] = $term ;
}
else {
$data['nom'] = $term;
}
$result = array_merge(
json_decode($this->utils->callCitiesApi('get', 'communes', array_merge($data, ['codeRegion' => 27]))),
json_decode($this->utils->callCitiesApi('get', 'communes', array_merge($data, ['codeRegion' => 44])))
);
$return = [] ;
foreach($result as $city) {
$codesPostaux = $city->codesPostaux ;
$return[] = [
'label' => ''.$city->nom.' '.$codesPostaux[0].'',
'city' => $city->nom,
'value' => $city->code
] ;
}
if($context == 'frontend') {
$return = [
'items' => $return
] ;
}
return new JsonResponse($return) ;
}
}