Skip to content

Commit d977f32

Browse files
committed
all is well
1 parent cbb390f commit d977f32

File tree

5 files changed

+140
-39
lines changed

5 files changed

+140
-39
lines changed

common/questions.tsx

Lines changed: 116 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -584,51 +584,137 @@ export const PostAcceptanceFormSections: Array<QuestionSection | QuestionDefinit
584584
),
585585
makeShortText('firstName', 'First name', true, 'First name'),
586586
makeShortText('lastName', 'Last name', true, 'Last name'),
587-
makeDropdown('adult', 'Are you 18 years of age or older?', ['Yes', 'No'], true, 'Yes'),
588-
makeSection(
589-
<>Above 18 Signature</>,
590-
'Complete this section only if you are above 18 years of age. If you are not, type in "N/A" and complete the following section accompanied by a parent or guardian.'
591-
),
587+
// makeDropdown('adult', 'Are you 18 years of age or older?', ['Yes', 'No'], true, 'Yes'),
588+
// makeSection(
589+
// <>Above 18 Signature</>,
590+
// 'Complete this section only if you are above 18 years of age. If you are not, type in "N/A" and complete the following section accompanied by a parent or guardian.'
591+
// ),
592+
// makeShortText(
593+
// 'adultSignature',
594+
// <div>
595+
// <p>
596+
// By typing my full legal name below, I acknowledge that this represents my legal signature
597+
// and that I have read and agreed to the terms and conditions stated in the Participant
598+
// Waiver.
599+
// </p>
600+
// PARTICIPANT WAIVER:{' '}
601+
// <a href="http://bit.ly/3XjlJEz" target="_blank" rel="noreferrer">
602+
// bit.ly/3XjlJEz
603+
// </a>
604+
// </div>,
605+
// true,
606+
// 'First Last'
607+
// ),
608+
// makeSection(
609+
// <>Under 18 Signature</>,
610+
// 'Complete this section only if you are under 18 years of age. If you are 18 years of age or over, mark "N/A" for both fields.'
611+
// ),
592612
makeShortText(
593-
'adultSignature',
613+
'minorSignature',
594614
<div>
595615
<p>
596-
By typing my full legal name below, I acknowledge that this represents my legal signature
597-
and that I have read and agreed to the terms and conditions stated in the Participant
598-
Waiver.
616+
Attendee: I acknowledge that I am above 13 and that I have read and agreed to the terms and
617+
conditions stated in the Participant Waiver.
599618
</p>
600619
PARTICIPANT WAIVER:{' '}
601-
<a href="http://bit.ly/3XjlJEz" target="_blank" rel="noreferrer">
602-
bit.ly/3XjlJEz
620+
<a href="https://bit.ly/45hPv2G" target="_blank" rel="noreferrer">
621+
bit.ly/45hPv2G
603622
</a>
604623
</div>,
605624
true,
606625
'First Last'
607626
),
608-
makeSection(
609-
<>Under 18 Signature</>,
610-
'Complete this section only if you are under 18 years of age. If you are 18 years of age or over, mark "N/A" for both fields.'
627+
// makeShortText(
628+
// 'guardianSignature',
629+
// 'Guardian: I acknowledge that I am above 18 years of age. I have read and agreed to the terms and conditions stated in the Participant Waiver and will make sure the attendee follows the platform usage defined in the Media & Platform Release.',
630+
// true,
631+
// 'First Last'
632+
// ),
633+
makeShortText('email', 'Email', true, 'email@example.com'),
634+
makeShortText('phoneNumber', 'Phone Number', true, 'Phone Number'),
635+
makeShortText('age', 'Age', true, 'Enter your age'),
636+
makeDropdown(
637+
'school',
638+
'School',
639+
Object.values(School).sort((a, b) => {
640+
if (a === School['Northeastern University']) return -1;
641+
if (b === School['Northeastern University']) return 1;
642+
643+
if (a === School['Other']) return 1;
644+
if (b === School['Other']) return -1;
645+
return a.localeCompare(b);
646+
}),
647+
true,
648+
'School'
611649
),
612-
makeShortText(
613-
'minorSignature',
614-
<div>
615-
<p>
616-
Attendee: I acknowledge that I am above 13 and that I have read and agreed to the terms and
617-
conditions stated in the Participant Waiver.
618-
</p>
619-
PARTICIPANT WAIVER:{' '}
620-
<a href="http://bit.ly/3XjlJEz" target="_blank" rel="noreferrer">
621-
bit.ly/3XjlJEz
650+
makeDropdown(
651+
'levelOfStudy',
652+
'Level of Study',
653+
Object.values(YearOfEducation),
654+
true,
655+
'Level of Study'
656+
),
657+
makeShortText('countryOfResidence', 'Country of Residence', true, 'Country of Residence'),
658+
makeSection(<>MLH Policies</>),
659+
makeCheckbox(
660+
'mlhCodeOfConduct',
661+
<p>
662+
I have read and agree to the{' '}
663+
<a
664+
href="https://github.com/MLH/mlh-policies/blob/main/code-of-conduct.md"
665+
target="_blank"
666+
rel="noopener noreferrer"
667+
style={{ color: '#1890ff', textDecoration: 'underline' }}
668+
>
669+
MLH Code of Conduct
622670
</a>
623-
</div>,
671+
</p>,
672+
[YesOrNo.Yes],
624673
true,
625-
'First Last'
674+
1
626675
),
627-
makeShortText(
628-
'guardianSignature',
629-
'Guardian: I acknowledge that I am above 18 years of age. I have read and agreed to the terms and conditions stated in the Participant Waiver and will make sure the attendee follows the platform usage defined in the Media & Platform Release.',
676+
makeCheckbox(
677+
'mlhApplicationSharingAuthorization',
678+
<p>
679+
I authorize you to share my application/registration information with Major League Hacking for
680+
event administration, ranking, and MLH administration in-line with the{' '}
681+
<a
682+
href="https://github.com/MLH/mlh-policies/blob/main/privacy-policy.md"
683+
target="_blank"
684+
rel="noopener noreferrer"
685+
style={{ color: '#1890ff', textDecoration: 'underline' }}
686+
>
687+
MLH Privacy Policy
688+
</a>
689+
. I further agree to the terms of both the{' '}
690+
<a
691+
href="https://github.com/MLH/mlh-policies/blob/main/contest-terms.md"
692+
target="_blank"
693+
rel="noopener noreferrer"
694+
style={{ color: '#1890ff', textDecoration: 'underline' }}
695+
>
696+
MLH Contest Terms and Conditions
697+
</a>{' '}
698+
and the{' '}
699+
<a
700+
href="https://github.com/MLH/mlh-policies/blob/main/privacy-policy.md"
701+
target="_blank"
702+
rel="noopener noreferrer"
703+
style={{ color: '#1890ff', textDecoration: 'underline' }}
704+
>
705+
MLH Privacy Policy
706+
</a>
707+
</p>,
708+
[YesOrNo.Yes],
630709
true,
631-
'First Last'
710+
1
711+
),
712+
makeCheckbox(
713+
'mlhMarketingAuthorization',
714+
'I authorize MLH to send me occasional emails about relevant events, career opportunities, and community announcements.',
715+
[YesOrNo.Yes],
716+
true,
717+
1
632718
),
633719
];
634720

common/types.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,15 @@ export interface PostAcceptanceResponses extends SharedResponses {
4141
minorSignature?: string;
4242
guardianSignature?: string;
4343
hangingWithFriends?: HangingWithFriends;
44+
email?: string;
45+
phoneNumber?: string;
46+
age?: string;
47+
school?: School;
48+
levelOfStudy?: YearOfEducation;
49+
countryOfResidence?: string;
50+
mlhCodeOfConduct?: Array<string>;
51+
mlhApplicationSharingAuthorization?: Array<string>;
52+
mlhMarketingAuthorization?: Array<string>;
4453
zombieApocalypse?: ZombieApocalypse;
4554
takeOverNation?: TakeOverNation;
4655
aspirations?: Aspirations;

components/application/PostAcceptanceForm.tsx

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ export const PostAcceptanceForm: React.FC = () => {
1919
const { data: confirmByData } = useSWR('/api/v1/dates/confirm-by', getConfirmBy);
2020
const { data: submitted } = useSWR('/api/v1/status', getStatus);
2121

22+
const confirmBy = new Date(confirmByData.data);
23+
confirmBy.setHours(confirmBy.getHours() - 5);
24+
2225
return (
2326
<>
2427
<h1 className="app-header">Application Page</h1>
@@ -30,7 +33,7 @@ export const PostAcceptanceForm: React.FC = () => {
3033
<Form.Item noStyle>
3134
{confirmByData && (
3235
<p>
33-
This RSVP form is DUE <strong>{formatDate(new Date(confirmByData.data))}</strong>.
36+
This RSVP form is DUE <strong>{formatDate(new Date(confirmBy))}</strong>.
3437
</p>
3538
)}
3639
</Form.Item>
@@ -71,10 +74,10 @@ const AttendingForm: React.FC<AttendingFormProps> = ({ setAttendingState }) => {
7174
<p style={{ textAlign: 'center' }}>
7275
Please select if you will be attending HackBeanpot on the weekend of{' '}
7376
{/* TODO update location */}
74-
<strong>February 13 - 15th, 2026 at Northeastern University Campus in Boston, MA</strong> .
75-
Please keep in mind, the event this year is <strong>NOT</strong> overnight. Northeastern
76-
University Campus is available for use from <strong>8:00 am - 11:00 pm</strong>. As such,
77-
please arrange for appropriate accomodations during the event.
77+
<strong>February 13 - 15th, 2026 at the Maven AGI office in Boston, MA</strong> . Please
78+
keep in mind, the event this year is <strong>NOT</strong> overnight. The Maven AGI office is
79+
available for use from <strong>8:00 am - 10:00 pm</strong>. As such, please arrange for
80+
appropriate accomodations during the event.
7881
</p>
7982
<p>
8083
If you cannot make it, please select {'"No"'} so that we can admit others on the wait list

components/questions/short-test-question/ShortTextQuestion.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ type ShortTextProps = {
99
};
1010

1111
const ShortTextQuestion: FC<ShortTextProps> = ({ question, form, disabled }) => {
12+
const isNumberInput = question.field === 'age';
1213
return (
1314
<Form.Item
1415
data-testid="shortText-question"
@@ -22,6 +23,7 @@ const ShortTextQuestion: FC<ShortTextProps> = ({ question, form, disabled }) =>
2223
data-testid="inputText3"
2324
disabled={disabled}
2425
placeholder={question.placeholder}
26+
type={isNumberInput ? 'number' : 'text'}
2527
onChange={(e) => form.setFieldsValue({ [question.id]: e.target.value as string })}
2628
/>
2729
</Form.Item>

pages/application.tsx

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -86,10 +86,11 @@ const FormDecider: React.FC<FormDeciderProps> = ({
8686
}
8787

8888
if (
89-
confirmByState === ConfirmByState.Before &&
90-
decisionStatus === DecisionStatus.Admitted &&
91-
rsvpStatus === RSVPStatus.Unconfirmed &&
92-
showDecisionState
89+
// confirmByState === ConfirmByState.Before &&
90+
// decisionStatus === DecisionStatus.Admitted &&
91+
// rsvpStatus === RSVPStatus.Unconfirmed &&
92+
// showDecisionState
93+
true
9394
) {
9495
return <PostAcceptanceForm />;
9596
}

0 commit comments

Comments
 (0)