Validators need to be added to certain dialog fields so they're sent to the backend with the correct format. ### Field components - [ ] Input and datepicker need the "fluid" directive - [ ] Update `InputComponent` to use `ngModel` by importing `FormsModule` - [ ] Datepicker: change the format to always be "dd-MMM-yyyy" - [ ] Phone number: find or create an input field to ensure consistent formatting - [ ] Email: create an email input component ### Directives - [ ] Computing ID: applies an attribute of max length 32 ### Officers - [ ] Add student number to Officers Info - [ ] Computing ID: max length 32 - [ ] Student Number: max length 9 - [ ] Legal Name: max length 128 - [ ] Discord fields: max length 32 - [ ] Phone number: phone number validator/field - [ ] Google Drive: email validator, and ensure that it ends with `@gmail.com`, max length 256 - [ ] GitHub Username: max length 39 - [ ] Start/End date: validator that ensures the start date < end date - [ ] Nickname: max length 128 - [ ] Favourite courses/programming languages: max length 64 ### Elections - [ ] Only display active and upcoming elections - [ ] Slug: Max length of 64, but display the error on the "Election Name" field - [ ] Survey Link: max length 300 - [ ] Nominations/Start/End Voting: should default to be 1 week apart from each other - [ ] Start/End Voting should have dates blocked that would be before earlier start/end voting times ### Candidates/Nominees - [ ] Combine candidate/nominee tables into a single Candidates table - [ ] Group all candidates into their respective elections - [ ] Only show active and upcoming elections - [ ] Computing ID: max length 32 - [ ] Full Name: max length 64 - [ ] LinkedIn/Instagram: max length 128 - [ ] Email: email validator, max length 64 - [ ] Discord Username: max length 32
Validators need to be added to certain dialog fields so they're sent to the backend with the correct format.
Field components
InputComponentto usengModelby importingFormsModuleDirectives
Officers
@gmail.com, max length 256Elections
Candidates/Nominees