🌍 Add dynamic country parameter to settings routes and enhance data relationships

- Updated settings route links to include `country` parameter dynamically resolved from session.
- Improved relational queries by adding `city.country` to meetups map and `coursesEvents.course` to lecturers data.
This commit is contained in:
HolgerHatGarKeineNode
2025-11-23 20:50:59 +01:00
parent 6f7ee806ae
commit 572dbf1f31
6 changed files with 15 additions and 15 deletions

View File

@@ -23,14 +23,17 @@ class extends Component {
public function with(): array
{
return [
'lecturers' => Lecturer::with([
'createdBy', 'coursesEvents' => fn($query) => $query->where('from', '>=', now())->orderBy('from', 'asc')
])
'lecturers' => Lecturer::query()
->with([
'createdBy',
'coursesEvents' => fn($query) => $query->where('from', '>=', now())->orderBy('from', 'asc'),
'coursesEvents.course',
])
->withExists([
'coursesEvents as has_future_events' => fn($query) => $query->where('from', '>=', now())
'coursesEvents as has_future_events' => fn($query) => $query->where('from', '>=', now()),
])
->withCount([
'coursesEvents as future_events_count' => fn($query) => $query->where('from', '>=', now())
'coursesEvents as future_events_count' => fn($query) => $query->where('from', '>=', now()),
])
->when($this->search, fn($query)
=> $query

View File

@@ -44,7 +44,7 @@ class extends Component {
'meetups.simplex',
'meetups.signal',
])
->with(['city:id,country_id,longitude,latitude'])
->with(['city:id,country_id,longitude,latitude', 'city.country'])
->get()
->map(function ($meetup) {
$meetup->load(['meetupEvents' => function($query) {