Releases: KevFan/gym2-node-summer-project
Releases · KevFan/gym2-node-summer-project
Submission/Final
Class Scheduling
- Trainer
- Adding/Updating class session now subject to whether trainer is free at the dateTime selected
- Displays a error message if selected dateTime classes with another class session or assessment booking
- Added batch set weekly class session
- Can now view enrolled members in a class session
- Classes can be reassigned to another trainer through the update class form
- Adding/Updating class session now subject to whether trainer is free at the dateTime selected
- Member
- Past class session are now listed as unavailable
- Enrollment/Un-enrollment only on future class sessions only
Assessment Booking
- Member & Trainer
- Booking is now only added if trainer is free with no class or another booking at the date time selected
- However, no message is displayed on whether booking is added or not
- Booking is now only added if trainer is free with no class or another booking at the date time selected
Fitness Programme
- Trainer
- Can now build a programme with less than 5 exercise sessions
- A message will be displayed if attempting to build a programme again for a member, warning the trainer that any previous custom changes will be lost
- More fields to routine forms to allow adding cardio exercises
Misc
- Trainer & Member
- Relayout profile picture options
- Checks if cloudinary file is present, if not, options are disabled
- Navigation bar is now stackable
- More form validation to add/update forms
- Signup/Update email in settings is checked whether the email is already being used
- Signup/Login displays success/error messages
- Relayout profile picture options
- Trainer
- Dashboard now lists the next session of each class the trainer manages
- Full options button now bring up dropdown options instead of just the dropdown button
- Delete member - removes all member related info
- Overall project
- Most forEach loops are rewritten to use lodash functions instead
- Comments in controllers, model and utils
- Project can now be run without cloudinary file, logs a warning instead if not found
Workout Routines & Fitness Programmes
Workout Routines
- Trainer
- Create/Read/Update/Delete Workout Routines
- Create/Read/Update/Delete exercises to a workout routine
Fitness Programme
- Trainer
- Create fitness programme comprising of a selection of 5 classes, predetermined workout routines created by trainers or make a new routine from member dashboard
- Delete entire fitness programme or individual exercise sessions from the fitness programme
- Add/Delete/Edit individual exercises from the routines to tailor the routine for the member
- Member
- Fitness programme tab to view programme and individual exercises of the fitness programme
Misc
- Added some form validation
- Signup & Assessment Booking
- Won't add if fields are empty
- Signup & update settings - added confirm password field
- Won't update/add member if passwords don't match
- Signup & Assessment Booking
- Changed list goals to accordion/table view instead of card
Goals/Targets + Re-layout views
Goals
- Trainer
- Set goals for members
- Member
- Set goals for themselves
- Message prompt if member have no open or goals awaiting processing
- Goal status automatically set on member login / trainer view
- Open - if goal date is in the future
- Missed - if no assessment is found within past 3 days of goal date or didn't reach goal compared to the assessment found
- Achieved - if assessment is found with past 3 days of goal date and reached goal
- Awaiting processing - if goal date is today and no assessment is found within past 3 days (require trainer to add assessment today to process)
Overall project
- Re-layout views
- Member
- Dashboard now lists stats, assessments, bookings, goals
- Classes tab in navigation bar to see available classes
- Trainer
- Dashboard only lists trainer bookings for now - can add assessment from available options for booking
- Navigation now has classes tab for class options and members tab for member options such as add goal, booking or assessment
- Trainer can go into member dashboard to edit/add/delete goals, assessments, or bookings
- Separated add forms, update forms (to modals), edit options, search, into own partials
- Member
- Controllers
- Removed unused methods due to new view layout
- Separated methods into own controller (e.g search) or into utils helper (e.g. setGoalStatus)
- Utils
- Sort utils
- Sort array by date from most recent to oldest - used for goals
- Sort array by date from oldest to most recent - used for bookings and class sessions
- Sort utils
Assessment Booking
Trainer/Member
- Book assessment
- Update & Delete booking
- Settings to update account details
- Allow uploading profile picture
Trainer
- Search member
- Add assessment for member
- Update member assessments
Member
- Member Stats - BMI, Ideal Weight, BMI Category
Scheduled Classes
Trainer
- CRUD on scheduled classes & sessions
- Hide/Unhide class option
- Image url support for classes
Member
- View & Search scheduled classes
- Allow specific and all enroll/unenroll to class sessions
- Enrollment subject to available space and if not already enrolled