import { Component, inject, OnInit } from '@angular/core';
import { Korisnik } from '../modeli/korisnik';
import { Aktivnost } from '../modeli/aktivnost';
import { PrijaveService } from '../servisi/prijave.service';
import { LogoutComponent } from '../logout/logout.component';
import { RouterLink } from '@angular/router';

@Component({
  selector: 'app-prijava',
  standalone: true,
  imports: [LogoutComponent, RouterLink],
  templateUrl: './prijava.component.html',
  styleUrl: './prijava.component.css'
})
export class PrijavaComponent implements OnInit {
  ulogovan: Korisnik = new Korisnik();
  selektovana: Aktivnost = new Aktivnost();
  prijavljen: boolean = false;
  korisceneSale: string[] = [];

  private prijaveServis = inject(PrijaveService)

  ngOnInit(): void {
    this.korisceneSale = [];
    let ulogovanLS = localStorage.getItem("ulogovan");
    if (ulogovanLS != null) {
      this.ulogovan = JSON.parse(ulogovanLS);

      let selektovanaLS = localStorage.getItem("selektovana");
      if (selektovanaLS != null) {
        this.selektovana = JSON.parse(selektovanaLS);
        if (this.selektovana.sala1 != -1) this.korisceneSale.push("Sala1");
        if (this.selektovana.sala2 != -1) this.korisceneSale.push("Sala2");
        if (this.selektovana.sala3 != -1) this.korisceneSale.push("Sala3");

        this.prijaveServis.postojiPrijava(this.ulogovan.korisnicko_ime, this.selektovana.id).subscribe(data => {
          this.prijavljen = data;
        });
      }
    }
  }

  prijaviSalu(brSale: number) {
    this.prijaveServis.prijaviSe(this.ulogovan.korisnicko_ime, this.selektovana.id, brSale).subscribe(data => {
      if (data)
        this.ngOnInit();
    });
  }
}
