<?php
session_start();
if (!isset($_SESSION['loggedin'])) {
    exit("unauthorized");
}

include "../database.php";
include "../globals.php";
require_once '../../plugins/sendgrid/config.php';
require "../../plugins/sendgrid/sendgrid-php.php";

$user_id = $_POST["user_id"];
$transfer_start_date = $_POST["transfer_start_date"];
$transfer_end_date = $_POST["transfer_end_date"];
$transfer_location = $_POST["transfer_location"];
$transfer_destination = $_POST["transfer_destination"];

if($_SESSION["role"] == "Admin") {
    $status = 2;
} else {
    $status = 1;
}

$datetime    = date("Y-m-d H:i:s");
$start_datetime = $transfer_start_date . " 00:00:00";
$end_datetime = $transfer_end_date . " 00:00:00";
$secure               = rand(100000, 1000000);

$sql_insert = "INSERT INTO transfers VALUES (NULL,$user_id,'$transfer_start_date','$transfer_end_date','$datetime','$transfer_location','$transfer_destination',$status,'$secure','')";
if ($con->query($sql_insert) === true) {
    $id = mysqli_insert_id($con);
    if($_SESSION["role"] == "Utente") {
        $sql_approve = "SELECT * FROM users WHERE role = 'Admin' AND transfers_approver = 1";
        $result_approve = mysqli_query($con, $sql_approve);
        while ($row_approve = mysqli_fetch_assoc($result_approve)) {
            //Invio mail responsabile
            $email = new \SendGrid\Mail\Mail();
            $email->setFrom("info@n-hub.com", "NH-HR");
            $email->addTo("".$row_approve["email"]."", "".$row_approve["name"]." ".$row_approve["surname"]."");
            $email->SetTemplateId("d-8f405971b16a41f3a05c002643ce222c");
            //Here is the Place holder values you need to replace.
            $email->addDynamicTemplateData("NHHR_richiedente", "" . $_SESSION["username"] . "");
            $email->addDynamicTemplateData("NHHR_data_richiesta", "" . date('d/m/Y H:i', strtotime($transfer['request_datetime'])) . "");
            $email->addDynamicTemplateData("NHHR_data_inizio", "" . date('d/m/Y', strtotime($transfer['start_date'])) . "");
            $email->addDynamicTemplateData("NHHR_data_fine", "" . date('d/m/Y', strtotime($transfer['end_date'])) . "");
            $email->addDynamicTemplateData("NHHR_destinazione", "" . $transfer['destination'] . "");
            $email->addDynamicTemplateData("NHHR_Link_Gestisci", $manage_transfer_url."?transfer_id=" . $id . "&&user_id=" . $_SESSION["id"]);
            $sendgrid = new \SendGrid(SENDGRID_API_KEY);
            try {
                $response = $sendgrid->send($email);
            } catch (Exception $e) {
                echo 'Caught exception: ' . $e->getMessage() . "\n";
            }
        }
    }

    echo "ok";
} else {
    echo "error";
}

$con->close();
