MaintenanceController.php 1.73 KB
Newer Older
1
2
<?php

Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
3
namespace App\Http\Controllers\Admin;
4

Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
5
use App\Http\Controllers\Controller;
6
7
8
9
10
11
12
13
use App\Models\Maintenance;
use Illuminate\Http\Request;

class MaintenanceController extends Controller
{
    public function index()
    {
        $maintenances = Maintenance::all();
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
14
        return view('maintenances.all-maintenances', compact('maintenances'));
15
16
    }

Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
17
18
19
20
21
22
    public function create()
    {
        return view('maintenances.add-maintenance');
    }


23
24
25
26
27
28
29
30
    public function store(Request $request)
    {
        $validated = $request->validate([
            'title' => 'required|string|max:255',
            'description' => 'required|string',
        ]);

        $maintenance = Maintenance::create($validated);
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
31
32
33
34
35
36

        if ($request->expectsJson()) {
            return response()->json($maintenance, 201);
        }

        return redirect()->route('maintenances.index')->with('success', 'Maintenance created successfully');
37
38
    }

Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
39
    public function edit($id)
40
41
    {
        $maintenance = Maintenance::findOrFail($id);
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
42
        return view('maintenances.add-maintenance', compact('maintenance'));
43
44
45
46
47
48
49
50
51
52
53
54
    }

    public function update(Request $request, $id)
    {
        $maintenance = Maintenance::findOrFail($id);

        $validated = $request->validate([
            'title' => 'sometimes|string|max:255',
            'description' => 'sometimes|string',
        ]);

        $maintenance->update($validated);
55
        return redirect()->route('maintenances.index')->with('success', 'Maintanence updated successfully.');
56
57
58
59
    }

    public function destroy($id)
    {
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
60
61
        $maintenance = Maintenance::findOrFail($id);
        $maintenance->delete();
62
        return redirect()->route('maintenances.index')->with('success', 'Maintanence deleted successfully.');
63
64
    }
}