#!/usr/bin/perl -w

use strict;
use warnings;
use Data::Dumper;

my ($email, $password) = @ARGV;

if (defined($email) && defined($password))
{
  my $to = $email;
  my $from = 'dimitri.petsitis@porsche.fr';

  my $subject = 'Trad\'In - Mot de passe temporaire';
  my $message .= '<html><body><p>Bonjour !<br><br>Bienvenue sur Trad\'In. <br><br>Voici votre mot de passe temporaire: '.$password.' <br>';
  $message .= "<p>Lors de votre première connexion, vous recevrez un email qui vous permettra de changer votre mot de passe !</p>";
  $message .= "<p>L'équipe Porsche Trad'In<p>";
  $message .= "</body></html>";

  open(MAIL, "|/usr/sbin/sendmail -t");

  # Email Header
  print MAIL "To: $to\n";
  print MAIL "From: $from\n";
  print MAIL "Subject: $subject\n";
  print MAIL "Content-type: text/html; charset=UTF-8\n\n";
  # Email Body
  print MAIL $message;

  close(MAIL);
  print "Email Sent Successfully\n";
}
else
{
  print "Missing parameter\n";
}

__END__

if (result_user[0].reset_password === 1)
{
  DB.storePasswdResetToken( { email: email, ios_device_token: ios_device_token }, function (err, result_token)
  {
    console.log(result_token);

    var resetPasswordURL = "https://www.porschevo.fr:3100/api/v1.0/users/checkToken?selector=" + result_token.selector + "&validator=" + result_token.token;
    console.log("URL: " + resetPasswordURL);

    exec("./sendTempPasswordEmail.perl '" + email + "' '" + password + "'", (error, stdout, stderr) => {
      if (error) {
        console.log(`error: ${error.message}`);
        res.json({ code: 10134, status: "NOK", msg:"USER_PASSWORD_RESET_EMAIL_SENT_FAILED" });
        res.json({ code: 0, status: "OK", msg: { id: userInfo.id, role: userInfo.role, reset_password: -1 }, token: 'Bearer ' + token });
      }
      if (stderr) {
        console.log(`stderr: ${stderr}`);
        res.json({ code: 10134, status: "NOK", msg:"USER_PASSWORD_RESET_EMAIL_SENT_FAILED" });
        res.json({ code: 0, status: "OK", msg: { id: userInfo.id, role: userInfo.role, reset_password: -1 }, token: 'Bearer ' + token });
      }
      else {
        //res.json({ code: 0, status: "OK", msg:"Email sent successfully" });
        res.json({ code: 0, status: "OK", msg: { id: userInfo.id, role: userInfo.role, reset_password: 1 }, token: 'Bearer ' + token });
      }
    });
  });
}
