Skip to content
Snippets Groups Projects
course-item.component.ts 1.5 KiB
Newer Older
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
import { Component, Input, OnInit } from '@angular/core';
import { MatDialog } from '@angular/material';
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
import { Course } from '@app/core/models/course';

jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
import { DegreePlannerApiService } from '@app/degree-planner/services/api.service';
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
// tslint:disable-next-line:max-line-length
import { CourseDetailsDialogComponent } from '@app/degree-planner/dialogs/course-details-dialog/course-details-dialog.component';
// tslint:disable-next-line:max-line-length
import { RemoveCourseConfirmDialogComponent } from '@app/degree-planner/dialogs/remove-course-confirm-dialog/remove-course-confirm-dialog.component';

@Component({
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
  selector: 'cse-course-item',
  templateUrl: './course-item.component.html',
  styleUrls: ['./course-item.component.scss'],
export class CourseItemComponent implements OnInit {
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
  status; // TODO make this work k thx plz!?
  @Input() course: Course;
  @Input() disabled: string;
  @Input() type: 'saved' | 'course' | 'search';
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
  constructor(private api: DegreePlannerApiService, public dialog: MatDialog) {}
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
  ngOnInit() {}
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
  openCourseDetailsDialog(course) {
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
    this.api
      .getCourseDetails(course.subjectCode, course.courseId)
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
      .subscribe(courseDetails => {
        const dialogRef = this.dialog.open(CourseDetailsDialogComponent, {
          data: { courseDetails: courseDetails },
        });
      });
  }
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
  openRemoveConfirmationDialog() {
    const dialogRef = this.dialog.open(RemoveCourseConfirmDialogComponent, {
      data: { course: this.course, type: this.type },
    });
  }