-
Notifications
You must be signed in to change notification settings - Fork 0
/
to_do.txt
247 lines (228 loc) · 5.79 KB
/
to_do.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
Landing Page
- tag line
- highlights
Course Catalog
- show remaining requirements unsatisfied in course catalog, click to display
courses that satisfy, show course that will fulfill multiple requirements
- fix column widths
Plan Page
- start tutorial after rules properly loaded (pop up with start tutorial button)
- print option
- https://ariejan.net/2007/01/19/print-this-page-with-ruby-on-rails/
- mobile options
- drop down of semester to add course to in left column
- slider to switch between semesters (where backpack is)
- dropdown course moving breaks if you move things to garbage
- $scope.courses becomes messed up when pushing course to it
- disable dropdown to garbage for now
- in course modal, show which requirements satisfies
- display rule description in modal, plus courses that satisfy
- ability to move courses within a semester around
- ability to hide a year
- for demo, allow saving plan to user's plans if logged in
- sort by tabs (university, college, major)
Rules Page
Profile Page
- allow input of grades, display gpa overall/per semester
- user information (GPA, transcripts, major)
Contact
- bug reporting (firebase?)
Courses
- save dept name as field
- prerequisites
- only show show more/less if it's been abbreviated
- editing of course info in ui
Rules
- get college/major info for rule from folder structure/name
- online/summer versions of classes should also work with rules
- updating rule (can only use up to 2 from same dept for breadths)
- remove course if used for rule and can only be used once
- all different combinations to decide which one to remove/use for a certain rule
- utility function of numRulesSatisfied, proportion of courses left to fulfill other requirements
- flag as an exclusive rule, which removes course from plan when checking rest
Plans
- autopopulate plans from user information (years of semester)
- selecting which rules you want
- share plan
- public flag
- allow nonowners to see if flag
- if nonowner, no drag/drop
- maybe don't show rules?
- don't show garbage
Semesters
- semester object should have year+fa/sp/su
Users
- save default major, semester/year start
- delete courses (admin)
- current plan field
Chores
- going through completed rules, make sure they work
- documentation
- refer to (http://stackoverflow.com/questions/2543979/example-of-a-well-documented-rails-project-and-or-best-pratices)
- more swagger
- tag rules by major
- clean up planscontroller
- more progressive data-ng-cloak
- tests
After First Release
- sample major plan
- when a course is offered
- able to flag a course under a certain rule
- handle ap/transfer
- UI for editing rules/yaml
- ability to add more semesters
- handling more than one major
- handling variable unit courses
- labeling pnp courses
Possible Features
- popular rules
- switch plans without reload
- ninjacourses/courserank semesterly calendar
- color code rules/courses (breadth, major, university)
- different gradients for semesters
- user picks color of classes, heavier load can tell by color (based on #units, diff reqs, etc)
Optional
Layout
- colors for flash messages
Course Filtering
- filter by course name first, then by title
- query partial matches across spaces
- sort courses beforehand in rails
- more efficient -> place garbage course in right place instead of sorting everything
- maybe don't use .concat?
- alphabetically sort course when swapping between query list and ones already in plan
Rule Checking
- make front-end checking more efficient
- fail fast
- check subrules at same time as main rule
Angular
- more consistent json object attribute accessing [] vs .
- separate courses and plans controller again (combined for sake of duplicate removal)
- switch over bootstrap js to angular ui js
- set default values for models set by promises/functions
- make sure that requests in order (don't compute on null values)
- data-ng-if
Rails
- clean up / comment out parts replaced by angular
- naming convention for partials (stick to camel or snake case)
Performance:
- maybe don't load everything at once and rely on http requests
- other majors?
- course modal information?
- maybe instead of passing full name of rule, pass rule ids
- for numcourses/units, compare tagged ids with rule id
- for course rule, pass course id with rule
- pass rule id with rule otherwise
- serialize tags as a string instead of x associations
Errors
404 not found - delete after checking
AGR CHM.299
BUDDSTD.98
BUDDSTD.99
BUDDSTD.C174
CHINESE.180
CHINESE.39
CHINESE.90
EA LANG.39A
EA LANG.39B
EA LANG.39C
EA LANG.39D
EA LANG.39E
EA LANG.39F
EA LANG.39G
EA LANG.39H
EA LANG.39I
EA LANG.39J
EA LANG.39K
EA LANG.39L
EA LANG.39M
EA LANG.39N
EA LANG.39O
EA LANG.39P
EA LANG.39Q
EA LANG.39R
EA LANG.39S
EA LANG.39T
EA LANG.39U
EA LANG.39V
EA LANG.39W
EA LANG.39X
EA LANG.39Y
EA LANG.39Z
EA LANG.98
EDUC.283C
EL ENG.C227A
EL ENG.C227B
IAS.105
IAS.105A
IAS.105B
IAS.115
IAS.155AC
IAS.156
IAS.20
INFO.207
INFO.211
INFO.24
INFO.271A
INFO.297
INFO.39
INFO.39A
INFO.39B
INFO.39C
INFO.39D
INFO.39E
INFO.39F
INFO.39G
INFO.39H
INFO.39I
INFO.39J
INFO.39K
INFO.39L
INFO.39M
INFO.39N
INFO.39O
INFO.39P
INFO.39Q
INFO.39R
INFO.39S
INFO.39T
INFO.39U
INFO.39V
INFO.39W
INFO.39X
INFO.39Y
INFO.39Z
INFO.W290X
INFO.W290Y
INTEGBI.144
INTEGBI.C139
JAPAN.39
JAPAN.C174
KOREAN.H195A
KOREAN.H195B
MCELLBI.110L
MCELLBI.113
MCELLBI.135
MCELLBI.230X
MCELLBI.241
MCELLBI.247
MCELLBI.254
MCELLBI.282
MCELLBI.297
MCELLBI.61
MCELLBI.64
NUC ENG.290B
NUC ENG.290G
NUC ENG.290H
NUC ENG.290J
PLANTBI.160L
PLANTBI.C246
PSYCH.C112
PSYCH.C204
SOC WEL.300
UGIS.161
UGIS.162B
UGIS.162C
UGIS.162D
UGIS.162F
UGIS.171