@@ -45,7 +45,6 @@ window.getAllPlans = function(){
45
45
{ "data" : "open" }
46
46
] ,
47
47
"paging" : false ,
48
- "scrollCollapse" : false
49
48
} ) ;
50
49
$ ( '.dataTables_scrollHeadInner' ) . css ( 'padding' , '0' ) ;
51
50
planTableLoaded = true ;
@@ -101,7 +100,7 @@ window.getPlan = function(){
101
100
] ,
102
101
"scrollY" : "95px" ,
103
102
"paging" : false ,
104
- "scrollCollapse" : false
103
+ "scrollCollapse" : false
105
104
} ) ;
106
105
$ ( '.dataTables_scrollHeadInner' ) . css ( 'padding' , '0' ) ;
107
106
catalogLoaded = true ;
@@ -223,6 +222,7 @@ window.dropOnPlan = function(event){
223
222
else {
224
223
// From catalog table
225
224
currPlan . hrsTotal += draggedCourse . credits ;
225
+ removeFromRequirements ( draggedCourse . designator ) ;
226
226
}
227
227
// add to javascript plan object
228
228
let destTerm = event . target . children [ 0 ] . children [ 0 ] . innerText . split ( " " ) [ 0 ] ;
@@ -281,10 +281,42 @@ window.dropInTrash = function(event){
281
281
$ ( "#hrsCurrent" ) . html ( "Current Hours: " + currPlan . hrsCurrent ) ;
282
282
$ ( "#hrsFuture" ) . html ( "Remaining Hours: " + currPlan . hrsFuture ) ;
283
283
$ ( "#hrsTotal" ) . html ( "Total Hours Planned: " + currPlan . hrsTotal ) ;
284
+
285
+ addToRequirements ( draggedCourse . designator ) ;
284
286
}
285
287
draggedCourse = null ;
286
288
}
287
289
290
+ // Unhide requirement if removed from plan
291
+ window . addToRequirements = function ( designator ) {
292
+ let acc = $ ( '#accordion' ) . get ( ) [ 0 ] ;
293
+ for ( let i = 1 ; i < acc . children . length ; i += 2 ) {
294
+ let accChild = acc . children [ i ] ;
295
+ for ( let j = 0 ; j < accChild . children . length ; j ++ ) {
296
+ let req = accChild . children [ j ] ;
297
+ if ( req . innerText . includes ( designator ) ) {
298
+ req . removeAttribute ( 'hidden' ) ;
299
+ return ;
300
+ }
301
+ }
302
+ }
303
+ }
304
+
305
+ // Hide requirement if added from catalog table
306
+ window . removeFromRequirements = function ( designator ) {
307
+ let acc = $ ( '#accordion' ) . get ( ) [ 0 ] ;
308
+ for ( let i = 1 ; i < acc . children . length ; i += 2 ) {
309
+ let accChild = acc . children [ i ] ;
310
+ for ( let j = 0 ; j < accChild . children . length ; j ++ ) {
311
+ let req = accChild . children [ j ] ;
312
+ if ( req . innerText . includes ( designator ) ) {
313
+ req . setAttribute ( 'hidden' , true ) ;
314
+ return ;
315
+ }
316
+ }
317
+ }
318
+ }
319
+
288
320
class Course {
289
321
constructor ( desig , year , term ) {
290
322
this . term = term ;
0 commit comments