<?php include "../../root.class.php";
$html = new html();
$html->add_styles_page();

$db = new db_safeguard();
$work_orders_res = $db->select_query('work_orders', '*', "record_id = {$_GET['record_id']}");
$work_order = $work_orders_res->fetch_assoc();

$projects_res = $db->select_query('projects', '*', "record_id = {$work_order['project_id']}");
$project = $projects_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'];
}

?>

<div class="form_down">
    <h1 style="font-size:2vw">W.O. ID: <?php echo $_GET['record_id']; ?></h1>
    <h2>PROJECT:</h2>
    <u>
        <h1 style="font-size:2vw"><?php echo $project['name']; ?></h1>
    </u>
    <h2>WORK ORDER 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($work_order['user_id']); ?>" readonly>

    <h2>WORK DONE 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($work_order['user_id_assigned']); ?>" readonly>

    <h2>WORK DESCRIPTION</h2> <?php
    echo $work_order['description'];
    ?>
    <h2>USER NOTES</h2> <?php
    echo $work_order['notes'];
    ?>


    <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('work_order_timeline', '*', "work_order_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'  >Work Hours Difference</td><td style='text-align:center' colspan='2'>{$interval->format('%h:%i')}</td></tr>";
            }

            if ($timeline['status'] == 'complete') {
                echo "<tr><td style='text-align:center' >Total Work Hours</td><td colspan='2' style='text-align:center'>Hours: " . round($total_hours, 2) . "</td></tr>";
            }

            if ($timeline['status'] == 'review_start') {
                $start_date_time = $timeline['date_time'];
            }
            if ($timeline['status'] == 'review_stop') {
                $stop_date_time = $timeline['date_time'];
                $review_start = new DateTime($start_date_time);
                $review_stop = new DateTime($stop_date_time);
                $review_interval = $review_start->diff($review_stop);
                $review_hours_difference = $review_interval->format('%h') + ($review_interval->format('%i') / 60);
                $total_review_hours = isset($total_review_hours) ? $total_review_hours + $review_hours_difference : $review_hours_difference;
                echo "<tr><td style='text-align:center'  >Review Hours Difference</td><td style='text-align:center' colspan='2'>{$review_interval->format('%h:%i')}</td></tr>";
            }

            if ($timeline['status'] == 'complete') {
                echo "<tr><td style='text-align:center' >Total Review Hours</td><td colspan='2' style='text-align:center'>Hours: " . round($total_review_hours, 2) . "</td></tr>";
            }



        }
        ?>
    </table>
</div>