Skip to content
Snippets Groups Projects
audit.component.ts 1.25 KiB
Newer Older
Scott Berg's avatar
Scott Berg committed
import { Component, Input, ViewChild, OnInit } from '@angular/core';
import { Audit, Requirement, ContentType } from '../models/audit';
import { MatAccordion } from '@angular/material';

@Component({
  selector: 'cse-dars-audit',
  templateUrl: './audit.component.html',
  styleUrls: ['./audit.component.scss'],
})
Scott Berg's avatar
Scott Berg committed
export class DarsAuditComponent implements OnInit {
Scott Berg's avatar
Scott Berg committed
  @ViewChild(MatAccordion) requirements: MatAccordion;

  public ngOnInit() {
    console.log(this.audit);
  }

  public openAllRequirements() {
    this.requirements.openAll();
  }

  public closeAllRequirements() {
    this.requirements.closeAll();
  }

  public getRequirementTitle(requirement: Requirement): string[] {
    const title = requirement.requirementLinesGroupedByContentType.find(
      r =>
        r.contentType === 'okRequirementTitle' ||
        r.contentType === 'noRequirementTitle',
    );
    return title ? title.lines : ['No title found'];
  }

  public getRequirementBody(requirement: Requirement): ContentType[] {
    return requirement.requirementLinesGroupedByContentType.filter(
      r =>
        r.contentType !== 'okRequirementTitle' &&
        r.contentType !== 'noRequirementTitle',
    );
  }