File manager - Edit - /var/www/html/portal/app/Http/Controllers/TurisAngra/VisiteAngra/AtrativosController.php
Back
<?php namespace App\Http\Controllers\TurisAngra\VisiteAngra; use App\Http\Controllers\Controller; use App\Models\TurisAngra\VisiteAngra\Atrativo; use App\Http\Requests\TurisAngra\VisiteAngra\AtrativoRequest; use Illuminate\Http\Request; use App\Http\Services\TurisAngra\VisiteAngra\AtrativoService; use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Http\RedirectResponse; use Illuminate\View\View; class AtrativosController extends Controller { private $permissao = "GERENCIADOR_VISITE_ANGRA"; public function index(Request $request): View|LengthAwarePaginator { $response = $this->checkPermissao($this->permissao, "visualizar"); if ($response instanceof RedirectResponse) { return $response; } $AtrativoService = new AtrativoService(); $atrativos = $AtrativoService->index($request); return view("admin.visiteAngra.atrativos.index", compact(['atrativos'])); } public function create(): View|RedirectResponse { $response = $this->checkPermissao($this->permissao, "adicionar"); if ($response instanceof RedirectResponse) { return $response; } $AtrativoService = new AtrativoService(); $pontos = $AtrativoService->getPonto(); $corredores = $AtrativoService->getCorredores(); $categorias = $AtrativoService->getCategoriaWithTipo("ATRATIVO"); return view("admin.visiteAngra.atrativos.create", compact(['pontos', 'corredores', 'categorias'])); } public function store(AtrativoRequest $request): RedirectResponse { $response = $this->checkPermissao($this->permissao, "adicionar"); if ($response instanceof RedirectResponse) { return $response; } $array_atrativo = [ "corredor_id" => $request->corredor_id, "ponto_id" => $request->ponto_id, "atrativo" => $request->atrativo, "slug" => $request->slug, "subtitulo" => $request->subtitulo, "latitude" => $request->latitude, "longitude" => $request->longitude, "categorias" => $request->categorias, "descricao" => $request->descricao, "status" => $request->status, "foto" => $this->handleFileUpload($request, 'foto', 'arquivos'), ]; $AtrativoService = new AtrativoService(); return $AtrativoService->store($request, $array_atrativo); } public function edit(Atrativo $atrativo): View|RedirectResponse { $response = $this->checkPermissao($this->permissao, "editar"); if ($response instanceof RedirectResponse) { return $response; } $AtrativoService = new AtrativoService(); $pontos = $AtrativoService->getPonto(); $corredores = $AtrativoService->getCorredores(); $categorias = $AtrativoService->getCategoriaWithTipo("ATRATIVO"); return view("admin.visiteAngra.atrativos.edit", compact(['atrativo', 'pontos', 'corredores', 'categorias'])); } public function update(AtrativoRequest $request, Atrativo $atrativo): RedirectResponse { $response = $this->checkPermissao($this->permissao, "editar"); if ($response instanceof RedirectResponse) { return $response; } if (!$atrativo) { return redirect("/admin/visite-angra/atrativos") ->with("error", __("Atrativo não encontrado.")); } $array_atrativo = [ "corredor_id" => $request->corredor_id, "ponto_id" => $request->ponto_id, "atrativo" => $request->atrativo, "slug" => $request->slug, "subtitulo" => $request->subtitulo, "latitude" => $request->latitude, "longitude" => $request->longitude, "categorias" => $request->categorias, "descricao" => $request->descricao, "status" => $request->status, "foto" => $this->handleFileUpload($request, 'foto', 'arquivos', $atrativo->foto), ]; $AtrativoService = new AtrativoService(); return $AtrativoService->update($request, $atrativo, $array_atrativo); } public function destroy(Request $request, Atrativo $atrativo): RedirectResponse { $response = $this->checkPermissao($this->permissao, "excluir"); if ($response instanceof RedirectResponse) { return $response; } $this->handleFileDestroyArquivo($atrativo->foto); $AtrativoService = new AtrativoService(); return $AtrativoService->destroy($request, $atrativo); } public function status(Request $request, Atrativo $atrativo): RedirectResponse { $response = $this->checkPermissao($this->permissao, "editar"); if ($response instanceof RedirectResponse) { return $response; } $AtrativoService = new AtrativoService(); return $AtrativoService->status($request, $atrativo); } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.28 | Generation time: 0.02 |
proxy
|
phpinfo
|
Settings