/
ghx
/
TicketFlow
Обзор
Документация
Войти
/
ghx
/
TicketFlow
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
app/Http/Controllers/HomeController.php
65 строк
2 KB
osnov
.
26 июн 2026, 11:56
26 июн 2026, 11:56
dc2de34
Код
Авторство
О чём код?
<?php namespace App\Http\Controllers; use App\Models\Movie; use App\Models\News; use App\Models\Session; use Illuminate\Http\Request; class HomeController extends Controller { public function index() { $premiers = Movie::where('is_active', true)->latest()->take(5)->get(); $sessions = Session::with(['movie', 'hall']) ->whereDate('start_time', today()) ->orderBy('start_time') ->get(); $newMovies = Movie::where('is_active', true) ->where('release_date', '>=', now()->subMonth()) ->get(); $comingSoon = Movie::where('is_active', true) ->where('release_date', '>', now()) ->get(); $news = News::published()->latest()->take(4)->get(); return view('home', compact( 'premiers', 'sessions', 'newMovies', 'comingSoon', 'news' )); } public function search(Request $request) { $q = trim($request->input('q', '')); if ($q === '') { return view('search', [ 'movies' => collect(), 'q' => $q, 'emptyQuery' => true, ]); } $movies = Movie::query() ->where('is_active', true) ->where(function ($query) use ($q) { $query->where('title', 'like', "%{$q}%") ->orWhere('description', 'like', "%{$q}%") ->orWhereHas('genres', fn ($genreQuery) => $genreQuery->where('name', 'like', "%{$q}%")); }) ->with('genres') ->orderBy('title') ->get(); return view('search', compact('movies', 'q')); } }