import { Component, Inject, OnInit } from '@angular/core';
import { FormControl, Validators } from '@angular/forms';
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';

interface TeamInfo{
  ID: string;
  NOMB: string;
  ESP: string;
}
const TEAMS_TMP: TeamInfo[] = [
  {ID: 'T1', NOMB: 'EQUIPO 1', ESP: 'Mécánica'},
  {ID: 'T2', NOMB: 'EQUIPO 2', ESP: 'Electrónica'},
  {ID: 'T3', NOMB: 'EQUIPO 3', ESP: 'Electricidad'},
  {ID: 'T4', NOMB: 'EQUIPO 4', ESP: 'Neumática'},
  {ID: 'T5', NOMB: 'EQUIPO 5', ESP: 'Hidráulica'},
  {ID: 'T6', NOMB: 'EQUIPO 6', ESP: 'Control'},
  {ID: 'T7', NOMB: 'EQUIPO 7', ESP: 'Frenado'},
  {ID: 'T8', NOMB: 'EQUIPO 8', ESP: 'Sistemas'},
  {ID: 'T9', NOMB: 'EQUIPO 9', ESP: 'Industrial'},
  {ID: 'T10', NOMB: 'EQUIPO 10', ESP: 'Civil'},
  {ID: 'T11', NOMB: 'EQUIPO 11', ESP: 'Redes'},
];
@Component({
  selector: 'app-new-instruction',
  templateUrl: './new-instruction.component.html',
  styleUrls: ['./new-instruction.component.css']
})
export class NewInstructionComponent implements OnInit {
  stepControl = new FormControl('', [Validators.required, Validators.minLength(20)]);
  specialtiesControl = new FormControl('', Validators.required);

  isNew: boolean;
  specialties: TeamInfo[];

  constructor(
    @Inject(MAT_DIALOG_DATA) private _data: any,
    private _dialogRef: MatDialogRef<NewInstructionComponent>,
  ) { 
    this.isNew = true;
    this.specialties = TEAMS_TMP;
  }

  ngOnInit(): void {
    this.isNew = this._data.action == 'new';
    if(!this.isNew){
      this.stepControl.setValue(this._data.instruction.INSTRUCCION);
      this.specialtiesControl.setValue(this._data.instruction.ESPECIALIDADES);
    }
  }

  addInstruction(){
    let specialtiesStr = JSON.stringify(this.specialtiesControl.value);
    this._dialogRef.close(`${this.stepControl.value}|${specialtiesStr}`);
  }
}
