Newer
Older
import { Component } from '@angular/core';
pnogal
committed
import { DataService } from '../core/data.service';
import { DegreePlan } from '../core/models/degree-plan';
import { Course } from '../core/models/course';
import { Term } from '../core/models/term';
@Component({
selector: 'app-degree-planner',
templateUrl: './degree-planner.component.html',
styleUrls: ['./degree-planner.component.scss']
export class DegreePlannerComponent {
degreePlans: DegreePlan[];
selectedDegreePlan: number;
constructor(private dataService: DataService) {
this.dataService.getDegreePlans()
.subscribe(data => {
this.degreePlans = data;
this.selectedDegreePlan = this.degreePlans[0].roadmapId;
});
this.dataService.getDegreePlannerCourseData()
.subscribe(degreePlanCourses => {
this.degreePlanCourses = degreePlanCourses;
});
this.dataService.getTerms()
.subscribe(terms => {
this.terms = terms;
this.termsByAcademicYear = {};
this.terms.forEach(term => {
const year = term.termCode.substring(0, 3);
if (this.termsByAcademicYear[year]) {
this.termsByAcademicYear[year].terms.push(term);
this.termsByAcademicYear[year] = {
year: year,
terms: [term]
};
pnogal
committed
}
getCoursesByTerm(termCode) {
if (!this.degreePlanCourses) {
return false;
}
for ( const term of this.degreePlanCourses ) {
if (term.termCode === termCode) {
return term.courses;
}
}
}