Completed
Push — master ( fe7c63...ca87be )
by Adam
06:15
created

AdminController::getRouteName()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 0
dl 0
loc 3
ccs 2
cts 2
cp 1
crap 1
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace App\Http\Controllers;
4
5
use App\Http\Requests\InitialStateRequest;
6
use Illuminate\Support\Facades\App;
7
use Illuminate\Support\Facades\DB;
8
9
class AdminController extends Controller
10
{
11 1
    public function getRouteName()
12
    {
13 1
        return 'admin';
14
    }
15
16 1
    public function index()
17
    {
18 1
        $title = trans('general.administration_panel');
19
20
        $viewData = [
21 1
            'routeName'     => $this->getRouteName(),
22 1
            'title'         => $title,
23
        ];
24
25 1
        return view('admin', $viewData);
26
    }
27
28
    public function showInitialStateForm()
29
    {
30
        $title = trans('navigation.generate_initial_state');
31
32
        $fiels = $this->getInitialStateFields();
33
34
        $viewData = [
35
            'dataset'     => null,
36
            'fields'      => $fiels,
37
            'title'       => $title,
38
            'submitRoute' => route($this->getRouteName().'.postgenerate'),
39
            'routeName'   => $this->getRouteName(),
40
        ];
41
42
        return view('addedit', $viewData);
43
    }
44
45
    public function postInitialState(InitialStateRequest $request)
46
    {
47
        factory(\App\Models\Room::class, (int) $request->input('rooms'))->create();
48
49
        if (App::isLocale('pl')) {
50
            factory(\App\Models\Guest::class, (int) $request->input('guests'))->states('polish')->create();
51
        } else {
52
            factory(\App\Models\Guest::class, (int) $request->input('guests'))->create();
53
        }
54
55
        return redirect()->route($this->getRouteName().'.index')
56
            ->with([
57
                'message'     => trans('general.saved'),
58
                'alert-class' => 'alert-success',
59
            ]);
60
    }
61
62 1
    public function deleteAllRooms()
63
    {
64 1
        DB::table('reservations')->delete();
65 1
        DB::table('rooms')->delete();
66
67 1
        $data = ['class' => 'alert-success', 'message' => trans('general.deleted')];
68
69 1
        return response()->json($data);
70
    }
71
72 1
    public function deleteAllGuests()
73
    {
74 1
        DB::table('reservations')->delete();
75 1
        DB::table('guests')->delete();
76
77 1
        $data = ['class' => 'alert-success', 'message' => trans('general.deleted')];
78
79 1
        return response()->json($data);
80
    }
81
82 1
    public function deleteAllReservations()
83
    {
84 1
        DB::table('reservations')->delete();
85
86 1
        $data = ['class' => 'alert-success', 'message' => trans('general.deleted')];
87
88 1
        return response()->json($data);
89
    }
90
91
    public function getInitialStateFields()
92
    {
93
        return [
94
            [
95
                'id'    => 'rooms',
96
                'title' => trans('general.rooms'),
97
                'value' => function () {
98
                    return 1;
99
                },
100
                'type'     => 'number',
101
                'optional' => [
102
                    'required' => 'required',
103
                    'min'      => '1',
104
                ],
105
            ],
106
            [
107
                'id'    => 'guests',
108
                'title' => trans('general.guests'),
109
                'value' => function () {
110
                    return 1;
111
                },
112
                'type'     => 'number',
113
                'optional' => [
114
                    'required' => 'required',
115
                    'min'      => '1',
116
                ],
117
            ],
118
        ];
119
    }
120
}
121