64 lines
1.6 KiB
PHP
64 lines
1.6 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Admin;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Http\Requests\Admin\FlightStoreRequest;
|
|
use App\Models\Flight;
|
|
|
|
class FlightController extends Controller
|
|
{
|
|
public function index()
|
|
{
|
|
$flights = Flight::latest()->paginate(4);
|
|
|
|
return view('admin.flights.index',compact('flights'));
|
|
}
|
|
public function create()
|
|
{
|
|
return view('admin.flights.create');
|
|
}
|
|
public function store(FlightStoreRequest $request)
|
|
{
|
|
$data = $request->validated();
|
|
|
|
$data['type'] = (int) $data['type'];
|
|
|
|
if ($request->hasFile('image')) {
|
|
$data['image'] = $request->file('image')->store('flights', 'public');
|
|
}
|
|
|
|
Flight::create($data);
|
|
|
|
return redirect()->route('admin.flights.index')
|
|
->with('success', 'پرواز با موفقیت ثبت شد');
|
|
}
|
|
|
|
public function edit(Flight $flight)
|
|
{
|
|
return view('admin.flights.edit',compact('flight'));
|
|
|
|
}
|
|
public function update(FlightStoreRequest $request, Flight $flight)
|
|
{
|
|
$data = $request->validated();
|
|
|
|
$data['type'] = (int) $data['type'];
|
|
|
|
if ($request->hasFile('image')) {
|
|
$data['image'] = $request->file('image')->store('flights', 'public');
|
|
}
|
|
|
|
$flight->update($data);
|
|
|
|
return redirect()->route('admin.flights.index')
|
|
->with('success', 'پرواز با موفقیت ویرایش شد');
|
|
}
|
|
public function destroy(Flight $flight)
|
|
{
|
|
$flight->delete();
|
|
return back()->with('پرواز با موفقیت حذف شد.');
|
|
|
|
}
|
|
}
|