import { MailerService } from '@nestjs-modules/mailer';
import { Injectable } from '@nestjs/common';
import { ConfigService } from '@nestjs/config';

@Injectable()
export class MailService {
  constructor(
    private mailerService: MailerService,
    private configService: ConfigService,
  ) {}

  async sendMailRequestResetPass(
    email: string,
    username: string,
    token: string,
    path: string,
  ) {
    const url = `${this.configService.get('domain')}${path}`;
    await this.mailerService.sendMail({
      to: email,
      subject: `Thông báo cấp lại mật khẩu cho tài khoản: ${username}.`,
      html: `<html>
        <head>
          <meta charset="UTF-8">
          <title>Thông báo đổi mật khẩu</title>
        </head>
        <body>
          <h1>Thông báo đổi mật khẩu</h1>
          <p>Chào bạn,</p>
          <p>Chúng tôi xác nhận rằng bạn đã yêu cầu quên mật khẩu.</p>
          <p><a href="${url}">Nhấn để xác nhận</a>.</p>
          <p>Xin cảm ơn.</p>
          <p>Đội ngũ hỗ trợ</p>
        </body>
      </html>`,
    });
  }

  async sendMaiComfirmResetPass(email: string, password: string) {
    await this.mailerService.sendMail({
      to: email,
      subject: 'Thông báo cấp lại mật khẩu.',
      html: `<html>
        <head>
          <meta charset="UTF-8">
          <title>Thông báo đổi mật khẩu</title>
        </head>
        <body>
          <h1>Thông báo đổi mật khẩu</h1>
          <p>Chào bạn,</p>
          <p>Chúng tôi xác nhận rằng bạn đã làm mới mật khẩu thành công.</p>
          <p>Mật khẩu mới hiện tại là : ${password}.</p>
          <p>Xin cảm ơn.</p>
          <p>Đội ngũ hỗ trợ</p>
        </body>
      </html>`,
    });
  }

  async sendMailContact(email: string, message: string) {
    await this.mailerService.sendMail({
      from: email,
      to: 'lacacity.co@gmail.com',
      subject: 'Góp ý về laca city.',
      html: `<html>
        <head>
          <meta charset="UTF-8">
          <title></title>
        </head>
        <body>
          <h1>Thông báo đổi mật khẩu</h1>
          <p>Chào bạn,</p>
          <p>Chúng tôi xác nhận rằng bạn đã làm mới mật khẩu thành công.</p>
          <p>${message}</p>
          <p>Xin cảm ơn.</p>
          <p>Đội ngũ hỗ trợ</p>
        </body>
      </html>`,
    });
  }
}
