Skip to content

Commit aa86ddd

Browse files
committed
feat: add hosts name in activity cards
1 parent 263d2ce commit aa86ddd

File tree

3 files changed

+21
-2
lines changed

3 files changed

+21
-2
lines changed

src/components/IcbdActivityCard.tsx

+16-1
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
11
import DirectusImage from "./DirectusImage";
22
import { getTranslation, locale } from "@/locales";
33
import styles from "@/styles/IcbdActivityCard.module.scss";
4-
import { ICBDActivity } from "@/types/aliases";
4+
import { ICBDActivity, ICBDSpeaker } from "@/types/aliases";
55
import { useRouter } from "next/router";
66
import Markdown from "react-markdown";
77

88
export default function IcbdActivityCard(props: { activity: ICBDActivity }) {
99
const router = useRouter();
1010

11+
const hosts = props.activity.hosts as ICBDSpeaker[];
12+
1113
const translation = getTranslation(props.activity, locale(router));
1214
return (
1315
<div className={styles.content}>
@@ -23,6 +25,19 @@ export default function IcbdActivityCard(props: { activity: ICBDActivity }) {
2325
<Markdown className={styles.description}>
2426
{translation.description}
2527
</Markdown>
28+
{hosts.length != 0 ? (
29+
<p className={styles.hosts}>
30+
{"⦿ " +
31+
hosts
32+
.map((s: ICBDSpeaker) => {
33+
let speaker = s.icbd_speakers_id;
34+
return `${speaker.first_name} ${speaker.last_name}`;
35+
})
36+
.join(" - ")}
37+
</p>
38+
) : (
39+
<></>
40+
)}
2641
</div>
2742
);
2843
}

src/pages/icbd.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -241,11 +241,11 @@ export const getServerSideProps: GetServerSideProps<{
241241
readItems("icbd_activities", {
242242
fields: [
243243
"id",
244-
"hosts",
245244
"icon",
246245
"timeslots",
247246
"color",
248247
{ translations: ["*"] },
248+
"hosts.icbd_speakers_id.*",
249249
],
250250
})
251251
),

src/styles/IcbdActivityCard.module.scss

+4
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,10 @@
3333
width: 100%;
3434
}
3535

36+
.hosts {
37+
color: grey;
38+
}
39+
3640
@media (max-width: 1000px) {
3741
width: 65%;
3842
}

0 commit comments

Comments
 (0)