Newer
Older
import { DegreePlannerDataService } from './../../../core/service/degree-planner-data.service';
import { ActivatedRoute } from '@angular/router';
import { Component, Input, ChangeDetectorRef, OnInit } from '@angular/core';
import { Course } from '../../../core/models/course';
import { Subject } from '@app/core/models/course-details';
import { Term } from '../../../core/models/term';
import { DegreePlan } from '../../../core/models/degree-plan';
Isaac Evavold
committed
import { SavedForLaterCourse } from '../../../core/models/saved-for-later-course';
import { DataService } from '../../../core/data.service';
import { CourseDetailsDialogComponent } from '../../dialogs/course-details-dialog/course-details-dialog.component';
// tslint:disable-next-line:max-line-length
import { RemoveCourseConfirmDialogComponent } from '../../dialogs/remove-course-confirm-dialog/remove-course-confirm-dialog.component';
import { MatDialog } from '@angular/material';
templateUrl: './course-item.component.html',
styleUrls: ['./course-item.component.scss']
export class CourseItemComponent implements OnInit {
termsInAcademicYear: [];
// favoriteCourse: FavoriteCourse;
degreePlans: DegreePlan[];
degreePlanCourses: any[];
selectedDegreePlan: number;

Scott Berg
committed
subjects: Object;
@Input() courses: Course[];

Scott Berg
committed
@Input() type: 'saved' | 'course' | 'search';
@Input() savedForLater: Boolean;
Isaac Evavold
committed
@Input() favoriteCourses: SavedForLaterCourse[];
constructor(
private dataService: DataService,
public dialog: MatDialog,
private degreePlannerDataSvc: DegreePlannerDataService,
private cdRef: ChangeDetectorRef) {
this.degreePlans = route.snapshot.data.requiredData.degreePlans;
this.selectedDegreePlan = this.degreePlans[0].roadmapId;
this.subjects = route.snapshot.data.requiredData.subjects;
this.termCodes = this.degreePlannerDataSvc.getAllTerms();
}
ngOnInit() {
}
openCourseDetailsDialog(course) {
this.dataService.getCourseDetails(course.termCode, course.subjectCode, course.courseId)
.subscribe(courseDetails => {
const dialogRef = this.dialog.open(CourseDetailsDialogComponent, {
data: { courseDetails: courseDetails }
});
});
}

Scott Berg
committed
openRemoveConfirmationDialog() {
const dialogRef = this.dialog.open(RemoveCourseConfirmDialogComponent, {

Scott Berg
committed
data: { course: this.course, type: this.type }
});
}