Skip to content

Commit 163b62c

Browse files
committed
new members
1 parent 2c68ae0 commit 163b62c

9 files changed

Lines changed: 63 additions & 25 deletions

File tree

src/app/join-us/[id]/page.tsx

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,27 @@ interface OpportunityPageProps {
2020
export default async function OpportunityPage({
2121
params,
2222
}: OpportunityPageProps) {
23+
const renderTextWithLinks = (text: string) => {
24+
const urlRegex = /(https?:\/\/[^\s]+)/g;
25+
const parts = text.split(urlRegex);
26+
return parts.map((part, index) => {
27+
if (/^https?:\/\//.test(part)) {
28+
return (
29+
<a
30+
key={`${part}-${index}`}
31+
href={part}
32+
target="_blank"
33+
rel="noreferrer"
34+
className="underline underline-offset-2"
35+
>
36+
{part}
37+
</a>
38+
);
39+
}
40+
return <span key={`${part}-${index}`}>{part}</span>;
41+
});
42+
};
43+
2344
const { id } = await params;
2445
const opportunity = opportunities.find((o) => o.id === id);
2546

@@ -163,9 +184,9 @@ export default async function OpportunityPage({
163184
{opportunity.requiredDocuments.map((item, index) => (
164185
<li
165186
key={index}
166-
className="font-sans text-base md:text-lg font-normal leading-[1.6] text-[#001f33]"
187+
className="font-sans text-base md:text-lg font-normal leading-[1.6] text-[#001f33] whitespace-pre-wrap"
167188
>
168-
{item}
189+
{renderTextWithLinks(item)}
169190
</li>
170191
))}
171192
</ul>

src/components/TeamMember.tsx

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,22 @@ export default function TeamMemberCard({ member }: TeamMemberProps) {
9393
/>
9494
</Link>
9595
)}
96+
{member.socialLinks.researchGate && member.socialLinks.researchGate.trim() !== "" && (
97+
<Link
98+
href={member.socialLinks.researchGate}
99+
target="_blank"
100+
rel="noopener noreferrer"
101+
className="w-5 h-5 relative shrink-0"
102+
>
103+
<span className="sr-only">ResearchGate</span>
104+
<Image
105+
src="/images/icons/website-icon.svg"
106+
alt="ResearchGate"
107+
fill
108+
className="object-contain"
109+
/>
110+
</Link>
111+
)}
96112
{member.socialLinks.twitter && member.socialLinks.twitter.trim() !== "" && (
97113
<Link
98114
href={member.socialLinks.twitter}

src/data/opportunities/assistant-professor-ccai-2026-03-06-primary.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ export const assistantProfessorCcai20260306Primary: OpportunityData = {
4040
requiredDocuments: [
4141
"Application letter to the Vice-Rector for General Affairs",
4242
"CV",
43-
"Personal questionnaire",
43+
"Candidate's personal information form (personal questionnaire):\nhttps://www.bip.pw.edu.pl/Praca-w-Politechnice/Wzory-dokumentow/Candidate-s-personal-information",
4444
"Copy of the diploma of higher education confirming the obtained master's degree or an equivalent degree",
4545
"Certified copy of PhD diploma",
4646
"List of research, teaching, and organizational output and achievements",

src/data/opportunities/assistant-professor-ccai-2026-03-20-primary.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export const assistantProfessorCcai20260320Primary: OpportunityData = {
4141
requiredDocuments: [
4242
"Application letter to the Vice-Rector for General Affairs",
4343
"CV",
44-
"Personal questionnaire",
44+
"Candidate's personal information form (personal questionnaire):\nhttps://www.bip.pw.edu.pl/Praca-w-Politechnice/Wzory-dokumentow/Candidate-s-personal-information",
4545
"Copy of the diploma of higher education confirming the obtained master's degree or an equivalent degree",
4646
"Certified copy of PhD diploma",
4747
"List of research, teaching, and organizational output and achievements",

src/data/opportunities/assistant-professor-ccai-2026-r2-5-two-half-time.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ export const assistantProfessorCcai2026R25TwoHalfTime: OpportunityData = {
4444
requiredDocuments: [
4545
"Application letter to the Vice-Rector for General Affairs",
4646
"CV",
47-
"Personal questionnaire",
47+
"Candidate's personal information form (personal questionnaire):\nhttps://www.bip.pw.edu.pl/Praca-w-Politechnice/Wzory-dokumentow/Candidate-s-personal-information",
4848
"Copy of the diploma of higher education confirming the obtained master's degree or an equivalent degree",
4949
"Certified copy of the PhD diploma",
5050
"List of research, teaching, and organizational output and achievements",

src/data/team/administration.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,12 @@ export const administration: TeamMember[] = [
66
name: "Hanna Góźdź",
77
imageUrl: "/images/team/gozdz.webp",
88
imageAlt: "Hanna Góźdź",
9-
tags: [],
10-
socialLinks: {},
9+
tags: ["communication", "promotion"],
10+
socialLinks: {
11+
linkedin: "https://www.linkedin.com/in/hanna-góźdź-0a159b284/",
12+
website: "https://www.hannagozdz.com",
13+
email: "gozdzhannah@gmail.com",
14+
},
1115
},
1216
{
1317
id: "ewa-maszke",

src/data/team/researchers.ts

Lines changed: 13 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -234,22 +234,6 @@ export const researchers: TeamMember[] = [
234234
linkedin: "https://uk.linkedin.com/in/klara-ba%C5%9B-35971131b",
235235
},
236236
},
237-
{
238-
id: "maszke",
239-
name: "Ewa Maszke",
240-
imageUrl: "/images/team/maszke.webp",
241-
imageAlt: "Ewa Maszke",
242-
tags: [],
243-
socialLinks: {},
244-
},
245-
{
246-
id: "straszke",
247-
name: "Paweł Straszke",
248-
imageUrl: "/images/team/straszke.webp",
249-
imageAlt: "Paweł Straszke",
250-
tags: [],
251-
socialLinks: {},
252-
},
253237
{
254238
id: "suszynski",
255239
name: "Piotr Suszyński",
@@ -263,7 +247,18 @@ export const researchers: TeamMember[] = [
263247
name: "Maciej Świechowski",
264248
imageUrl: "/images/team/swiechowski.webp",
265249
imageAlt: "Maciej Świechowski",
266-
tags: [],
267-
socialLinks: {},
250+
tags: [
251+
"DECISION-MAKING AI",
252+
"COMPUTATIONAL INTELLIGENCE",
253+
"MEDICAL APPLICATIONS",
254+
"AI IN INDUSTRY",
255+
],
256+
socialLinks: {
257+
linkedin: "https://www.linkedin.com/in/maciej-%C5%9Bwiechowski-6053a21ab/",
258+
googleScholar: "https://scholar.google.pl/citations?user=VR1gtbMAAAAJ&hl=en",
259+
researchGate: "https://www.researchgate.net/profile/Maciej-Swiechowski",
260+
email: "maciej.swiechowski@pw.edu.pl",
261+
website: "https://www.cyberiada.eu/",
262+
},
268263
},
269264
];

src/types/team.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ export interface TeamMember {
88
socialLinks?: {
99
linkedin?: string;
1010
googleScholar?: string;
11+
researchGate?: string;
1112
twitter?: string;
1213
email?: string;
1314
website?: string;
@@ -34,6 +35,7 @@ export interface TeamLeader {
3435
socialLinks?: {
3536
linkedin?: string;
3637
googleScholar?: string;
38+
researchGate?: string;
3739
twitter?: string;
3840
email?: string;
3941
website?: string;

0 commit comments

Comments
 (0)