Skip to content

Commit adffe05

Browse files
authored
Merge pull request #188 from ctfguide-tech/dev
feat: auth updates
2 parents 6437e5b + 1e8f167 commit adffe05

File tree

4 files changed

+120
-122
lines changed

4 files changed

+120
-122
lines changed

src/components/onboarding/DataAsk.jsx

+6-13
Original file line numberDiff line numberDiff line change
@@ -55,16 +55,9 @@ export function DataAsk(props) {
5555
const newDateStr = `${parts[1]}-${parts[2]}-${parts[0]}`;
5656
localStorage.setItem('username', document.getElementById('username').value.toLowerCase());
5757
localStorage.setItem('birthday', newDateStr);
58-
localStorage.setItem(
59-
'firstname',
60-
document.getElementById('firstname').value
61-
);
62-
localStorage.setItem(
63-
'lastname',
64-
document.getElementById('lastname').value
65-
);
58+
6659

67-
if (!username || !birthday || !firstname || !lastname || !termsAgreement) {
60+
if (!username || !birthday || !termsAgreement) {
6861

6962
toast.error("Fill all fields.");
7063
setIsLoading(false);
@@ -109,8 +102,8 @@ export function DataAsk(props) {
109102
password: props.password,
110103
username,
111104
birthday,
112-
firstName: firstname,
113-
lastName: lastname,
105+
firstName: firstname || "???",
106+
lastName: lastname || "???",
114107
location: "???",
115108
accountType: props.accountType
116109
}
@@ -217,7 +210,7 @@ export function DataAsk(props) {
217210
htmlFor="job-title"
218211
className="block text-xs font-medium text-white"
219212
>
220-
Full Name
213+
Full Name (Optional)
221214
</label>
222215
<div className='flex gap-x-4'>
223216
<input
@@ -285,7 +278,7 @@ export function DataAsk(props) {
285278
}
286279
</button>
287280

288-
<p className='text-sm text-neutral-500 hover:text-white hover:cursor-pointer mt-4' onClick={logout}><i className="fas fa-sign-out-alt"></i> Logout</p>
281+
<p className='text-sm text-neutral-500 hover:text-white hover:cursor-pointer mt-4' onClick={() => window.location.href = '/login'}><i className="fas fa-sign-out-alt"></i> Logout</p>
289282
</div>
290283
</div>
291284
</div>

src/components/onboarding/DataAskPart2.jsx

+1-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@ import { Container } from '@/components/Container';
22
export function DataAskPart2() {
33
function submitData() {
44
if (
5-
!document.getElementById('legal').value ||
6-
!document.getElementById('country').value
5+
!document.getElementById('legal').value
76
) {
87
window.alert('Please fill out all fields.');
98
return;

src/pages/careers.jsx

+113-105
Original file line numberDiff line numberDiff line change
@@ -116,137 +116,145 @@ export default function Careers() {
116116
</Head>
117117

118118
<Header />
119-
<main>
120-
<div className=" mx-auto mt-20 mb-20 w-full max-w-6xl text-center">
121-
<p className="mt-2 text-4xl font-bold text-white sm:text-4xl">
122-
Work for
123-
<span className="mt-2 text-4xl font-bold tracking-tight text-blue-600 sm:text-4xl">
124-
&nbsp;CTFGuide
119+
<main >
120+
<div style={{ backgroundImage: "url('https://formlabs-media.formlabs.com/filer_public_thumbnails/filer_public/67/16/67160d62-3040-4c77-9eca-a0be6bfa919a/pennstate_render_exterior.jpg__1354x0_q85_subsampling-2.jpg')", backgroundSize: 'cover', backgroundPosition: 'center' }}>
121+
<div className=" py-20 w-full text-left" style={{ backgroundColor: 'rgba(0, 0, 0, 0.7)' }}>
122+
<div className='max-w-7xl mx-auto'>
123+
<p className=" text-4xl font-bold text-white sm:text-4xl">
124+
careers@
125+
<span className="mt-2 text-4xl text-blue-600 font-bold tracking-tight sm:text-4xl">
126+
CTFGuide
125127
</span>
126128
</p>
127-
<p className="mt-2 text-xl px-10 text-white ">
128-
We're dedicated to providing a space where students can learn,
129-
teachers can teach, and professionals can compete in the
130-
ever-emerging field of Cybersecurity
129+
<p className="mt-1 text-xl text-white ">
130+
Join the company that's building the modern cybersecurity upskilling platform.
131131
</p>
132+
</div>
132133
</div>
133-
134+
</div>
134135
{/*
135136
sm is for "smaller" devices
136137
*/}
137-
<div
138-
className=" mb-12 mx-auto grid max-w-7xl grid-cols-1 gap-4 text-center md:grid-cols-3 lg:grid-cols-3">
139-
{team.map((person) => {
140-
return (
141-
<PersonCard person={person} />
142-
);
143-
})}
144-
</div>
145138

146-
<div
147-
className="overflow-hidden py-14 sm:py-22"
148-
style={{ backgroundColor: '#212121' }}
149-
>
150-
<div>
151-
<p className="text-center text-3xl font-bold text-white sm:text-4xl">
152-
Open Positions
153-
</p>
139+
<div className='max-w-7xl mx-auto text-white mt-10 grid sm:grid-cols-6 grid-cols-1 gap-x-8'>
140+
<div className='col-span-2 w-full'>
141+
<p className='text-2xl font-bold'>Our Team</p>
142+
<div className='mt-4 flex flex-col gap-1 text-lg'>
143+
<div className='w-full bg-neutral-800 py-4 px-4 flex'>
144+
<p>Pranav Ramesh</p>
145+
<p className='text-white bg-blue-700 px-4 rounded-md ml-auto'>Founder, CEO</p>
146+
</div>
147+
<div className='w-full bg-neutral-800 py-4 px-4 flex'>
148+
<p>Abhi Byreddy</p>
149+
<p className='text-white bg-blue-700 px-4 rounded-md ml-auto'>Co-Founder, COO</p>
150+
</div>
151+
<div className='w-full bg-neutral-800 py-4 px-4 flex'>
152+
<p>Jiaming Wang</p>
153+
<p className='text-white bg-blue-700 px-4 rounded-md ml-auto'>CTO</p>
154+
</div>
155+
<div className='w-full bg-neutral-800 py-4 px-4 flex'>
156+
<p>Mish Adelanwa</p>
157+
<p className='text-white bg-blue-700 px-4 rounded-md ml-auto'>Advisor</p>
158+
</div>
159+
<div className='w-full bg-neutral-800 py-4 px-4 flex'>
160+
<p>Stephen Stefantos</p>
161+
<p className='text-white bg-blue-700 px-4 rounded-md ml-auto'>SWE</p>
162+
</div>
163+
164+
<div className='w-full bg-neutral-800 py-4 px-4 flex'>
165+
<p>Kshitij Kochhar</p>
166+
<p className='text-white bg-blue-700 px-4 rounded-md ml-auto'>SWE</p>
167+
</div>
168+
<div className='w-full bg-neutral-800 py-4 px-4 flex'>
169+
<p>Kristopher Hicks</p>
170+
<p className='text-white bg-blue-700 px-4 rounded-md ml-auto'>SWE</p>
171+
</div>
172+
<div className='w-full bg-neutral-800 py-4 px-4 flex'>
173+
<p>Josh Herron</p>
174+
<p className='text-white bg-blue-700 px-2 rounded-md ml-auto'>Infrastructure</p>
175+
</div>
176+
<div className='w-full bg-neutral-800 py-4 px-4 flex'>
177+
<p>Anindya Das</p>
178+
<p className='text-white bg-blue-700 px-2 rounded-md ml-auto'>SWE Intern</p>
179+
</div>
180+
<div className='w-full bg-neutral-800 py-4 px-4 flex'>
181+
<p>Sai Rangineeni</p>
182+
<p className='text-white bg-blue-700 px-2 rounded-md ml-auto'>SWE Intern</p>
183+
</div>
184+
<div className='w-full bg-neutral-800 py-4 px-4 flex'>
185+
<p>Ben Haulk</p>
186+
<p className='text-white bg-blue-700 px-2 rounded-md ml-auto'>SWE Intern</p>
187+
</div>
188+
<div className='w-full bg-neutral-800 py-4 px-4 flex'>
189+
<p>Travis Peck</p>
190+
<p className='text-white bg-blue-700 px-2 rounded-md ml-auto'>SWE Intern</p>
191+
</div>
192+
<div className='w-full bg-neutral-800 py-4 px-4 flex'>
193+
<p>Ishan Voleti</p>
194+
<p className='text-white bg-blue-700 px-2 rounded-md ml-auto'>SWE Intern</p>
195+
</div>
154196
</div>
197+
</div>
198+
199+
200+
201+
<div className='col-span-4'>
202+
<h1 className='text-2xl font-bold'>Working with us</h1>
203+
<p className='text-xl mt-4'>
204+
We're all about open, collaborative, and inclusive culture. We believe in learning from each other and the power of community.
205+
<br></br><br></br>
206+
Our team? Learners, not know-it-alls. We're after people who want to grow, not those who think they've got it all figured out.
207+
<br></br><br></br>
208+
We're remote-friendly, but a lot of us are in State College, PA. Work where you work best - remote, in-office, or a mix of both.
155209

156-
<div id="listings" className="mx-auto mt-4 max-w-6xl">
157-
{listings.map((job) => {
158-
return (
159-
<div
160-
className="card my-auto rounded-lg text-white "
161-
style={{ backgroundColor: '#161716' }}
162-
>
163-
<div className="my-auto mx-auto mt-6 grid px-6 py-5">
164-
<div>
165-
<h1 className=" text-xl">{job.team}</h1>
166-
<h1 className="text-3xl font-semibold">{job.roleName}</h1>
167-
<p>{job.type} - {job.position}</p>
168-
</div>
210+
</p>
211+
<h1 className='mt-10 text-2xl font-bold'>Open Positions</h1>
212+
<p>
213+
Applications require you to login with your Google account.
214+
</p>
215+
<div className='mt-4 bg-neutral-800 p-4 rounded-md flex justify-between items-center'>
216+
<div className='flex flex-col'>
217+
<h1 className='text-xl font-bold'>Backend SWE</h1>
218+
<p className='text-sm'>Remote</p>
219+
</div>
169220

170-
<div className="ml-auto">
171-
<a
172-
href="mailto:[email protected]"
173-
className=" text-md justify-center rounded-full border border-transparent bg-blue-700 py-1 px-4 text-white hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2"
174-
>
175-
Apply
176-
</a>
177-
</div>
178-
</div>
179-
</div>
180-
);
181-
})}
221+
<div className='ml-auto'>
222+
<a href="https://forms.gle/AQrnizsKoyoG6Y1T7" className='bg-blue-700 px-4 py-2 rounded-md '>Apply</a>
182223
</div>
224+
</div>
183225

184-
{/*
185-
<label htmlFor="email" className="block text-sm font-medium text-gray-200 mb-2">
186-
Email
187-
</label>
188-
<div className="mt-1">
189-
<input
190-
style={{ backgroundColor: "#161716", borderWidth: "0px" }}
191-
id="email"
192-
name="email"
193-
type="text"
194-
autoComplete="email"
195-
required
196-
className="text-white block w-full appearance-none rounded-md border border-gray-300 px-3 py-2 placeholder-gray-400 shadow-sm focus:border-blue-500 focus:outline-none focus:ring-blue-500 sm:text-sm"
197-
/>
226+
<div className='mt-2 bg-neutral-800 p-4 rounded-md flex justify-between items-center'>
227+
<div className='flex flex-col'>
228+
<h1 className='text-xl font-bold'>Content Writer</h1>
229+
<p className='text-sm'>Remote</p>
198230
</div>
199231

200-
</div>
232+
<div className='ml-auto'>
233+
<a href="https://forms.gle/AQrnizsKoyoG6Y1T7" className='bg-blue-700 px-4 py-2 rounded-md '>Apply</a>
234+
</div>
235+
</div>
201236

202-
<div>
203-
<label htmlFor="email" className="block text-sm font-medium text-gray-200 mb-2">
204-
First Name
205-
</label>
206-
<div className="mt-1">
207-
<input
208-
style={{ backgroundColor: "#161716", borderWidth: "0px" }}
209-
id="FirstName"
210-
name="FirstName"
211-
type="text"
212-
autoComplete="FirstName"
213-
required
214-
className="text-white block w-full appearance-none rounded-md border border-gray-300 px-3 py-2 placeholder-gray-400 shadow-sm focus:border-blue-500 focus:outline-none focus:ring-blue-500 sm:text-sm"
215-
/>
237+
<div className='mt-2 bg-neutral-800 p-4 rounded-md flex justify-between items-center'>
238+
<div className='flex flex-col'>
239+
<h1 className='text-xl font-bold'>Infrastructure Engineer</h1>
240+
<p className='text-sm'>Remote</p>
216241
</div>
217-
</div>
218242

219-
<div>
220-
<label htmlFor="email" className="block text-sm font-medium text-gray-200 mb-2">
221-
Last Name
222-
</label>
223-
<div className="mt-1">
224-
<input
225-
style={{ backgroundColor: "#161716", borderWidth: "0px" }}
226-
id="LastName"
227-
name="LastName"
228-
type="text"
229-
autoComplete="LastName"
230-
required
231-
className="text-white block w-full appearance-none rounded-md border border-gray-300 px-3 py- placeholder-gray-400 shadow-sm focus:border-blue-500 focus:outline-none focus:ring-blue-500 sm:text-sm"
232-
/>
243+
<div className='ml-auto'>
244+
<a href="https://forms.gle/AQrnizsKoyoG6Y1T7" className='bg-blue-700 px-4 py-2 rounded-md '>Apply</a>
233245
</div>
246+
</div>
234247
</div>
235248

249+
236250
</div>
237-
238-
<div id="entity2">
239-
<h1 className="mt-2 text-3xl font-bold tracking-tight text-white sm:text-4xl py-3">Tell us about yourself!</h1>
240-
<textarea className='w-full h-full rounded-md px-4 py-3 text-white' style={{ backgroundColor: "#161716", borderWidth: "0px" }}></textarea>
241-
242-
</div>
251+
243252

244253

245-
</div>
246-
*/}
247-
</div>
248254
</main>
249255

256+
<div className="flex h-full w-full grow basis-0"></div>
257+
250258
<Footer />
251259
</>
252260
);

src/pages/register.jsx

-2
Original file line numberDiff line numberDiff line change
@@ -70,8 +70,6 @@ function Register() {
7070
setValidationMessage('Password must contain at least one lowercase letter.');
7171
} else if (!/[0-9]/.test(password)) {
7272
setValidationMessage('Password must contain at least one number.');
73-
} else if (!/[!@#$%^&*(),.?":{}|<>]/.test(password)) {
74-
setValidationMessage('Password must contain at least one special character.');
7573
} else {
7674
setValidationMessage('Looks good!');
7775
// make message green

0 commit comments

Comments
 (0)