Skip to content
Snippets Groups Projects
Commit 72121078 authored by hannahl8's avatar hannahl8
Browse files

update sign up page for professors

parent f4b10d87
No related branches found
No related tags found
No related merge requests found
Pipeline #10812 passed
......@@ -20,8 +20,8 @@ interface FormValues {
password: string;
confirmPassword: string;
collegeId: number;
majorId: number;
addLab: boolean;
majorId: number;
labName: string;
labUrl: string;
labDescription: string;
......@@ -34,8 +34,8 @@ const initialValues: FormValues = {
password: '',
confirmPassword: '',
collegeId: 1,
majorId: 1,
addLab: false,
majorId: 1,
labName: '',
labUrl: '',
labDescription: ''
......@@ -55,8 +55,7 @@ const validationSchema = object({
confirmPassword: string()
.oneOf([ref('password')], 'Passwords must match.')
.required('Confirm password is required.'),
collegeId: number().required('College is required'),
majorId: number().required('Major is required')
collegeId: number().required('College is required')
});
export default function SignUpProfessorPage() {
......@@ -80,27 +79,49 @@ export default function SignUpProfessorPage() {
actions.setSubmitting(false);
} else {
setSignupStatus("PENDING");
const signUpResponse: SignUpResponse =
await signUp({
username: values.email,
password: values.password,
role: "PROFESSOR",
firstName: values.firstName,
lastName: values.lastName,
email: values.email,
collegeId: values.collegeId,
majorId: values.majorId,
labName: values.labName,
labUrl: values.labUrl,
labDescription: values.labDescription
});
if (!signUpResponse.success) {
setSignupStatus("SERVER_ERROR");
setServerErrorMessage(signUpResponse.message);
let signUpResponse: SignUpResponse;
if (values.addLab) {
signUpResponse =
await signUp({
username: values.email,
password: values.password,
role: "PROFESSOR",
firstName: values.firstName,
lastName: values.lastName,
email: values.email,
collegeId: values.collegeId,
majorId: values.majorId,
labName: values.labName,
labUrl: values.labUrl,
labDescription: values.labDescription
});
if (!signUpResponse.success) {
setSignupStatus("SERVER_ERROR");
setServerErrorMessage(signUpResponse.message);
} else {
setSignupStatus("OK");
await sleep(1000);
navigate(`${signupConfirmationPagePath}`);
}
} else {
setSignupStatus("OK");
await sleep(1000);
navigate(`${signupConfirmationPagePath}`);
signUpResponse =
await signUp({
username: values.email,
password: values.password,
role: "PROFESSOR",
firstName: values.firstName,
lastName: values.lastName,
email: values.email,
collegeId: values.collegeId
});
if (!signUpResponse.success) {
setSignupStatus("SERVER_ERROR");
setServerErrorMessage(signUpResponse.message);
} else {
setSignupStatus("OK");
await sleep(1000);
navigate(`${signupConfirmationPagePath}`);
}
}
}
};
......@@ -125,12 +146,12 @@ export default function SignUpProfessorPage() {
<TextInput label="Confirm Password" name="confirmPassword" type="password"/>
<SelectInput label="College:" name="collegeId" options={colleges}></SelectInput>
<SelectInput label="Major:" name="majorId" options={majors}></SelectInput>
<CheckboxInput label="Add Research Lab?" id="addLab" name="addLab"/>
{values.addLab && (
<>
<SelectInput label="Major:" name="majorId" options={majors}></SelectInput>
<TextInput label="Research Lab Name" name="labName"/>
<TextInput label="Research Lab Website URL" name="labUrl" type="url"/>
<TextInput label="Research Lab Description" name="labDescription" type="textarea"/>
......
......@@ -89,7 +89,7 @@ export interface SignupForm {
lastName: string,
email: string,
year?: string, // Student
majorId: number,
majorId?: number, // Student
aboutMe?: string, // Student
collegeId?: number, // Professor
labName?: string, // Professor
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment