Skip to content

Commit

Permalink
Add student life articles into events page
Browse files Browse the repository at this point in the history
  • Loading branch information
Respirayson committed Mar 11, 2024
1 parent 8972166 commit 6bc7fd7
Show file tree
Hide file tree
Showing 6 changed files with 126 additions and 61 deletions.
2 changes: 1 addition & 1 deletion src/layout/NavigationBar.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ function NavigationBar() {
<header className='w-full h-20'>
<div className='navigation-bar'>
<Link to='/'>
<img src='comclub_logo.png' className='h-12 p-2'></img>
<img src='/comclub_logo.png' className='h-12 p-2'></img>
</Link>
<NavigationMenu />
</div>
Expand Down
2 changes: 1 addition & 1 deletion src/pages/events/articles.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"wellness_festival": {"title": "SOC Wellness Festival", "body": "\nHey SoC Students,\n\nAre you feeling the mid-semester slump? Is your brain starting to feel fried from staring at endless lines of code? If so, don\u2019t panic. We\u2019ve got the antidote for you!\n\nThis year, we are introducing Canine Companion: Interacting with Dogs, a collaboration between Student Life Office and Computing Club.\n\nRegistration is free for all NUS SoC students!\n\nPlease note:\nEvent is limited to 10-minute timeslot per person. You will be allocated to, and informed about a specific 10-minute timeslot within the window period that the event is conducted.\n\nDo check out some other exciting workshops under SoC Wellness Festival 2024 too\ud83d\ude0e\ud83d\ude0e:\n- Craft your own Musical Box\n- Build your own Air Plant Terrarium\n- Embrace Nature with Forest Therapy\n\nSlots are limited so do register your interest at https://forms.office.com/r/4vfPX0aiCF now!\n", "link": "wellness_festival", "imgSrc": "https://nuscomputingdev.github.io/comclub-website-2024/articles/wellness_festival.jpg"}, "bizcom_league": {"title": "BIZCOM League", "body": "\nHEY SOC\ud83e\udd13\nRecess week is almost here \ud83d\ude0b! are you looking for ways to destress?? \ud83d\ude0c AND meet new friends \ud83e\udd73\ud83e\udd73?\n\nJoin us at BIZCOM LEAGUE, and stand a chance to win:\n- HaiDiLao vouchers \ud83c\udf72 - Grab vouchers \ud83d\ude97\n- NTUC vouchers \ud83c\udf7e\n- JBL speakers \ud83d\udd08!\n- FREE JERSEYS \ud83d\udc55\nanddddd most importantly, IT\u2019s FREE!!!! \ud83e\udd11\n\n\nBIZCOM LEAGUE IS BACK AGAIN\ud83d\ude31\ud83d\ude31\ud83e\udd29\ud83e\udd29 between NUS Computing Club and NUS Bizad Club where you get to make some new Biz friends! (You may sign up in groups of 8 MAX, or even solo!)\nAll you have to do is sign up and play four sports (basketball\ud83c\udfc0 , dodgeball \ud83e\udd3e\u200d\u2640\ufe0f, ultimate frisbee\ud83e\udd4f , captain\u2019s ball \ud83c\udfd0) over the course of two days!\n\nWHEN?\n\u203c\ufe0f26 Feb 9am - 7pm\n\u203c\ufe0f27 Feb 9am - 7pm\n\nSo WHAT ARE YOU WAITING FOR\u2049\ufe0fSIGN UP NOW\u203c\ufe0f you won\u2019t regret it \ud83e\udd2d\nhttps://nus.campuslabs.com/engage/submitter/form/start/626464\n", "link": "bizcom_league", "imgSrc": "https://nuscomputingdev.github.io/comclub-website-2024/articles/bizcom_league.jpg"}}
{"wellness_festival": {"title": "SOC Wellness Festival", "body": "\nHey SoC Students,\n\nAre you feeling the mid-semester slump? Is your brain starting to feel fried from staring at endless lines of code? If so, don\u2019t panic. We\u2019ve got the antidote for you!\n\nThis year, we are introducing Canine Companion: Interacting with Dogs, a collaboration between Student Life Office and Computing Club.\n\nRegistration is free for all NUS SoC students!\n\nPlease note:\nEvent is limited to 10-minute timeslot per person. You will be allocated to, and informed about a specific 10-minute timeslot within the window period that the event is conducted.\n\nDo check out some other exciting workshops under SoC Wellness Festival 2024 too\ud83d\ude0e\ud83d\ude0e:\n- Craft your own Musical Box\n- Build your own Air Plant Terrarium\n- Embrace Nature with Forest Therapy\n\nSlots are limited so do register your interest at https://forms.office.com/r/4vfPX0aiCF now!\n", "link": "wellness_festival", "imgSrc": "https://nuscomputingdev.github.io/comclub-website-2024/articles/wellness_festival.jpg"}, "bizcom_league": {"title": "BIZCOM League", "body": "\nHEY SOC\ud83e\udd13\nRecess week is almost here \ud83d\ude0b! are you looking for ways to destress?? \ud83d\ude0c AND meet new friends \ud83e\udd73\ud83e\udd73?\n\nJoin us at BIZCOM LEAGUE, and stand a chance to win:\n- HaiDiLao vouchers \ud83c\udf72 - Grab vouchers \ud83d\ude97\n- NTUC vouchers \ud83c\udf7e\n- JBL speakers \ud83d\udd08!\n- FREE JERSEYS \ud83d\udc55\nanddddd most importantly, IT\u2019s FREE!!!! \ud83e\udd11\n\n\nBIZCOM LEAGUE IS BACK AGAIN\ud83d\ude31\ud83d\ude31\ud83e\udd29\ud83e\udd29 between NUS Computing Club and NUS Bizad Club where you get to make some new Biz friends! (You may sign up in groups of 8 MAX, or even solo!)\nAll you have to do is sign up and play four sports (basketball\ud83c\udfc0 , dodgeball \ud83e\udd3e\u200d\u2640\ufe0f, ultimate frisbee\ud83e\udd4f , captain\u2019s ball \ud83c\udfd0) over the course of two days!\n\nWHEN?\n\u203c\ufe0f26 Feb 9am - 7pm\n\u203c\ufe0f27 Feb 9am - 7pm\n\nSo WHAT ARE YOU WAITING FOR\u2049\ufe0fSIGN UP NOW\u203c\ufe0f you won\u2019t regret it \ud83e\udd2d\nhttps://nus.campuslabs.com/engage/submitter/form/start/626464\n", "link": "bizcom_league", "imgSrc": "https://nuscomputingdev.github.io/comclub-website-2024/articles/bizcom_league.jpg"}, "freshman_social_camp": {"title": "Freshman Social Camp", "body": "\nDates: 19th June - 22nd June 2024\n\nTheme: Harry Potter\n\nFSC is crafted to kickstart your university journey with enduring friendships and unforgettable experiences. Engage in a variety of physical and intellectual games, participate in team bonding exercises, and compete for exciting team and individual prizes. You will also have the opportunity to attend the beach finale event Bash together with your new friends, solidifying your friendships.\n\nSignup links will be released soon! Stay tuned!\n", "link": "freshman_social_camp", "imgSrc": "/announcements/fsc.jpg"}, "freshman_orientation_camp": {"title": "Freshman Orientation Camp", "body": "\nDates: 24th July - 27th July 2024\n\nTheme: Teenage Mutant Ninja Turtles\n\nFOW is a 4-day physical orientation camp where seniors help freshmen adapt to different aspects of university life through preparatory talks and team-building activities. Forge lasting friendships as you navigate campus resources and academic challenges together. Look forward to strategic team games that develop you both intellectually and physically.\n\nSignup links will be released soon! Stay tuned!\n", "link": "freshman_orientation_camp", "imgSrc": "/announcements/fow.jpg"}, "freshman_finale_camp": {"title": "Freshman Finale Camp", "body": "\nDates: 5th August - 7th August 2024\n\nTheme: Elementals: Rediscover your inner element\n\nAbstract: FFC is a 3-day physical summer camp, perfectly tailored for international students gearing up for matriculation closer to August. The camp offers an array of theme-based activities such as flag-building and exhilarating house face-offs. Engage in friendly competition alongside your housemates, strategizing to earn glory for your elemental faction in a series of thrilling challenges. End the camp on a high note with its campfire and barbecue finale under the stars.\n\nSignup links will be released soon! Stay tuned!\n", "link": "freshman_finale_camp", "imgSrc": "/announcements/ffc.jpg"}, "computing_bash": {"title": "Computing Bash", "body": "\nEvent date: 16th August 2024\n\nA fun-filled beach finale event where freshmen and seniors come together to wrap up the entire orientation experience with a night of performances, games, and food. Held at Sentosa Beach, Bash 2024 offers an electrifying atmosphere with DJ sets, inflatable obstacle courses, and much more.\n\nSignup links will be released soon! Stay tuned!\n", "link": "computing_bash", "imgSrc": "/announcements/bash.jpg"}}
61 changes: 61 additions & 0 deletions src/pages/events/dump.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,43 @@
https://nus.campuslabs.com/engage/submitter/form/start/626464
'''

fsc_body = '''
Dates: 19th June - 22nd June 2024
Theme: Harry Potter
FSC is crafted to kickstart your university journey with enduring friendships and unforgettable experiences. Engage in a variety of physical and intellectual games, participate in team bonding exercises, and compete for exciting team and individual prizes. You will also have the opportunity to attend the beach finale event Bash together with your new friends, solidifying your friendships.
Signup links will be released soon! Stay tuned!
'''

fow_body = '''
Dates: 24th July - 27th July 2024
Theme: Teenage Mutant Ninja Turtles
FOW is a 4-day physical orientation camp where seniors help freshmen adapt to different aspects of university life through preparatory talks and team-building activities. Forge lasting friendships as you navigate campus resources and academic challenges together. Look forward to strategic team games that develop you both intellectually and physically.
Signup links will be released soon! Stay tuned!
'''

ffc_body = '''
Dates: 5th August - 7th August 2024
Theme: Elementals: Rediscover your inner element
Abstract: FFC is a 3-day physical summer camp, perfectly tailored for international students gearing up for matriculation closer to August. The camp offers an array of theme-based activities such as flag-building and exhilarating house face-offs. Engage in friendly competition alongside your housemates, strategizing to earn glory for your elemental faction in a series of thrilling challenges. End the camp on a high note with its campfire and barbecue finale under the stars.
Signup links will be released soon! Stay tuned!
'''

bash_body = '''
Event date: 16th August 2024
A fun-filled beach finale event where freshmen and seniors come together to wrap up the entire orientation experience with a night of performances, games, and food. Held at Sentosa Beach, Bash 2024 offers an electrifying atmosphere with DJ sets, inflatable obstacle courses, and much more.
Signup links will be released soon! Stay tuned!
'''

# temporary stopgap for article content
# convert multiline articles into json
Expand All @@ -61,5 +98,29 @@
'link': 'bizcom_league',
'imgSrc': 'https://nuscomputingdev.github.io/comclub-website-2024/articles/bizcom_league.jpg',
},
'freshman_social_camp': {
'title': 'Freshman Social Camp',
'body': fsc_body,
'link': 'freshman_social_camp',
'imgSrc': '/announcements/fsc.jpg'
},
'freshman_orientation_camp': {
'title': 'Freshman Orientation Camp',
'body': fow_body,
'link': 'freshman_orientation_camp',
'imgSrc': '/announcements/fow.jpg'
},
'freshman_finale_camp': {
'title': 'Freshman Finale Camp',
'body': ffc_body,
'link': 'freshman_finale_camp',
'imgSrc': '/announcements/ffc.jpg'
},
'computing_bash': {
'title': 'Computing Bash',
'body': bash_body,
'link': 'computing_bash',
'imgSrc': '/announcements/bash.jpg'
},
}
json.dump(articles, open('articles.json', 'w+'))
2 changes: 1 addition & 1 deletion src/pages/home/AnnouncementsCard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ export default function AnnouncementsCard(props: AnnouncementsCardProps) {
<h3>{props.date}</h3>
<p>{props.desc}</p>
<h4>
<Link to={props.link}>Read More</Link>
<Link to={props.link}>Read More</Link>
</h4>
</div>
</div>
Expand Down
108 changes: 54 additions & 54 deletions src/pages/home/Carousel.tsx
Original file line number Diff line number Diff line change
@@ -1,35 +1,35 @@
import React from "react";
import Slider from "react-slick";
import React from 'react';
import Slider from 'react-slick';
import AnnouncementsCard from './AnnouncementsCard';
import './Carousel.css';
import { GoChevronLeft, GoChevronRight } from "react-icons/go";
import { GoChevronLeft, GoChevronRight } from 'react-icons/go';
import announcements from './announcements.json' with {type: 'json'};


function NextArrow(props) {
const { className, style, onClick } = props;
return (
const { className, style, onClick } = props;
return (
<div
className={className}
onClick={onClick}>
<GoChevronRight className='arrows' />
</div>
);
}

function PrevArrow(props) {
const { className, style, onClick } = props;
return (
<div
className={className}
onClick={onClick}>
<GoChevronRight className="arrows" />
</div>
);
}

function PrevArrow(props) {
const { className, style, onClick } = props;
return (
<div
className={className}
onClick={onClick}>
<GoChevronLeft className="arrows"/></div>
);
}
className={className}
onClick={onClick}>
<GoChevronLeft className='arrows'/></div>
);
}


export default function Carousel() {
var settings = {
const settings = {
dots: true,
infinite: true,
speed: 500,
Expand All @@ -38,43 +38,43 @@ export default function Carousel() {
nextArrow: <NextArrow />,
prevArrow: <PrevArrow />,
responsive: [
{
breakpoint: 1200,
settings: {
slidesToShow: 1,
slidesToScroll: 1,
initialSlide: 1
}
{
breakpoint: 1200,
settings: {
slidesToShow: 1,
slidesToScroll: 1,
initialSlide: 1,
},
},
{
breakpoint: 800,
settings: {
slidesToShow: 1,
slidesToScroll: 1,
initialSlide: 1,
nextArrow: false,
prevArrow: false,
},
{
breakpoint: 800,
settings: {
slidesToShow: 1,
slidesToScroll: 1,
initialSlide: 1,
nextArrow: false,
prevArrow: false
}
}
]
},
],
};


return (
<div className="slider-container">
<Slider {...settings}>
{announcements.map((announcement, index) => (
<div className='item' key={index}>
<AnnouncementsCard
title={announcement.title}
desc={announcement.desc}
date={announcement.date}
imgSrc={announcement.imgSrc}
link='./'
/>
</div>
))}
</Slider>
<div className='slider-container'>
<Slider {...settings}>
{announcements.map((announcement, index) => (
<div className='item' key={index}>
<AnnouncementsCard
title={announcement.title}
desc={announcement.desc}
date={announcement.date}
imgSrc={announcement.imgSrc}
link={announcement.link}
/>
</div>
))}
</Slider>
</div>
);
}
12 changes: 8 additions & 4 deletions src/pages/home/announcements.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,24 +3,28 @@
"title": "Freshman Social Camp (FSC)",
"desc": "FSC is crafted to kickstart your university journey with enduring friendships and unforgettable experiences. Engage in a variety of physical and intellectual games, participate in team bonding exercises, and compete for exciting team and individual prizes. You will also have the opportunity to attend the beach finale event Bash together with your new friends, solidifying your friendships.",
"date": "19th June - 22nd June 2024",
"imgSrc": "announcements/fsc.jpg"
"imgSrc": "announcements/fsc.jpg",
"link": "./events/freshman_social_camp"
},
{
"title": "Freshman Orientation Week (FOW)",
"desc": "FOW is a 4-day physical orientation camp where seniors help freshmen adapt to different aspects of university life through preparatory talks and team-building activities. Forge lasting friendships as you navigate campus resources and academic challenges together. Look forward to strategic team games that develop you both intellectually and physically.",
"date": "24th July - 27th July 2024",
"imgSrc": "announcements/fow.jpg"
"imgSrc": "announcements/fow.jpg",
"link": "./events/freshman_orientation_camp"
},
{
"title": "Freshman Finale Camp (FFC)",
"desc": "FFC is a 3-day physical summer camp, perfectly tailored for international students gearing up for matriculation closer to August. The camp offers an array of theme-based activities such as flag-building and exhilarating house face-offs. Engage in friendly competition alongside your housemates, strategizing to earn glory for your elemental faction in a series of thrilling challenges. End the camp on a high note with its campfire and barbecue finale under the stars.",
"date": "5th August - 7th August 2024",
"imgSrc": "announcements/ffc.jpg"
"imgSrc": "announcements/ffc.jpg",
"link": "./events/freshman_finale_camp"
},
{
"title": "Computing Bash",
"desc": "FFC is a 3-day physical summer camp, perfectly tailored for international students gearing up for matriculation closer to August. The camp offers an array of theme-based activities such as flag-building and exhilarating house face-offs. Engage in friendly competition alongside your housemates, strategizing to earn glory for your elemental faction in a series of thrilling challenges. End the camp on a high note with its campfire and barbecue finale under the stars.",
"date": "16th August 2024",
"imgSrc": "announcements/bash.jpg"
"imgSrc": "announcements/bash.jpg",
"link": "./events/computing_bash"
}
]

0 comments on commit 6bc7fd7

Please sign in to comment.