import { Component, EventEmitter, Input, Output } from '@angular/core';
import { ToastrService } from 'ngx-toastr';


@Component({
  selector: 'app-sub-job-qualifications',
  templateUrl: './sub-job-qualifications.component.html',
  styleUrls: ['./sub-job-qualifications.component.scss']
})
export class SubJobQualificationsComponent {
  @Input() pathTitle = ['การจัดการลายละเอียดงาน', 'ลักษณะงาน'];
  @Output() sendPathTitle: EventEmitter<string[]> = new EventEmitter<string[]>();
  activeTab: string = 'tab1'; // กำหนด tab เริ่มต้น
  isChecked: boolean = false;

  // ฟังก์ชันในการเปลี่ยนแท็บ
  changeTab(tab: { id: string, text: string }) {
    this.sendPathTitle.emit(['การจัดการลายละเอียดงาน', tab.text]);
    this.activeTab = tab.id;
  }

  toggleCheckbox(): void {
    this.isChecked = !this.isChecked;
  }

  // การจัดการการเปิดปิด modal
  modalOptions: {
    [nameModal: string]: {
      isModalOpen: boolean;
      modalSize: string;
      backdropClose: boolean;
    };
  } = {
    "add": {
      isModalOpen: false,
      modalSize: 'm',
      backdropClose: true,
    },
    "edit": {
      isModalOpen: false,
      modalSize: 'm',
      backdropClose: true,
    }
  };

  openModal(name: string, size: string, closeOnBackdrop?: boolean) {
    this.modalOptions[name].modalSize = size;
    this.modalOptions[name].backdropClose = closeOnBackdrop || false;
    this.modalOptions[name].isModalOpen = true;
    this.currentModal = name;  // ตั้งค่าค่าของ currentModal เป็น 'add' หรือ 'edit'
    document.body.style.overflow = 'hidden';
  }

  closeModal(name: string) {
    this.modalOptions[name].isModalOpen = false;
    if (!this.isAnyModalOpen()) {
      document.body.style.overflow = ''; // คืนค่าการ Scroll เฉพาะเมื่อ Modal ทั้งหมดปิดแล้ว
    }
  }

  isAnyModalOpen(): boolean {
    return Object.values(this.modalOptions).some(modal => modal.isModalOpen); // ตรวจสอบว่า modal อื่นยังเปิดอยู่หรือไม่
  }

  // ฟังก์ชันสำหรับการเพิ่ม ลบ หรือแก้ไข ข้อมูล
  addUser() {
    // ฟังก์ชันสำหรับการเพิ่มผู้ใช้งาน
    console.log('เพิ่มผู้ใช้งาน');
  }

  deleteUser() {
    // ฟังก์ชันสำหรับการลบผู้ใช้งาน
    console.log('ลบผู้ใช้งาน');
  }

  editUser() {
    // ฟังก์ชันสำหรับการแก้ไขผู้ใช้งาน
    console.log('แก้ไขผู้ใช้งาน');
  }
  currentModal = ""
  constructor(private toastr: ToastrService) { }
  showSuccess() {
    this.toastr.success('บันทึกข้อมูลสำเร็จ', 'เเจ้งเตือน', {
      timeOut: 3000,
      positionClass: 'toast-top-right',
    });
  }
  showSuccessEdit() {
    this.toastr.success('เเก้ไขข้อมูลสำเร็จ', 'เเจ้งเตือน', {
      timeOut: 3000,
      positionClass: 'toast-top-right',
    });
  }
  showSuccessDelete() {
    this.toastr.success('ลบข้อมูลสำเร็จ', 'เเจ้งเตือน', {
      timeOut: 3000,
      positionClass: 'toast-top-right',
    });
  }
}