-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
rqa5hb Recruitment Form #161
Open
sashco-m
wants to merge
55
commits into
main
Choose a base branch
from
rqa5hb_implement_recruitment_form
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…an' of github.com:waterloop/waterloop-website into CU-rt3ce6_Implement-Frontend-For-Form_Lavan-Aidan-Sumanan
✅ Deploy Preview for waterloop ready!
To edit notification comments on pull requests, go to your Netlify site settings. |
Fixed both problems mentioned in PR: updated formatting and added loading spinner |
Thanks Sashco! Really appreciate your work on getting this feature to work :) |
sashco-m
commented
Feb 2, 2023
sashco-m
commented
Feb 2, 2023
sashco-m
commented
Feb 2, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Ticket: https://app.clickup.com/t/rqa5hb
This is going to contain instructions to test this whole recruitment process end to end (as of Jan 26 2023), suggest improvements, and where to do them.
SETUP
Have
exective-dashboard
,waterloop-cms
andwaterloop-website
all running locally. Follow the readme's. It should be fine to haveexecutive-dashboard
andwaterloop-cms
onmaster
. It is genuinely possible that your computer may not have enough RAM to run all 3 at the same time. Mine can barely. Be careful opening new chrome tabs.Search on slack for usual setup issues, including environment variables (which are needed for both
executive-dashboard
andwaterloop-cms
.LET'S GET STARTED
waterloop-cms
frontend. The first step is to create a new posting for the current term. This will then appear onwaterloop-website
.a) On the CMS home page, click the notepad button under
current openings
b) Click new opening
c) Give it a name, the correct term, and then save it
d) By default the job is set to closed. Set it to open so we can see it on
waterloop-website
waterloop-website
frontend. Click job postings, then you should see the job you've added. If not, make sure you created it for the correct term (the current term). Clickmore info
a) Now we have the posting detail. Hit
apply
CHECKPOINT (content added in this PR)
b) Now we've reached the recruitment form. THIS is the meat and potatoes of this PR. Fill it out, and be sure to upload a pdf in the resume section. Any pdf works.
c) It'll say the name of the pdf if it uploaded properly. Open the
network
table in chrome devtools to see what happens behind the scenes when you clicksubmit
a) We see two http requests are made. One to
executive-dashboard
'sresume
endpoint, for uploading the resume. This returns a google drive link to the resume. We also see anapplication
call, which puts the application itself (including the resume link) inside the executive-dashboard dbb) The payload should look like this. Sidenote: you likely have access to that resume link. If you're curious, its under the
external
google drive underWEB TEAM
.c) A popup is shown after a long wait. Accepting returns back to the home screen.
PROBLEMS
The form is formatted funky. To fix this, styling changes would have to be made in the recruitment form,src/components/RecruitmentForm/RecruitmentForm.tsx
2.~~ The api calls after hitting
submit
take time. If you're curious, they happen atsrc/components/RecruitmentForm/hooks/recruitment-form.ts
. There needs to be some kind of feedback, it could be a spinning button, the whole application form spinning, some kind of notification, anything. ~~a)
One easy way to do this is to have anisApplying
field in the redux store. We then have an action that sets this field totrue
after hitting apply, which then some logic on the front end displays some message. Once we receive either a success/fail, we can have an action that sets it tofalse
. What I'm describing sounds simple, but the code has grown so confusing from having several generations of waterloop developers work on this, so it may not be simple.IMPORTANT FILES
src/components/RecruitmentForm/RecruitmentForm.tsx
src/components/RecruitmentForm/hooks/recruitment-form.ts
. This file is awful. Luckily, to fix these issues you shouldn't have to touch/understand much.src/pages/Recruitment/RecruitmentApplicantForm.tsx
, which is the parent component of the recruitment form. Notably, it's where theonSuccess
function that displays the success alert lives.NOTES
In theory you should be able to see this application from the executive-dashboard FE. I don't have enough knowledge to test that out.