Skip to content

Commit 4a70a54

Browse files
committed
fix: filter query (speakers)
1 parent 0471e61 commit 4a70a54

File tree

1 file changed

+42
-18
lines changed

1 file changed

+42
-18
lines changed

apps/web/app/server/api/speakers.get.ts

Lines changed: 42 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -27,42 +27,66 @@ export default defineEventHandler(async (event) => {
2727
type: 'session',
2828
title: 'Session',
2929
list: speakers
30-
.filter((speaker: Speaker) => {
31-
if (process.env.NODE_ENV === 'production') return speaker.session_type === 'session' && speaker.is_open === true
32-
return speaker.session_type === 'session'
33-
})
30+
.filter(speaker => speaker.session_type === 'session' && speaker.display_order !== null)
3431
.sort((a: Speaker, b: Speaker) => {
3532
if (b.display_order && a.display_order) return a.display_order - b.display_order
36-
return a.created_at < b.created_at ? -1 : 1
37-
}),
33+
return 1
34+
})
35+
.concat(
36+
speakers
37+
.filter((speaker: Speaker) => {
38+
if (process.env.NODE_ENV === 'production') return speaker.session_type === 'session' && speaker.is_open === true
39+
return speaker.session_type === 'session'
40+
})
41+
.filter(s => s.display_order === null)
42+
.sort((a: Speaker, b: Speaker) => {
43+
return a.created_at < b.created_at ? -1 : 1
44+
}),
45+
),
3846
}
3947

4048
const lightningTalkSpeakers: SpeakerInfo = {
4149
type: 'lightning-talk',
4250
title: 'Lightning talk',
4351
list: speakers
44-
.filter((speaker: Speaker) => {
45-
if (process.env.NODE_ENV === 'production') return speaker.session_type === 'lightning-talk' && speaker.is_open === true
46-
return speaker.session_type === 'lightning-talk'
47-
})
52+
.filter(speaker => speaker.session_type === 'lightning-talk' && speaker.display_order !== null)
4853
.sort((a: Speaker, b: Speaker) => {
4954
if (b.display_order && a.display_order) return a.display_order - b.display_order
50-
return a.created_at < b.created_at ? -1 : 1
51-
}),
55+
return 1
56+
})
57+
.concat(
58+
speakers
59+
.filter((speaker: Speaker) => {
60+
if (process.env.NODE_ENV === 'production') return speaker.session_type === 'lightning-talk' && speaker.is_open === true
61+
return speaker.session_type === 'lightning-talk'
62+
})
63+
.filter(s => s.display_order === null)
64+
.sort((a: Speaker, b: Speaker) => {
65+
return a.created_at < b.created_at ? -1 : 1
66+
}),
67+
),
5268
}
5369

5470
const sponsorSessionSpeakers: SpeakerInfo = {
5571
type: 'sponsor-session',
5672
title: 'Sponsor session',
5773
list: speakers
58-
.filter((speaker: Speaker) => {
59-
if (process.env.NODE_ENV === 'production') return speaker.session_type === 'sponsor-session' && speaker.is_open === true
60-
return speaker.session_type === 'sponsor-session'
61-
})
74+
.filter(speaker => speaker.session_type === 'sponsor-session' && speaker.display_order !== null)
6275
.sort((a: Speaker, b: Speaker) => {
6376
if (b.display_order && a.display_order) return a.display_order - b.display_order
64-
return a.created_at < b.created_at ? -1 : 1
65-
}),
77+
return 1
78+
})
79+
.concat(
80+
speakers
81+
.filter((speaker: Speaker) => {
82+
if (process.env.NODE_ENV === 'production') return speaker.session_type === 'sponsor-session' && speaker.is_open === true
83+
return speaker.session_type === 'sponsor-session'
84+
})
85+
.filter(s => s.display_order === null)
86+
.sort((a: Speaker, b: Speaker) => {
87+
return a.created_at < b.created_at ? -1 : 1
88+
}),
89+
),
6690
}
6791

6892
const panelEventPanelers: PanelerInfo = {

0 commit comments

Comments
 (0)