diff --git a/src/components/aboutpage-components/FormerMembersSection.tsx b/src/components/aboutpage-components/FormerMembersSection.tsx index bebd15a4..5f2b19dc 100644 --- a/src/components/aboutpage-components/FormerMembersSection.tsx +++ b/src/components/aboutpage-components/FormerMembersSection.tsx @@ -1,9 +1,10 @@ import { ImageDataLike } from 'gatsby-plugin-image' import { useI18next } from 'gatsby-plugin-react-i18next' import React from 'react' -import { FaLinkedin } from 'react-icons/fa' +import { FaCross, FaLinkedin } from 'react-icons/fa' import Hero from '~components/Hero' import { MemberProps } from '~utils/props' +import { memberSort } from '~utils/position-order' type Props = { nodes: Array @@ -13,26 +14,32 @@ type Props = { const FormerMembersSection: React.FC = ({ nodes, heroBackgroundImage }) => { const { t } = useI18next() + function memberCoreName(props: MemberProps) { + return t('about.members.name', { + firstName: props.firstName, + lastName: props.lastName + }) + } + function memberName(props: MemberProps) { - return t('about.members.name', { firstName: props.firstName, lastName: props.lastName }) + return `${props.namePrefix ? `${props.namePrefix} ` : ''}${memberCoreName(props)}${props.nameSuffix ? ` ${props.nameSuffix}` : ''}` } return (
- {nodes - .sort((member1, member2) => memberName(member1).localeCompare(memberName(member2))) - .map((formermember) => ( -
- {memberName(formermember)} - {formermember.title ? `, ${formermember.title}` : ''} - {formermember.linkedInPage && ( - - - - )} -
- ))} + {nodes.sort(memberSort(t)).map((formermember) => ( +
+ {memberName(formermember)} + {formermember.title ? `, ${formermember.title}` : ''} + {formermember.inMemoriam && } + {formermember.linkedInPage && ( + + + + )} +
+ ))}
) diff --git a/src/components/aboutpage-components/IntroSection.tsx b/src/components/aboutpage-components/IntroSection.tsx index a1cc7966..9afe414b 100644 --- a/src/components/aboutpage-components/IntroSection.tsx +++ b/src/components/aboutpage-components/IntroSection.tsx @@ -16,7 +16,12 @@ const IntroSection: React.FC = ({ numOfMembers, numOfPhD }) => { - +

diff --git a/src/components/aboutpage-components/Member.tsx b/src/components/aboutpage-components/Member.tsx index a49547cd..71baacc0 100644 --- a/src/components/aboutpage-components/Member.tsx +++ b/src/components/aboutpage-components/Member.tsx @@ -1,14 +1,17 @@ import { MemberProps } from '~utils/props' import { GatsbyImage, getImage } from 'gatsby-plugin-image' -import { FaGithub, FaHome, FaLinkedin, FaTwitter } from 'react-icons/fa' +import { FaGithub, FaHome, FaLinkedin, FaTwitter, FaUser } from 'react-icons/fa' import { AiCV, AiDblp, AiGoogleScholar, AiMtmt, AiOrcid } from '~components/Academicons' import React from 'react' import { useI18next } from 'gatsby-plugin-react-i18next' +import { memberName } from '~utils/member-name' const Member: React.FC = ({ avatar, firstName, lastName, + namePrefix, + nameSuffix, title, position, homePage, @@ -27,9 +30,14 @@ const Member: React.FC = ({ return (
{avatarImage && } + {!avatarImage && ( +
+ +
+ )}

- {t('about.members.name', { firstName, lastName })} + {memberName(t, { firstName, lastName, namePrefix, nameSuffix })} {title && `, ${title}`}

{position && t(`about.members.position.${position}`)} diff --git a/src/content/achievements/achievements.yml b/src/content/achievements/achievements.yml index 7e89e160..ab0f83c3 100644 --- a/src/content/achievements/achievements.yml +++ b/src/content/achievements/achievements.yml @@ -9,7 +9,6 @@ - translationPrefix: education.achievements.scholarships featuredImage: ../images/achievements/tdk-awards.png links: - - https://www.mit.bme.hu/events/2020/11/12/magas-tanszeki-reszvetel-es-kiemelkedo-eredmenyek-az-idei-tdk-konferencian - - https://www.mit.bme.hu/events/2019/04/24/kiemelkedo-sikerek-az-otdk-n + - https://www.mit.bme.hu/events/2023/11/20/tdk-2023-minden-eddiginel-tobb-dolgozat + - https://www.mit.bme.hu/events/2023/04/19/otdk-2023-elsopro-sikerek-az-informatikatudomanyi-szekcioban - https://www.mit.bme.hu/events/2018/09/05/unkp-osztondij-sikerek - - http://inf.mit.bme.hu/news/2017/12/kutat%C3%B3csoportunk-nyolc-hallgat%C3%B3ja-nemzeti-fels%C5%91oktat%C3%A1si-%C3%B6szt%C3%B6nd%C3%ADjban-r%C3%A9szes%C3%BClt diff --git a/src/content/members/active.yml b/src/content/members/active.yml index 487fb71a..9659ee6c 100644 --- a/src/content/members/active.yml +++ b/src/content/members/active.yml @@ -4,9 +4,11 @@ position: prof avatar: ../images/members/pataricza.jpg linkedInPage: https://hu.linkedin.com/in/andras-pataricza-6651345 - homePage: http://inf.mit.bme.hu/members/pataric + homePage: https://www.mit.bme.hu/general/staff/pataric mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10004524 cvPage: https://drive.google.com/file/d/0BwMh_IMLEYWRSVBENVdkSUc0SEE/edit?usp=sharing + namePrefix: '' + nameSuffix: '' - firstName: Dániel lastName: Varró title: DSc @@ -22,7 +24,7 @@ position: assocProfHabil avatar: ../images/members/majzik.jpg linkedInPage: https://hu.linkedin.com/in/istvan-majzik-a2033387 - homePage: http://inf.mit.bme.hu/members/majzik + homePage: https://www.mit.bme.hu/general/staff/majzik mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10001448 scholarPage: https://scholar.google.com/citations?user=z8LwwiAAAAAJ - firstName: Zoltán @@ -44,7 +46,7 @@ title: PhD position: assocProf avatar: ../images/members/gonczy.jpg - homePage: http://inf.mit.bme.hu/members/gonczy + homePage: https://www.mit.bme.hu/general/staff/gonczy mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10041117 linkedInPage: https://www.linkedin.com/in/laszlo-gonczy-80684411/ - firstName: András @@ -52,15 +54,16 @@ title: PhD position: assocProf avatar: ../images/members/voros.jpg - homePage: http://inf.mit.bme.hu/members/vorosa + homePage: https://www.mit.bme.hu/general/staff/vori mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10042280 cvPage: https://share.mit.bme.hu/index.php/s/x6zj2cKzA5TxieJ + linkedInPage: https://www.linkedin.com/in/andr%C3%A1s-v%C3%B6r%C3%B6s-665b0818a/ - firstName: Imre lastName: Kocsis title: PhD position: assistProf avatar: ../images/members/kocsis.png - homePage: http://inf.mit.bme.hu/members/ikocsis + homePage: https://www.mit.bme.hu/general/staff/ikocsis mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10040986 cvPage: http://mit.bme.hu/~ikocsis/Kocsis_Imre_CV_eng.pdf linkedInPage: https://www.linkedin.com/in/imre-kocsis/ @@ -70,7 +73,7 @@ position: assistProf avatar: ../images/members/molnar.jpg linkedInPage: https://www.linkedin.com/in/molnarv - homePage: http://inf.mit.bme.hu/members/molnarv + homePage: https://www.mit.bme.hu/general/staff/molnarv mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10049620 githubPage: https://github.com/vincemolnar - firstName: Oszkár @@ -82,6 +85,7 @@ cvPage: https://oszkarsemerath.github.io/content/SemerathCV-en.pdf mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10045161 scholarPage: https://scholar.google.com/citations?user=eURCwRYAAAAJ + linkedInPage: https://www.linkedin.com/in/oszk%C3%A1r-semer%C3%A1th-a05a0074/ - firstName: Gábor lastName: Huszerl position: masterLecturer @@ -125,7 +129,7 @@ lastName: Farkas position: assistResFellow avatar: ../images/members/farkas.jpg - homePage: http://inf.mit.bme.hu/members/farkasr + homePage: https://www.mit.bme.hu/general/staff/farkasr mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10058544 - firstName: András lastName: Földvári @@ -137,7 +141,7 @@ lastName: Graics position: assistResFellow avatar: ../images/members/graics.jpg - homePage: http://inf.mit.bme.hu/members/graicsb + homePage: https://www.mit.bme.hu/node/12022 cvPage: http://mit.bme.hu/~graics/cv-graics-en.pdf linkedInPage: https://www.linkedin.com/in/bence-graics-9085a6125/ mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10068239 @@ -149,6 +153,7 @@ homePage: https://www.mit.bme.hu/general/phd/szabo cvPage: https://rorck.github.io/files/richard_szabo_cv.pdf mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10068607 + linkedInPage: https://www.linkedin.com/in/rich%C3%A1rd-szab%C3%B3-037450230/ - firstName: Dániel lastName: Szekeres position: phdStudent @@ -156,6 +161,7 @@ homePage: https://www.mit.bme.hu/general/phd/szekeres cvPage: https://szdan97.github.io/cv_szekeres.pdf mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10078570 + linkedInPage: https://www.linkedin.com/in/d%C3%A1niel-szekeres-0619b8178/ - firstName: Levente lastName: Bajczi position: phdStudent @@ -163,6 +169,7 @@ homePage: https://www.mit.bme.hu/general/phd/bajczi cvPage: https://leventebajczi.github.io/leventebajczi-cv/leventebajczi_cv_en.pdf mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10073070 + linkedInPage: https://www.linkedin.com/in/leventebajczi/ - firstName: Attila lastName: Ficsor position: phdStudent @@ -185,6 +192,7 @@ cvPage: http://mit.bme.hu/~bpeter/cve.pdf scholarPage: https://scholar.google.com/citations?user=mo8l6mQAAAAJ githubPage: https://github.com/bzp99 + linkedInPage: https://www.linkedin.com/in/bertalan-zolt%C3%A1n-p%C3%A9ter-2204732b2/ - firstName: Milán lastName: Mondok position: phdStudent @@ -203,7 +211,7 @@ scholarPage: https://scholar.google.com/citations?hl=en&user=8lSh8hYAAAAJ linkedInPage: www.linkedin.com/in/zsofiaadam4224 mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10077295 -- firstName: +- firstName: lastName: Kangogo Damaris Jepkurui position: phdStudent avatar: ../images/members/damaris.jpg diff --git a/src/content/members/honorary.yml b/src/content/members/honorary.yml index 4a5a9699..e594eada 100644 --- a/src/content/members/honorary.yml +++ b/src/content/members/honorary.yml @@ -3,9 +3,9 @@ title: PhD position: honAssocProf avatar: ../images/members/horvath.jpg - homePage: http://inf.mit.bme.hu/members/ahorvath mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10030432 linkedInPage: https://www.linkedin.com/in/akoshorvathincquerylabs/ + homePage: '' cvPage: '' twitterPage: '' orcidPage: '' @@ -13,11 +13,16 @@ dblpPage: '' githubPage: '' order: '' + namePrefix: '' + nameSuffix: '' - firstName: István lastName: Ráth title: PhD position: honAssocProf avatar: ../images/members/rath.jpg - homePage: http://inf.mit.bme.hu/members/rath mtmtPage: https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=10030433 linkedInPage: https://www.linkedin.com/in/istvanrath/ +- firstName: Zsolt + lastName: Kocsis + position: honAssocProf + linkedInPage: https://www.linkedin.com/in/zsoltkocsis/ diff --git a/src/content/members/inactive.yml b/src/content/members/inactive.yml index 5902f546..09e91972 100644 --- a/src/content/members/inactive.yml +++ b/src/content/members/inactive.yml @@ -2,6 +2,8 @@ lastName: Balogh title: PhD linkedInPage: https://hu.linkedin.com/in/andr%C3%A1s-balogh-0758b562 + namePrefix: '' + nameSuffix: '' - firstName: Tamás lastName: Bartha title: PhD @@ -28,6 +30,7 @@ - firstName: Csaba lastName: Debreceni title: PhD + linkedInPage: https://www.linkedin.com/in/debrecenics/ - firstName: Szilvia lastName: Gyapay title: PhD @@ -74,8 +77,10 @@ linkedInPage: https://www.linkedin.com/in/ujhelyiz/ - firstName: Szilárd lastName: Bozóki + linkedInPage: https://www.linkedin.com/in/szilard-bozoki/ - firstName: Tamás lastName: Demián + linkedInPage: https://www.linkedin.com/in/tam%C3%A1s-demi%C3%A1n-618b4936/ - firstName: Orsolya lastName: Dobán - firstName: Benedek @@ -118,3 +123,44 @@ - firstName: Gábor lastName: Urbanics linkedInPage: https://www.linkedin.com/in/gaborurbanics/ +- firstName: Balázs + lastName: Benyó + linkedInPage: https://www.linkedin.com/in/dr-bal%C3%A1zs-beny%C3%B3-9405389/ + title: PhD +- firstName: Nikol + lastName: Biró + linkedInPage: https://www.linkedin.com/in/nikol-bir%C3%B3-b10b7974/ + inMemoriam: true +- firstName: Péter + lastName: Domokos + linkedInPage: https://www.linkedin.com/in/pdomokos/ +- firstName: Zoltán + lastName: Égel + linkedInPage: https://www.linkedin.com/in/zoltan-egel-258a5a2b/ +- firstName: Zoltán + lastName: Hornák + linkedInPage: https://www.linkedin.com/in/zoltanhornak/ +- firstName: Judit + lastName: Jávorszky + linkedInPage: https://www.linkedin.com/in/judit-javorszky-8713801/ +- firstName: Viktória + lastName: Keresztély + linkedInPage: https://www.linkedin.com/in/viktoria-keresztely-0a068b4/ +- firstName: Dániel + lastName: Petri + linkedInPage: https://www.linkedin.com/in/d%C3%A1niel-petri-b8a32a3/ +- firstName: Balázs + lastName: Sallay + linkedInPage: https://www.linkedin.com/in/balazs-sallay-203ab03/ +- firstName: Judit + lastName: Spanics + linkedInPage: https://www.linkedin.com/in/judit-spanics-77017694/ +- firstName: Béla + lastName: Tolvaj + linkedInPage: https://www.linkedin.com/in/b%C3%A9la-tolvaj-b8092464/ +- firstName: Péter Tamás + lastName: Kovács +- firstName: András + lastName: Petri + namePrefix: ifj. + diff --git a/src/locales/hu/education.json b/src/locales/hu/education.json index 47d307b7..a3ddfdd4 100644 --- a/src/locales/hu/education.json +++ b/src/locales/hu/education.json @@ -89,5 +89,5 @@ "education.achievements.workplaces.title": "Jellemző munkahelyek", "education.achievements.workplaces.desc": "Hallgatóinknak nem esik nehezükre elhelyezkedni a végzés után: start-up cégeknél, multinacionális cégek hazai vagy akár nemzetközi fejlesztőközpontjaiban mind-mind megtalálhatók volt hallgatóink, nem ritkán senior pozícióban.", "education.achievements.scholarships.title": "Pályázatok és ösztöndíjak", - "education.achievements.scholarships.desc": "A <0>TDK és <1>OTDK versenyeken, <2>ÚNKP, <3>NFÖD és KBME pályázatokon hallgatóink minden évben kiemelkedően teljesítenek. Tanulmányaik alatt sokan külföldi ösztöndíjprogramokon és tanulmányutakon vesznek részt (pl. Svájc, Németország, Írország)." + "education.achievements.scholarships.desc": "A <0>TDK és <1>OTDK versenyeken, <2>ÚNKP és KBME pályázatokon hallgatóink minden évben kiemelkedően teljesítenek. Tanulmányaik alatt sokan külföldi ösztöndíjprogramokon és tanulmányutakon vesznek részt (pl. Svájc, Németország, Írország)." } diff --git a/src/pages/about.tsx b/src/pages/about.tsx index 47d57390..3c7753aa 100644 --- a/src/pages/about.tsx +++ b/src/pages/about.tsx @@ -48,6 +48,8 @@ export const query = graphql` nodes { firstName lastName + namePrefix + nameSuffix title position order @@ -71,6 +73,8 @@ export const query = graphql` nodes { firstName lastName + namePrefix + nameSuffix title position order @@ -94,8 +98,11 @@ export const query = graphql` nodes { firstName lastName + namePrefix + nameSuffix title linkedInPage + inMemoriam } } locales: allLocale(filter: { ns: { in: ["about", "commons"] }, language: { eq: $language } }) { diff --git a/src/utils/member-name.tsx b/src/utils/member-name.tsx new file mode 100644 index 00000000..e81f9adb --- /dev/null +++ b/src/utils/member-name.tsx @@ -0,0 +1,13 @@ +import { MemberProps } from '~utils/props' +import { TFunction } from 'i18next' + +export function memberCoreName(t: TFunction<'translation', undefined, 'translation'>, props: MemberProps) { + return t('about.members.name', { + firstName: props.firstName, + lastName: props.lastName + }) +} + +export function memberName(t: TFunction<'translation', undefined, 'translation'>, props: MemberProps) { + return `${props.namePrefix ? `${props.namePrefix} ` : ''}${memberCoreName(t, props)}${props.nameSuffix ? ` ${props.nameSuffix}` : ''}` +} diff --git a/src/utils/position-order.tsx b/src/utils/position-order.tsx index 2d45505f..e7309c17 100644 --- a/src/utils/position-order.tsx +++ b/src/utils/position-order.tsx @@ -1,5 +1,6 @@ import { MemberProps } from '~utils/props' import { TFunction } from 'i18next' +import { memberCoreName } from '~utils/member-name' export const positionOrder = [ 'prof', @@ -14,17 +15,13 @@ export const positionOrder = [ ] export function memberSort(t: TFunction<'translation', undefined, 'translation'>) { - function memberName(props: MemberProps) { - return t('about.members.name', { firstName: props.firstName, lastName: props.lastName }) - } - return (member1: MemberProps, member2: MemberProps) => { const pos1 = positionOrder.indexOf(member1.position || '') const pos2 = positionOrder.indexOf(member2.position || '') if (pos1 === pos2) { if (member1.order === member2.order) { - return memberName(member1).trim().localeCompare(memberName(member2).trim()) + return memberCoreName(t, member1).trim().localeCompare(memberCoreName(t, member2).trim()) } return (member2.order || 0) - (member1.order || 0) } diff --git a/src/utils/props/member.props.ts b/src/utils/props/member.props.ts index 600f4ee2..22dc9002 100644 --- a/src/utils/props/member.props.ts +++ b/src/utils/props/member.props.ts @@ -3,6 +3,8 @@ import { ImageDataLike } from 'gatsby-plugin-image' export default interface MemberProps { firstName: string lastName: string + namePrefix?: string + nameSuffix?: string title?: string position?: string order?: number @@ -16,4 +18,5 @@ export default interface MemberProps { dblpPage?: string orcidPage?: string scholarPage?: string + inMemoriam?: boolean } diff --git a/src/utils/scss/_site-blocks.scss b/src/utils/scss/_site-blocks.scss index 908513e3..252687ca 100644 --- a/src/utils/scss/_site-blocks.scss +++ b/src/utils/scss/_site-blocks.scss @@ -270,6 +270,13 @@ border-radius: 50%; margin-left: auto; margin-right: auto; + background-color: $secondary-light; + + > svg { + width: 70%; + height: 70%; + margin: 10% 15% 20% 15%; + } } } @@ -478,6 +485,8 @@ .alumni { width: 14rem; color: $white; + display: flex; + align-items: center; & a { color: $primary-medium; diff --git a/static/images/members2024.jpg b/static/images/members2024.jpg new file mode 100644 index 00000000..7ff2b8e0 Binary files /dev/null and b/static/images/members2024.jpg differ