Files
eatvio-infra/app/Http/Controllers/RecipeController.php
2023-12-29 10:59:20 +03:00

43 lines
934 B
PHP

<?php
namespace App\Http\Controllers;
use App\Models\Recipe;
use Illuminate\Contracts\View\View;
use Illuminate\Contracts\View\Factory as ViewFactory;
class RecipeController extends Controller
{
public function index(): View|ViewFactory
{
return view('recipe/index');
}
public function create(): View|ViewFactory
{
return view('recipe/edit_form');
}
public function show(Recipe $recipe): View|ViewFactory
{
$data = [
'author' => $recipe->author()->first(),
'tags' => $recipe->tags()->get(),
'recipe' => $recipe,
];
$expiresAt = now()->addHours(24);
views($recipe)
->cooldown($expiresAt)
->record();
return view('recipe/show', $data);
}
public function edit(Recipe $recipe): View|ViewFactory
{
return view('recipe/edit_form', ['recipe' => $recipe]);
}
}