Skip to content

Commit d576b53

Browse files
committed
✨ ajout de la section discussion sur l'accueil
1 parent d1e59ec commit d576b53

File tree

5 files changed

+66
-12
lines changed

5 files changed

+66
-12
lines changed

app/Http/Controllers/HomeController.php

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
namespace App\Http\Controllers;
44

55
use App\Models\Article;
6+
use App\Models\Discussion;
67
use App\Models\Thread;
78
use GuzzleHttp\Client;
89
use GuzzleHttp\Exception\GuzzleException;
@@ -32,15 +33,20 @@ public function index()
3233
->get();
3334
});
3435

36+
$latestDiscussions = Cache::remember('latestDiscussions', now()->addDay(), function () {
37+
return Discussion::query()
38+
->scopes('popular')
39+
->orderByViews()
40+
->limit(3)
41+
->get();
42+
});
43+
3544
seo()
3645
->description('Laravel Cameroun est le portail de la communauté de développeurs PHP & Laravel au Cameroun, On partage, on apprend, on découvre et on construit une grande communauté.')
3746
->twitterDescription('Laravel Cameroun est le portail de la communauté de développeurs PHP & Laravel au Cameroun, On partage, on apprend, on découvre et on construit une grande communauté.')
3847
->withUrl();
3948

40-
return view('home', [
41-
'latestArticles' => $latestArticles,
42-
'latestThreads' => $latestThreads,
43-
]);
49+
return view('home', compact('latestArticles', 'latestThreads', 'latestDiscussions'));
4450
}
4551

4652
public function slack(Request $request)

resources/views/components/sponsors.blade.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<h4 class="text-skin-inverted text-sm leading-5 font-semibold uppercase tracking-wide font-sans">Sponsors</h4>
33
<div class="mt-5 space-y-6">
44
<a href="https://cosna-afrique.com" class="flex items-center justify-end">
5-
<x-icon.cosna class="h-5 w-auto"/>
5+
<x-icon.cosna class="h-12 w-auto"/>
66
</a>
77
<a href="https://laravelshopper.io" class="flex items-center justify-end">
88
<img class="h-10 logo-white" src="{{ asset('/images/sponsors/shopper-logo.svg') }}" alt="Laravel Shopper">

resources/views/home.blade.php

Lines changed: 51 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -45,18 +45,18 @@
4545
</p>
4646
<div class="mt-8 grid grid-cols-2 gap-y-8 lg:grid-cols-3 lg:mt-12">
4747
<div class="col-span-2 flex justify-center lg:col-span-1">
48-
<a href="https://cosna-afrique.com" class="flex items-center">
48+
<a href="https://cosna-afrique.com" target="_blank" class="flex items-center">
4949
<x-icon.cosna class="h-14 w-auto"/>
5050
</a>
5151
</div>
5252
<div class="col-span-2 flex justify-center lg:col-span-1">
53-
<a href="https://laravelshopper.io" class="flex items-center">
53+
<a href="https://laravelshopper.io" target="_blank" class="flex items-center">
5454
<img class="h-12 logo-white" src="{{ asset('/images/sponsors/shopper-logo.svg') }}" alt="Laravel Shopper">
5555
<img class="h-12 logo-dark" src="{{ asset('/images/sponsors/shopper-logo-light.svg') }}" alt="Laravel Shopper">
5656
</a>
5757
</div>
5858
<div class="col-span-2 flex justify-center lg:col-span-1">
59-
<a href="https://gdg.community.dev/gdg-douala" class="flex items-center">
59+
<a href="https://gdg.community.dev/gdg-douala" target="_blank" class="flex items-center">
6060
<x-icon.gdg class="h-8 text-skin-inverted" />
6161
</a>
6262
</div>
@@ -67,7 +67,10 @@
6767
</div>
6868

6969
<div class="py-12 lg:py-20">
70-
<x-section-header title="Articles Populaires" content="Découvrez les articles les plus appréciés et partagés par les membres de la communauté" />
70+
<x-section-header
71+
title="Articles Populaires"
72+
content="Découvrez les articles les plus appréciés et partagés par les membres de la communauté"
73+
/>
7174
<div class="mt-8 grid gap-10 max-w-xl mx-auto lg:grid-rows-3 lg:grid-flow-col lg:grid-cols-2 lg:mt-10 lg:gap-x-8 lg:max-w-none">
7275
@foreach($latestArticles as $article)
7376
@if($loop->first)
@@ -92,8 +95,11 @@
9295

9396
@if($latestThreads->isNotEmpty())
9497
<div class="py-12 lg:py-20">
95-
<x-section-header title="On apprend aussi en aidant les autres" content="En rejoignant la communauté, vous pouvez consulter les dernières questions non résolues et apporter votre pierre à l’édifice." />
96-
<div class="mt-12 grid gap-10 lg:grid-cols-2 lg:gap-x-5 lg:gap-y-12 lg:mt-12">
98+
<x-section-header
99+
title="On apprend aussi en aidant les autres"
100+
content="En rejoignant la communauté, vous pouvez consulter les dernières questions non résolues et apporter votre pierre à l’édifice."
101+
/>
102+
<div class="mt-10 grid gap-10 lg:grid-cols-2 lg:gap-x-5 lg:gap-y-12 lg:mt-12">
97103
@foreach($latestThreads as $thread)
98104
<div>
99105
<div class="flex items-center font-sans text-skin-base">
@@ -132,6 +138,45 @@
132138
</div>
133139
</div>
134140
@endif
141+
142+
<div class="py-12 lg:py-20">
143+
<x-section-header
144+
title="Ou venez juste discuter"
145+
content="Dans la communauté on partage aussi des sujets de discussions dans divers domaines, pour nous édifier tous ensemble. Rejoins nous en participant"
146+
/>
147+
148+
<div class="mt-8 grid gap-8 md:grid-cols-3 md:gap-x-10 lg:mt-12">
149+
@foreach($latestDiscussions as $discussion)
150+
<div>
151+
<div class="flex items-center text-sm font-sans text-skin-muted">
152+
<a class="shrink-0" href="/user/{{ $discussion->author->username }}">
153+
<img class="h-6 w-6 rounded-full" src="{{ $discussion->author->profile_photo_url }}" alt="{{ $discussion->author->name }}">
154+
</a>
155+
<span class="ml-2 pr-1">Posté par</span>
156+
<div class="flex items-center space-x-1">
157+
<a href="{{ route('profile', $discussion->author->username) }}" class="text-skin-inverted hover:underline">{{ $discussion->author->name }}</a>
158+
<span aria-hidden="true">&middot;</span>
159+
<time-ago time="{{ $discussion->created_at->getTimestamp() }}"/>
160+
</div>
161+
</div>
162+
<a href="{{ route('discussions.show', $discussion) }}" class="mt-2 block">
163+
<p class="text-xl font-semibold text-skin-inverted">{{ $discussion->title }}</p>
164+
<p class="mt-3 text-base text-skin-base">{!! $discussion->excerpt() !!}</p>
165+
</a>
166+
<div class="mt-3">
167+
<a href="{{ route('discussions.show', $discussion) }}" class="text-base font-medium text-flag-green hover:text-green-500"> Lire la discussion </a>
168+
</div>
169+
</div>
170+
@endforeach
171+
</div>
172+
173+
<div class="flex items-center justify-center mt-10 sm:mt-12 xl:mt-16">
174+
<x-button :link="route('discussions.index')">
175+
Voir toutes les discussions
176+
<x-heroicon-o-arrow-narrow-right class="h-5 w-5 ml-1.5" />
177+
</x-button>
178+
</div>
179+
</div>
135180
</div>
136181
</x-container>
137182

resources/views/layouts/master.blade.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@
2424
<!-- Styles -->
2525
<link href="https://fonts.cdnfonts.com/css/operator-mono" rel="stylesheet">
2626
<link rel="stylesheet" href="https://rsms.me/inter/inter.css">
27+
<link rel="preconnect" href="https://fonts.googleapis.com">
28+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
29+
<link href="https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&display=swap" rel="stylesheet">
2730
<link href="{{ mix('css/app.css') }}" rel="stylesheet">
2831
@include('layouts._favicons')
2932
@livewireStyles

tailwind.config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ module.exports = {
5555
},
5656
fontFamily: {
5757
mono: ['Operator Mono', ...defaultTheme.fontFamily.mono],
58-
sans: ['Inter var', ...defaultTheme.fontFamily.sans],
58+
sans: ['Inter var', 'DM Sans', ...defaultTheme.fontFamily.sans],
5959
},
6060
fontWeight: {
6161
normal: 300

0 commit comments

Comments
 (0)