Skip to content

Commit 8fccf97

Browse files
authored
New sponsors page (#302)
* created new sponsors page * added logos and colour * added mobile responsiveness
1 parent 2e79f13 commit 8fccf97

File tree

5 files changed

+265
-0
lines changed

5 files changed

+265
-0
lines changed

next/public/assets/sponsors_white/atl.svg

Lines changed: 9 additions & 0 deletions
Loading

next/public/assets/sponsors_white/deloitte.svg

Lines changed: 14 additions & 0 deletions
Loading

next/public/assets/sponsors_white/imc.svg

Lines changed: 9 additions & 0 deletions
Loading

next/public/assets/sponsors_white/js.svg

Lines changed: 14 additions & 0 deletions
Loading

next/src/pages/Sponsors2.tsx

Lines changed: 219 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,219 @@
1+
import React, { useState } from "react";
2+
import Image from "next/image";
3+
import Footer from "../components/footer/Footer";
4+
import Navbar from "../components/navbar/Navbar";
5+
import { NavbarOpenHandler, NavbarType } from "../components/navbar/types";
6+
import styled from 'styled-components'
7+
import Link from 'next/link'
8+
import { device } from '../styles/device'
9+
10+
11+
import Otter from '../svgs/otter.png'
12+
13+
const Text = styled.p`
14+
color: white;
15+
@media ${device.tablet} {
16+
padding: 3vh 0;
17+
}
18+
`
19+
20+
const Grid = styled.div`
21+
display: flex;
22+
justify-content: center;
23+
margin-left: auto;
24+
margin-right: auto;
25+
max-width: 70vw;
26+
max-width: 75vw;
27+
border-radius: 0.5rem;
28+
margin-bottom: 10vh;
29+
background: radial-gradient(50% 50% at 50% 50%, rgba(146, 67, 166, 0.2407) 0%, rgba(119, 158, 237, 0.83) 100%);
30+
31+
`
32+
33+
const SmallGrid = styled.div`
34+
display: flex;
35+
justify-content: center;
36+
flex-direction: column;
37+
flex: 2;
38+
@media ${device.tablet} {
39+
min-height: 100%;
40+
flex-wrap: wrap;
41+
flex-direction: row;
42+
flex: 3;
43+
}
44+
`
45+
46+
const OurSponsorsCol = styled.div`
47+
flex: 2;
48+
padding: 1.5rem;
49+
50+
`
51+
52+
const SponsorCol = styled.div`
53+
flex: 3;
54+
display: flex;
55+
justify-content: center;
56+
max-height: 100%;
57+
max-width: 100%;
58+
border-radius: 0.5rem;
59+
padding: 1vw;
60+
@media ${device.tablet} {
61+
flex-basis: calc(50% - 40px);
62+
flex-direction: column;
63+
padding: 8vh 0;
64+
}
65+
66+
67+
`
68+
69+
const TextContainer = styled.div`
70+
display:flex;
71+
flex-direction: column;
72+
justify-content: center;
73+
align-items: center;
74+
height: 100%;
75+
`
76+
77+
const ButtonContainer = styled.div`
78+
display: flex;
79+
`
80+
81+
const H3 = styled.div`
82+
color: white;
83+
font-family: 'Raleway';
84+
font-weight: 800;
85+
font-size: 20px;
86+
@media ${device.tablet} {
87+
font-size: 2vw;
88+
}
89+
`;
90+
91+
92+
const Button = styled.button`
93+
background-color: white;
94+
margin: 10px;
95+
padding: 1vh 2vw;
96+
font-size: 18px;
97+
color: #817fff;
98+
border: none;
99+
border-radius: 6px;
100+
cursor: pointer;
101+
102+
&:hover {
103+
transform: scale(1.05);
104+
}
105+
@media ${device.tablet} {
106+
padding: 10px 45px;
107+
}
108+
`
109+
110+
const ImgContainer = styled.div`
111+
112+
display: block;
113+
margin-left: auto;
114+
margin-right: auto;
115+
width: 30vw;
116+
117+
@media ${device.laptop} {
118+
width: 350px;
119+
height: 400px;
120+
}
121+
122+
`
123+
124+
const HeadingContainer = styled.div`
125+
display: flex;
126+
justify-content: center;
127+
`
128+
129+
const Heading = styled.div`
130+
color: #A09FE3;
131+
font-family: 'Raleway';
132+
font-weight: 800;
133+
font-size: 30px;
134+
padding: 5vh 0;
135+
@media ${device.tablet} {
136+
font-size: 2.8vw;
137+
}
138+
`;
139+
140+
141+
142+
export default function Sponsors2() {
143+
144+
const [navbarOpen, setNavbarOpen] = useState(false);
145+
146+
147+
const handleToggle: NavbarOpenHandler = () => {
148+
setNavbarOpen(!navbarOpen);
149+
};
150+
151+
return (
152+
<div>
153+
154+
<Navbar open={navbarOpen} setNavbarOpen={handleToggle} variant={NavbarType.MINIPAGE} />
155+
156+
<HeadingContainer>
157+
<Heading>Support CSESoc</Heading>
158+
</HeadingContainer>
159+
<ImgContainer>
160+
<Image src={Otter} />
161+
</ImgContainer>
162+
163+
<Grid>
164+
165+
<OurSponsorsCol>
166+
<TextContainer>
167+
<H3>Our Sponsors</H3>
168+
<Text>Check out our very cool sponsors</Text>
169+
<ButtonContainer>
170+
<Link href="/Sponsors">
171+
<Button>View our sponsors</Button>
172+
</Link>
173+
</ButtonContainer>
174+
</TextContainer>
175+
</OurSponsorsCol>
176+
177+
<SmallGrid>
178+
<SponsorCol style={{ backgroundColor: 'rgba(0, 71, 255, 0.33)' }}>
179+
<Image
180+
src={`/assets/sponsors_white/atl.svg`}
181+
width={100}
182+
height={30}
183+
objectFit="contain"
184+
/>
185+
</SponsorCol>
186+
<SponsorCol style={{ backgroundColor: 'rgba(82, 130, 255, 0.47)' }}>
187+
<Image
188+
src={`/assets/sponsors_white/imc.svg`}
189+
width={60}
190+
height={50}
191+
objectFit="contain"
192+
/>
193+
</SponsorCol>
194+
195+
<SponsorCol style={{ backgroundColor: 'rgba(48, 93, 255, 0.2)' }}>
196+
<Image
197+
src={`/assets/sponsors_white/deloitte.svg`}
198+
width={50}
199+
height={40}
200+
objectFit="contain"
201+
/>
202+
</SponsorCol>
203+
<SponsorCol style={{ backgroundColor: 'rgba(122, 137, 236, 0.27)' }}>
204+
<Image
205+
src={`/assets/sponsors_white/js.svg`}
206+
width={50}
207+
height={55}
208+
objectFit="contain"
209+
/>
210+
</SponsorCol>
211+
</SmallGrid>
212+
213+
</Grid>
214+
215+
<Footer />
216+
</div>
217+
);
218+
219+
}

0 commit comments

Comments
 (0)