mirror of
https://github.com/Einundzwanzig-Podcast/einundzwanzig-portal.git
synced 2025-12-11 06:46:47 +00:00
add landing pages for meetups
This commit is contained in:
@@ -18,18 +18,19 @@ class BookCaseTable extends Component
|
||||
public function render()
|
||||
{
|
||||
return view('livewire.book-case.book-case-table', [
|
||||
'markers' => BookCase::when($this->table['filters']['byids'] ?? false,
|
||||
fn($query) => $query->whereIn('id', str($this->table['filters']['byids'] ?? '')->explode(',')))
|
||||
->get()
|
||||
->map(fn($b) => [
|
||||
'title' => $b->title,
|
||||
'lat' => $b->latitude,
|
||||
'lng' => $b->longitude,
|
||||
'url' => 'https://gonoware.com',
|
||||
'icon' => asset('img/btc-logo-6219386_1280.png'),
|
||||
'icon_size' => [42, 42],
|
||||
])
|
||||
->toArray(),
|
||||
'markers' => !isset($this->table['filters']['byids']) ? []
|
||||
: BookCase::query()
|
||||
->whereIn('id', str($this->table['filters']['byids'] ?? '')->explode(','))
|
||||
->get()
|
||||
->map(fn($b) => [
|
||||
'title' => $b->title,
|
||||
'lat' => $b->latitude,
|
||||
'lng' => $b->longitude,
|
||||
'url' => 'https://gonoware.com',
|
||||
'icon' => asset('img/btc-logo-6219386_1280.png'),
|
||||
'icon_size' => [42, 42],
|
||||
])
|
||||
->toArray(),
|
||||
'bookCases' => BookCase::get(),
|
||||
'countries' => Country::query()
|
||||
->select(['code', 'name'])
|
||||
|
||||
46
app/Http/Livewire/Meetup/LandingPage.php
Normal file
46
app/Http/Livewire/Meetup/LandingPage.php
Normal file
@@ -0,0 +1,46 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Livewire\Meetup;
|
||||
|
||||
use App\Models\Country;
|
||||
use App\Models\Meetup;
|
||||
use App\Models\MeetupEvent;
|
||||
use Livewire\Component;
|
||||
use RalphJSmit\Laravel\SEO\Support\SEOData;
|
||||
|
||||
class LandingPage extends Component
|
||||
{
|
||||
public Meetup $meetup;
|
||||
public Country $country;
|
||||
|
||||
public ?int $year = null;
|
||||
|
||||
protected $queryString = ['year'];
|
||||
|
||||
public function render()
|
||||
{
|
||||
return view('livewire.meetup.landing-page', [
|
||||
'events' => MeetupEvent::query()
|
||||
->with([
|
||||
'meetup.city.country',
|
||||
])
|
||||
->where('meetup_events.meetup_id', $this->meetup->id)
|
||||
->where('meetup_events.start', '>=', now())
|
||||
->get()
|
||||
->map(fn($event) => [
|
||||
'id' => $event->id,
|
||||
'startDate' => $event->start,
|
||||
'endDate' => $event->start->addHours(1),
|
||||
'location' => $event->location,
|
||||
'description' => $event->description,
|
||||
]),
|
||||
])
|
||||
->layout('layouts.guest', [
|
||||
'SEOData' => new SEOData(
|
||||
title: $this->meetup->name,
|
||||
description: __('Bitcoiner Meetups are a great way to meet other Bitcoiners in your area. You can learn from each other, share ideas, and have fun!'),
|
||||
image: asset($this->meetup->getFirstMediaUrl('logo')),
|
||||
)
|
||||
]);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user