Update PlacesController and routes to include italy municipality info routes
This commit is contained in:
parent
6b7ed390a8
commit
687d7613a0
|
@ -13,7 +13,7 @@ class PlacesController extends Controller
|
|||
/**
|
||||
* Search place using OSM APIs.
|
||||
*/
|
||||
public function search(Request $request)
|
||||
public function reverseSearch(Request $request)
|
||||
{
|
||||
User::where('id', $request->user()->id)->update(['last_access' => now()]);
|
||||
|
||||
|
@ -30,6 +30,35 @@ class PlacesController extends Controller
|
|||
return response()->json($result);
|
||||
}
|
||||
|
||||
public function italyListRegions()
|
||||
{
|
||||
$seconds = 60 * 60 * 24 * 365 * 10; // 10 years
|
||||
$result = Cache::remember('italy_regions', $seconds, function () {
|
||||
return Http::get('https://axqvoqvbfjpaamphztgd.functions.supabase.co/regioni')->object();
|
||||
});
|
||||
return response()->json($result);
|
||||
}
|
||||
|
||||
public function italyListProvincesByRegion(Request $request, string $region_name)
|
||||
{
|
||||
$region_name = strtolower($region_name);
|
||||
$seconds = 60 * 60 * 24 * 365; // 1 year
|
||||
$result = Cache::remember('italy_provinces_'.$region_name, $seconds, function () use ($region_name) {
|
||||
return Http::get('https://axqvoqvbfjpaamphztgd.functions.supabase.co/province/'.$region_name)->object();
|
||||
});
|
||||
return response()->json($result);
|
||||
}
|
||||
|
||||
public function italyListMunicipalitiesByProvince(Request $request, string $province_name)
|
||||
{
|
||||
$province_name = strtolower($province_name);
|
||||
$seconds = 60 * 60 * 24 * 365; // 1 year
|
||||
$result = Cache::remember('italy_municipalities_'.$province_name, $seconds, function () use ($province_name) {
|
||||
return Http::get('https://axqvoqvbfjpaamphztgd.functions.supabase.co/comuni/provincia/'.$province_name)->object();
|
||||
});
|
||||
return response()->json($result);
|
||||
}
|
||||
|
||||
public function show(Request $request, $id)
|
||||
{
|
||||
User::where('id', $request->user()->id)->update(['last_access' => now()]);
|
||||
|
|
|
@ -77,7 +77,12 @@ Route::middleware('auth:sanctum')->group( function () {
|
|||
|
||||
Route::get('/service_types', [ServiceTypeController::class, 'index']);
|
||||
Route::post('/service_types', [ServiceTypeController::class, 'create']);
|
||||
Route::get('/places/search', [PlacesController::class, 'search']);
|
||||
|
||||
Route::get('/places/reverse/search', [PlacesController::class, 'reverseSearch']);
|
||||
Route::get('/places/italy/regions', [PlacesController::class, 'italyListRegions']);
|
||||
Route::get('/places/italy/provinces/{region_name}', [PlacesController::class, 'italyListProvincesByRegion']);
|
||||
Route::get('/places/italy/municipalities/{province_name}', [PlacesController::class, 'italyListMunicipalitiesByProvince']);
|
||||
|
||||
Route::get('/places/{id}', [PlacesController::class, 'show']);
|
||||
|
||||
Route::get('/trainings', [TrainingController::class, 'index'])->middleware(ETag::class);
|
||||
|
|
|
@ -101,7 +101,7 @@ export class MapPickerComponent implements OnInit {
|
|||
});
|
||||
return;
|
||||
}
|
||||
this.api.get("places/search", {
|
||||
this.api.get("places/reverse/search", {
|
||||
q: this.placeName
|
||||
}).then((places) => {
|
||||
this.isPlaceSearchResultsOpen = true;
|
||||
|
|
Loading…
Reference in New Issue