53 lines
1.3 KiB
PHP
53 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Models\ORM\Place;
|
|
use Illuminate\Http\Request;
|
|
|
|
class PlacesController extends Controller
|
|
{
|
|
public function index()
|
|
{
|
|
$places = Place::paginate(10);
|
|
return view('places.index', compact('places'));
|
|
}
|
|
|
|
public function store(Request $request) {
|
|
$data = $request->validate([
|
|
'name' => 'required|string|max:255',
|
|
'lat' => 'required|numeric',
|
|
'lng' => 'required|numeric',
|
|
]);
|
|
|
|
Place::create($data);
|
|
|
|
return redirect()
|
|
->route('places.index')
|
|
->with('status', 'Локация создана!');
|
|
}
|
|
|
|
public function edit(Place $place) {
|
|
return view('places.edit', compact('place'));
|
|
}
|
|
|
|
public function update(Request $request, Place $place) {
|
|
$data = $request->validate([
|
|
'name' => 'required|string|max:255',
|
|
'lat' => 'required|numeric',
|
|
'lng' => 'required|numeric',
|
|
]);
|
|
$place->update($data);
|
|
return redirect()
|
|
->route('places.index')
|
|
->with('status', 'Обновлено!');
|
|
}
|
|
|
|
public function destroy(Place $place) {
|
|
$place->delete();
|
|
return redirect()
|
|
->route('places.index')
|
|
->with('status', 'Удалено!');
|
|
}
|
|
}
|