import { Component, OnInit } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';
import { Router, RouterLink } from '@angular/router';
import { AuthService } from '../../services/auth.service'


@Component({
  selector: 'app-login',
  standalone: true,
  imports: [CommonModule, FormsModule, RouterLink],
  templateUrl: './login.component.html',
  styleUrls: ['./login.component.css']
})
export class LoginComponent implements OnInit {
  
  form: any = {
    email: null,
    password: null
  };
  
  loading = false;
  error = '';
  constructor(
    private authService: AuthService,
    private router: Router
  ) {  }

  ngOnInit(): void {}

  login(): void{
    this.loading= true;
    this.error ='';

    if (!this.form.email || !this.form.password) {
      this.error = 'Por favor, preencha todos os campos.';
      this.loading = false;
      return;
    }
    this.authService.login({
      email: this.form.email, 
      password: this.form.password
    }).subscribe({
      next: (user) => {
        if (user) {
          // O redirecionamento é feito no AuthService após o login bem-sucedido
          // Não precisamos de um navigate aqui
        } else {
          this.error = 'Email/Senha incorretos';
          this.loading = false;
          this.form.password = '';
        }
      },
      error: (err) => {
        this.error = 'Ocorreu um erro ao tentar logar. Tente novamente.';
        this.loading = false;
        console.error('Login error:', err);
      }
    });
  }

}
