<?php include "../../root.class.php";
$html = new html();
$html->add_styles_page();

$db = new db_safeguard();
$service_tickets_res = $db->select_query('service_tickets', '*', "record_id = {$_GET['record_id']}");
$service_tickets = $service_tickets_res->fetch_assoc();

function get_username($id)
{
    $db = new db_safeguard();
    $user_res = $db->select_query('users', '*', "record_id = {$id}");
    $user = $user_res->fetch_assoc();
    return $user['username'];
}

function get_client_name($id)
{
    $db = new db_safeguard();
    $client_res = $db->select_query('clients', '*', "record_id = {$id}");
    $client = $client_res->fetch_assoc();
    return $client['name'];
}
?>

<div class="form_down">
    <h1 style="font-size:2vw">Service Ticket: <?php echo $_GET['record_id']; ?></h1>
    <h2>CLIENT:</h2>
    <u>
        <h1 style="font-size:2vw"><?php echo get_client_name($service_tickets['client_id']); ?></h1>
    </u>
    <h2>CREATED BY:</h2>
    <input type="text" style="width:50%;border:1px solid black;border-radius:5px;padding:5px;font-size:1vw;"
        value="<?php echo get_username($service_tickets['user_id_created']); ?>" readonly>
    <h2>DESCRIPTION</h2> <div style="width:50%;height:auto;border:1px solid black;border-radius:5px;padding:1vw;font-size:1vw"><?php
    echo $service_tickets['description'];
    ?></div>
    <h2>Technician:</h2>
    <input type="text" style="width:50%;border:1px solid black;border-radius:5px;padding:5px;font-size:1vw;"
        value="<?php echo get_username($service_tickets['user_id_assigned']); ?>" readonly>
    <h2>NOTES</h2> <div style="width:50%;height:auto;border:1px solid black;border-radius:5px;padding:1vw;font-size:1vw"><?php
    echo $service_tickets['service_rendered'];
    ?></div>


    <h1>WORK ORDER TIME LINE</h1>
    <table>
        <tr>
            <th>Date Time</th>
            <th>Status</th>
            <th>User</th>
        </tr>

        <?php
        echo "<style>
                table {
                    width: 100%;
                    font-size:1vw;
                }
                th {
                    background-color: #4CAF50;
                    color: white;
                }
                tr:nth-child(even) {
                    background-color: #f2f2f2;
                }
           
            </style>";
        $timeline_res = $db->select_query('service_ticket_timeline', '*', "service_ticket_id = {$_GET['record_id']} ORDER BY record_id ASC");
        while ($timeline = $timeline_res->fetch_assoc()) {
            echo "<tr><td style='width:11vw;'>{$timeline['date_time']}</td><td style='width:11vw;'>{$timeline['status']}</td><td style='width:11vw;'>" . get_username($timeline['user_id']) . "</td></tr>";
            if ($timeline['status'] == 'start') {
                $start_date_time = $timeline['date_time'];
            }
            if ($timeline['status'] == 'stop') {
                $stop_date_time = $timeline['date_time'];
                $start = new DateTime($start_date_time);
                $stop = new DateTime($stop_date_time);
                $interval = $start->diff($stop);
                $hours_difference = $interval->format('%h') + ($interval->format('%i') / 60);
                $total_hours = isset($total_hours) ? $total_hours + $hours_difference : $hours_difference;
                echo "<tr><td style='text-align:center;font-size:1.25vw'  >Work Hours</td><td style='text-align:center;font-size:1.25vw' colspan='2'>{$interval->format('%h:%i')}</td></tr>";
            }

            if ($timeline['status'] == 'completed') {
                echo "<tr><td style='text-align:center;font-size:1.25vw' >Total Work Hours</td><td colspan='2' style='text-align:center;font-size:1.25vw'>Hours: " . round($total_hours, 2) . "</td></tr>";
            }
    

        }
        ?>
    </table>
</div>