Blame view
app/Http/Controllers/Admin/AreaController.php
4.96 KB
232c33a82 Все формы обратно... |
1 2 3 4 5 |
<?php namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; |
7c115bff1 Админка - объекты... |
6 |
use App\Http\Requests\AreasRequest; |
232c33a82 Все формы обратно... |
7 |
use App\Models\Area; |
3575d19ae Админка новости и... |
8 |
use App\Models\foto_area; |
232c33a82 Все формы обратно... |
9 |
use Illuminate\Http\Request; |
3575d19ae Админка новости и... |
10 |
use Illuminate\Support\Facades\Session; |
7c115bff1 Админка - объекты... |
11 |
use Illuminate\Support\Facades\Storage; |
3575d19ae Админка новости и... |
12 |
use Illuminate\Support\Facades\Validator; |
232c33a82 Все формы обратно... |
13 14 15 16 17 18 19 20 21 22 |
class AreaController extends Controller { /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { |
3575d19ae Админка новости и... |
23 |
$areas = Area::query()->orderByDesc('created_at')->orderByDesc('id')->paginate(5); |
232c33a82 Все формы обратно... |
24 25 26 27 28 |
return view('admin.area.index', compact('areas')); } /** * Show the form for creating a new resource. |
7c115bff1 Админка - объекты... |
29 |
* Форма создания объекта |
232c33a82 Все формы обратно... |
30 31 32 33 |
* @return \Illuminate\Http\Response */ public function create() { |
7c115bff1 Админка - объекты... |
34 |
return view('admin.area.create'); |
232c33a82 Все формы обратно... |
35 |
} |
3575d19ae Админка новости и... |
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
/** * Форма дополнительных картинок объекта */ public function area_category(Area $area) { return view('admin.area.add_img', compact('area')); } /** * Сохранение дополнительных картинок объекта */ public function area_add_img(Area $area, Request $request) { $rules = [ 'foto' => 'required|min:3|max:255', ]; $messages = [ 'required' => 'Укажите картинку!', ]; $validator = Validator::make($request->all(), $rules, $messages); if ($validator->fails()) { return redirect()->route('admin.img.area', ['area' => $area->id]) ->withErrors($validator); } else { //$area->fotos()->create($request); $foto_area = new foto_area(); $foto_area->area_id = $area->id; $foto_area->foto = $request->file('foto')->store('areas', 'public'); $foto_area->save(); //$area->fotos()->save($foto_area); return redirect()->route('admin.area.edit', ['area' => $area->id]); } } /** * Удаление дополнительных картинок объектов недвижимости * @param $id * @param Area $area */ public function area_del_img($id, Area $area) { if (!empty($id)) { $id = (int)$id; $item = foto_area::find($id); Storage::delete($item->foto); $item->delete(); Session::flash('message','Картинка была успешно удалена!'); |
232c33a82 Все формы обратно... |
82 |
|
3575d19ae Админка новости и... |
83 |
return redirect()->route('admin.area.edit', ['area' => $area->id]); |
232c33a82 Все формы обратно... |
84 |
|
3575d19ae Админка новости и... |
85 86 87 |
} else { return redirect()->route('admin.area.edit', ['area' => $area->id]); } |
232c33a82 Все формы обратно... |
88 89 90 91 92 93 94 95 |
} /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ |
7c115bff1 Админка - объекты... |
96 |
public function store(AreasRequest $request) |
232c33a82 Все формы обратно... |
97 |
{ |
7c115bff1 Админка - объекты... |
98 99 100 101 102 103 104 105 106 |
$params = $request->all(); //unset($params['foto_main']); if ($request->has('foto_main')) { $params['foto_main'] = $request->file('foto_main')->store('areas', 'public'); } Area::create($params); return redirect()->route('admin.area.index'); |
232c33a82 Все формы обратно... |
107 108 109 110 |
} /** * Display the specified resource. |
7c115bff1 Админка - объекты... |
111 |
* Просмотр объекта недвижимости |
232c33a82 Все формы обратно... |
112 113 114 115 116 |
* @param \App\Models\Area $area * @return \Illuminate\Http\Response */ public function show(Area $area) { |
7c115bff1 Админка - объекты... |
117 |
return view('admin.area.view', compact('area')); |
232c33a82 Все формы обратно... |
118 119 120 121 |
} /** * Show the form for editing the specified resource. |
7c115bff1 Админка - объекты... |
122 |
* Форма редактирования объекта |
232c33a82 Все формы обратно... |
123 124 125 126 127 |
* @param \App\Models\Area $area * @return \Illuminate\Http\Response */ public function edit(Area $area) { |
7c115bff1 Админка - объекты... |
128 |
return view('admin.area.edit', compact('area')); |
232c33a82 Все формы обратно... |
129 130 131 132 |
} /** * Update the specified resource in storage. |
7c115bff1 Админка - объекты... |
133 |
* Обновление-сохранение объекта недвижимости |
232c33a82 Все формы обратно... |
134 135 136 137 |
* @param \Illuminate\Http\Request $request * @param \App\Models\Area $area * @return \Illuminate\Http\Response */ |
7c115bff1 Админка - объекты... |
138 |
public function update(AreasRequest $request, Area $area) |
232c33a82 Все формы обратно... |
139 |
{ |
7c115bff1 Админка - объекты... |
140 141 142 143 144 145 146 147 148 |
$params = $request->all(); unset($params['foto_main']); if ($request->has('foto_main')) { Storage::delete($area->foto_main); $params['foto_main'] = $request->file('foto_main')->store('areas', 'public'); } $area->update($params); return redirect()->route('admin.area.index'); |
232c33a82 Все формы обратно... |
149 150 151 152 |
} /** * Remove the specified resource from storage. |
7c115bff1 Админка - объекты... |
153 |
* Удаление объекта недвижимости |
232c33a82 Все формы обратно... |
154 155 156 157 158 |
* @param \App\Models\Area $area * @return \Illuminate\Http\Response */ public function destroy(Area $area) { |
7c115bff1 Админка - объекты... |
159 160 161 162 163 |
if (!empty($area->foto_main)) { Storage::delete($area->foto_main); } $area->delete(); return redirect()->route('admin.area.index'); |
232c33a82 Все формы обратно... |
164 165 |
} } |