Recruitment
Onboarding
Ticket 1
[Onboarding] - Hide Main Pages
Branch: Create a branch off of feature/onboarding
for everything related to onboarding.
Description
The onboarding page needs to be different from the main home page. We want to only show certain tabs if the user is in the onboarding phase. To see if a user is in the onboarding phase, we will have a list of checklists the user is a part of.
We will need a model for a checklist and will need to update the model for a user to include onboarding checklists. If the user has a checklist in their onboardingChecklists, only these three tabs will show up. Otherwise they will be on the normal finish line page
Model CheckList
Detail DescriptionBullet
subTasks CheckList[]
Model User
onboardingChecklists CheckList[]
Acceptance Criteria
The CheckList model has been created and the user model has been updated in the schema
The new homepage only shows up if there is a checklist in the onboardingChecklists array for a user
(It should look like this, don’t worry about the Onboard tab, just notice that all the tabs are gone except for those two specified above)
Ticket 2
[Onboarding] - Create Onboard Tab
Branch: Create a branch off of feature/onboarding
for everything related to onboarding.
Description
We need a tab for everything related to a user onboarding. This ticket is to create that tab and add a couple of the basic components in it. It should have the welcome text, the finish button which turns red when the progress bar is complete and the progress bar
You should create a component first for the progress bar which takes in a percent and has a bar with the appropriate length. Then use this component for the main progress bar on the Onboard page
Acceptance Criteria
There is welcome text at the top of the onboard tab
There is a new component for a progress bar which will properly fill up when given a percent value
There is a progress bar on the main page
There is a finish button that turns red when the progress bar is at 100, otherwise it is gray and disabled
Mocks
...
Ticket 3
[Onboarding] - Add onboarding, useful links, and questions blocks
Branch: Create a branch off of feature/onboarding
for everything related to onboarding.
Description
We want to add some information for the user who is onboarding. This ticket is to add that on the right side of the onboarding page according to the mocks. The text can be hardcoded for now (this will be changed later). You will have to call the getAllUsefulLinks
endpoint for the useful links however
Acceptance Criteria
There is a block for Onboarding and Questions with hard coded text
There is a useful links block which called the
getAllUsefulLinks
endpoint
Mocks
Ticket 4
[Onboarding] - Create reusable component for Checklist
Branch: Create a branch off of feature/onboarding
for everything related to onboarding.
Description
We need a component which we can use for all the different subteams to display a checklist. It should take in a CheckList
type and create a component as shown in the mocks. A checklist should have a dropdown which displays all of its tasks.
You will need to create a component for a CheckListTask
which is also a dropdown that shows all Subtasks. The CheckListTask should have a description and all of the subtasks as shown in the mocks. Some CheckListTasks have no subtasks, if so, look at the mocks to see how that is dealt with.
You should also create a component for a Subtask
to make it easier to display them all. (Check Boxes don’t have to be functional)
Acceptance Criteria
There is a component for a Subtask
There is a component for a CheckListTask
There is a component for a CheckList
There is a mock CheckList which is called in the frontend to be displayed
Mocks
Ticket 5
[Onboarding] - Make Check Boxes functional
Branch: Create a branch off of feature/onboarding
for everything related to onboarding.
Description
We want to be able to click a checkbox on a subtask. When all checkboxes are checked off on a subtask, the CheckListTask is automatically checked off. Note: A CheckListTask CANNOT be checked off to automatically check off all the subtasks. A CheckListTask can only be checked off if it has just a description and no SubTasks.
We also want to indicate if a CheckListTask has been completed by marking it as darker gray and moving it to the bottom of the list
Acceptance Criteria
If a user has completed all subtasks within a CheckListTask, then the overarching CheckListTask will be automatically checked off.
You can check off a CheckListTask that has no subtasks
When a CheckListTask is complete, it turns gray
When the user closes the drop-down, the completed task will fall to the bottom of the checklist
Mocks
...
Ticket 6
[Onboarding] - Make Progress bar reactive
Branch: Create a branch off of feature/onboarding
for everything related to onboarding.
Description
We have a progress bar to show the user how far they are in the onboarding process. Up until now, we have only been able to hard code values for the progress bar. This ticket is to make both the main progress bar and the specific checklist progress bars reactive to the number of completed checklist items.
The CheckList progress bar should only update every time a CheckListTask has been completed. The main progress bar should also be updated every time a CheckListTask has been completed but should be calculated based on the total number of CheckListTasks from all the CheckLists
Acceptance Criteria
The CheckList progress bars are updated every time a CheckListTask is completed or uncompleted
The main progress bar should be updated at the same time but should be calculated based on total number of CheckListTasks from all CheckLists
Mocks
...
Ticket 7
[Onboarding] - Create the ConfirmOnboardingChecklist
modal
Branch: Create a branch off of feature/onboarding
for everything related to onboarding.
Description
When a user clicks the finished button, a modal should pop up asking the user if they want to confirm they have completed everything. Clicking yes should change their role to be a member and send them to the main home page
Acceptance Criteria
There is a modal for
ConfirmOnboardingChecklist
When the user clicks yes, it changes their role to be a member and sends them to the main homepage
Mocks
...
Ticket 8
[Recruitment] - Create the ApplicationsTable
page
Description
When a user clicks the “Applications” tab, a spreadsheet dashboard should pop up listing all applications with the columns: First Name, Last Name, Email, Division, Team, and Status. It should resemble something like ChangeRequestsTable
.
Acceptance Criteria
There is a table listing out all current applications
There is an ability to filter based on columns
There is a search bar for finding specific rows
Ticket 9
[Recruitment] - Create the Applications
page
Description
When a user clicks the “Applications” tab, a spreadsheet dashboard should pop up listing all applications with the columns: First Name, Last Name, Email, Division, Team, and Status. There should also be two boxes listing total applications and accepted applications.
Acceptance Criteria
Uses
ApplicationsTable
componentLists out total applications and accepted applications
Set up the route to the page in the event handler for the applications tab in admin tools
Mocks
...