Skip to content
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

Add Custom Modules to Timetable #3373

Open
wants to merge 52 commits into
base: master
Choose a base branch
from

Conversation

seanlowjk
Copy link
Contributor

@seanlowjk seanlowjk commented Dec 15, 2021

Context

Resolves #2040

The idea is to implement custom modules for students who wish
to add modules that are not part of the NUS curriculum (DYOMs)
or TA classes. (Especially for SoC TAs)

Implementation

Timetable.-.NUSMods.-.Google.Chrome.2021-12-15.17-38-22.mp4

With guidance from @chrisgzf , we have developed a solution which allows
users to add their custom modules.

This is done via CustomLessons which are not readonly. As a result, we can
incorporate these custom lessons into the TimetablesState to be stored for future use.

Other Information

  1. Once this is integrated, will we need to integrate this feature as well with
    regards to the export feature?
  2. My engineering decisions have been briefly mentioned above. Do let me know
    if there is room for improvement.

TODOs

  • Add Component and Logic Tests

@vercel
Copy link

vercel bot commented Dec 15, 2021

This pull request is being automatically deployed with Vercel (learn more).
To see the status of your deployments, click below or on the icon next to each commit.

nusmods-export – ./export

🔍 Inspect: https://vercel.com/nusmodifications/nusmods-export/9B3jDfCy6eRvY5dn41WD5YahZGh8
✅ Preview: https://nusmods-export-git-fork-seanlowjk-feat-63966d-nusmodifications.vercel.app

@vercel
Copy link

vercel bot commented Dec 15, 2021

@seanlowjk is attempting to deploy a commit to the NUSMods Team on Vercel.

A member of the Team first needs to authorize it.

@codecov
Copy link

codecov bot commented Dec 15, 2021

Codecov Report

Merging #3373 (d75a7d9) into master (71c93aa) will increase coverage by 0.06%.
The diff coverage is 56.73%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #3373      +/-   ##
==========================================
+ Coverage   53.08%   53.15%   +0.06%     
==========================================
  Files         270      274       +4     
  Lines        5745     5941     +196     
  Branches     1327     1374      +47     
==========================================
+ Hits         3050     3158     +108     
- Misses       2695     2783      +88     
Impacted Files Coverage Δ
website/src/entry/export/TimetableOnly.tsx 0.00% <0.00%> (ø)
website/src/reducers/index.ts 100.00% <ø> (ø)
website/src/types/reducers.ts 100.00% <ø> (ø)
website/src/views/timetable/CustomModuleEdit.tsx 0.00% <0.00%> (ø)
website/src/views/timetable/ModuleTombstone.tsx 40.00% <ø> (ø)
website/src/views/timetable/ModulesSelect.tsx 80.00% <ø> (ø)
website/src/views/timetable/TimetableContent.tsx 50.40% <33.33%> (-3.73%) ⬇️
website/src/views/timetable/CustomModuleModal.tsx 47.31% <47.31%> (ø)
website/src/utils/modules.ts 96.92% <50.00%> (-1.49%) ⬇️
...ite/src/views/timetable/ModulesSelectContainer.tsx 68.42% <50.00%> (-2.17%) ⬇️
... and 9 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 71c93aa...d75a7d9. Read the comment docs.

@vimuthm
Copy link

vimuthm commented Aug 7, 2022

Hi, may I if this pr is being actively considered? I want a similar feature and found this pr to be adequate. Any changes or improvements to be made?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Feature: Add 'Custom Modules' to timetable
2 participants