add logo to meetup events api

This commit is contained in:
fsociety
2024-11-14 22:57:13 +01:00
parent c1ebd9244a
commit ab9d0b30b2

View File

@@ -69,7 +69,8 @@ Route::middleware([])
]) ])
->orderByDesc('id') ->orderByDesc('id')
->get() ->get()
->map(fn($item) => [ ->map(fn($item)
=> [
'id' => $item->id, 'id' => $item->id,
'name' => $item->name, 'name' => $item->name,
'link' => strtok($item->value, "?"), 'link' => strtok($item->value, "?"),
@@ -85,9 +86,13 @@ Route::middleware([])
'media', 'media',
]) ])
->get() ->get()
->map(fn($meetup) => [ ->map(fn($meetup)
=> [
'name' => $meetup->name, 'name' => $meetup->name,
'portalLink' => url()->route('meetup.landing', ['country' => $meetup->city->country, 'meetup' => $meetup]), 'portalLink' => url()->route(
'meetup.landing',
['country' => $meetup->city->country, 'meetup' => $meetup],
),
'url' => $meetup->telegram_link ?? $meetup->webpage, 'url' => $meetup->telegram_link ?? $meetup->webpage,
'top' => $meetup->github_data['top'] ?? null, 'top' => $meetup->github_data['top'] ?? null,
'left' => $meetup->github_data['left'] ?? null, 'left' => $meetup->github_data['left'] ?? null,
@@ -112,21 +117,32 @@ Route::middleware([])
} }
$events = \App\Models\MeetupEvent::query() $events = \App\Models\MeetupEvent::query()
->with([ ->with([
'meetup.city.country' 'meetup.city.country',
'meetup.media',
]) ])
->when($date, fn($query) => $query ->when(
->where('start', '>=', $date) $date,
->where('start', '<=', $date->copy()->endOfMonth()) fn($query)
=> $query
->where('start', '>=', $date)
->where('start', '<=', $date->copy()->endOfMonth()),
) )
->get(); ->get();
return $events->map(fn($event) => [ return $events->map(fn($event)
=> [
'start' => $event->start->format('Y-m-d H:i'), 'start' => $event->start->format('Y-m-d H:i'),
'location' => $event->location, 'location' => $event->location,
'description' => $event->description, 'description' => $event->description,
'link' => $event->link, 'link' => $event->link,
'meetup.name' => $event->meetup->name, 'meetup.name' => $event->meetup->name,
'meetup.portalLink' => url()->route('meetup.landing', ['country' => $event->meetup->city->country, 'meetup' => $event->meetup]), 'meetup.portalLink' => url()->route(
'meetup.landing',
[
'country' => $event->meetup->city->country,
'meetup' => $event->meetup,
],
),
'meetup.url' => $event->meetup->telegram_link ?? $event->meetup->webpage, 'meetup.url' => $event->meetup->telegram_link ?? $event->meetup->webpage,
'meetup.country' => str($event->meetup->city->country->code)->upper(), 'meetup.country' => str($event->meetup->city->country->code)->upper(),
'meetup.city' => $event->meetup->city->name, 'meetup.city' => $event->meetup->city->name,
@@ -137,46 +153,57 @@ Route::middleware([])
'meetup.simplex' => $event->meetup->simplex, 'meetup.simplex' => $event->meetup->simplex,
'meetup.signal' => $event->meetup->signal, 'meetup.signal' => $event->meetup->signal,
'meetup.nostr' => $event->meetup->nostr, 'meetup.nostr' => $event->meetup->nostr,
] 'meetup.logo' => $event->meetup->getFirstMediaUrl('logo'),
],
); );
}); });
Route::get('btc-map-communities', function () { Route::get('btc-map-communities', function () {
return response()->json(\App\Models\Meetup::query() return response()->json(
->with([ \App\Models\Meetup::query()
'media', ->with([
'city.country', 'media',
]) 'city.country',
->where('community', '=', 'einundzwanzig') ])
->when(app()->environment('production'), ->where('community', '=', 'einundzwanzig')
fn($query) => $query->whereHas('city', ->when(
fn($query) => $query app()->environment('production'),
->whereNotNull('cities.simplified_geojson') fn($query)
->whereNotNull('cities.population') => $query->whereHas(
->whereNotNull('cities.population_date') 'city',
)) fn($query)
->get() => $query
->map(fn($meetup) => [ ->whereNotNull('cities.simplified_geojson')
'id' => $meetup->slug, ->whereNotNull('cities.population')
'tags' => [ ->whereNotNull('cities.population_date'),
'type' => 'community', ),
'name' => $meetup->name, )
'continent' => 'europe', ->get()
'icon:square' => $meetup->logoSquare, ->map(fn($meetup)
//'contact:email' => null, => [
'contact:twitter' => $meetup->twitter_username ? 'https://twitter.com/' . $meetup->twitter_username : null, 'id' => $meetup->slug,
'contact:website' => $meetup->webpage, 'tags' => [
'contact:telegram' => $meetup->telegram_link, 'type' => 'community',
'contact:nostr' => $meetup->nostr, 'name' => $meetup->name,
//'tips:lightning_address' => null, 'continent' => 'europe',
'organization' => 'einundzwanzig', 'icon:square' => $meetup->logoSquare,
'language' => $meetup->city->country->language_codes[0] ?? 'de', //'contact:email' => null,
'geo_json' => $meetup->city->simplified_geojson, 'contact:twitter' => $meetup->twitter_username ? 'https://twitter.com/' . $meetup->twitter_username : null,
'population' => $meetup->city->population, 'contact:website' => $meetup->webpage,
'population:date' => $meetup->city->population_date, 'contact:telegram' => $meetup->telegram_link,
], 'contact:nostr' => $meetup->nostr,
]) //'tips:lightning_address' => null,
->toArray(), 200, 'organization' => 'einundzwanzig',
['Content-Type' => 'application/json;charset=UTF-8', 'Charset' => 'utf-8'], JSON_UNESCAPED_SLASHES); 'language' => $meetup->city->country->language_codes[0] ?? 'de',
'geo_json' => $meetup->city->simplified_geojson,
'population' => $meetup->city->population,
'population:date' => $meetup->city->population_date,
],
])
->toArray(),
200,
['Content-Type' => 'application/json;charset=UTF-8', 'Charset' => 'utf-8'],
JSON_UNESCAPED_SLASHES,
);
}); });
}); });
@@ -210,12 +237,15 @@ Route::get('/lnurl-auth-callback', function (Request $request) {
'wallet_id' => null, 'wallet_id' => null,
], ],
]); ]);
$user->ownedTeams() $user
->save(Team::forceCreate([ ->ownedTeams()
'user_id' => $user->id, ->save(
'name' => $fakeName . "'s Team", Team::forceCreate([
'personal_team' => true, 'user_id' => $user->id,
])); 'name' => $fakeName . "'s Team",
'personal_team' => true,
]),
);
} }
// check if $k1 is in the database, if not, add it // check if $k1 is in the database, if not, add it
$loginKey = LoginKey::where('k1', $request->k1) $loginKey = LoginKey::where('k1', $request->k1)