<?php
session_start();

include "classes/html.class.php";
$db = new db();
$qr = new qrcode();


$asset_res = $db->exec_query('assets', ["*"]);

$whereFarm = ($_SESSION['farm_id'] == 0)? "1":"farm_id = {$_SESSION['farm_id']}";

$sqlQueryAssets = "SELECT A.*,B.asset_type_name,C.farm_name FROM assets A 
LEFT JOIN asset_types B ON A.asset_type_id = B.record_id 
LEFT JOIN farms C ON A.farm_id = C.record_id
WHERE $whereFarm ORDER BY farm_name ASC, fleet_no ASC, asset_type_name ASC";

$asset_res = $db->query($sqlQueryAssets);

$asset_list = '<option></option>';

$assetsArr = $asset_res->fetch_all(MYSQLI_ASSOC);

foreach($assetsArr as $index => $asset) {
    
    $currentFarm = $asset['farm_name'];
    $nextFarm = $assetsArr[$index + 1]['farm_name'];
    $prevFarm = $assetsArr[$index - 1]['farm_name'];

    $currentType = $asset['asset_type_name'];
    $nextType = $assetsArr[$index + 1]['asset_type_name'];
    $prevType = $assetsArr[$index - 1 ?? 0]['asset_type_name'];

    
    if($currentFarm != $prevFarm){
        $asset_list = $asset_list . "<optgroup label='$asset[farm_name]'>";
    }

    if($currentType != $prevType){
        $asset_list = $asset_list . "<optgroup label='&nbsp;&nbsp;&nbsp;&nbsp;$asset[asset_type_name]'>
        <option value='{$asset['record_id']}'>{$asset['fleet_no']} {$asset['description']}</option>";

        continue;
    }

    if($currentType != $nextType){
        $asset_list = $asset_list . "<option value='{$asset['record_id']}'>{$asset['fleet_no']} {$asset['description']}</option>
        </optgroup>";
        
        continue;
    }

    if($currentFarm != $nextFarm){
        $asset_list = $asset_list . "</optgroup>";
    }

    $asset_list = $asset_list . "<option value='{$asset['record_id']}'>{$asset['fleet_no']} {$asset['description']}</option>";
}

$ajobcard_res = $db->exec_query('jobcard_types', ["*"]);

$jobcard_list = '<option></option>';
while ($type = $ajobcard_res->fetch_assoc()) {
    $jobcard_list = $jobcard_list . "<option value='{$type['record_id']}'>{$type['name']}</option>";
}

$html = new html("new job card");

?>


<div class='form'>
    <br>
    <? $qr->scanner('qr_code', 'call_qr_search'); ?>
    <input type='text' id='qr_code' hidden />
    <form action='open_jobcard.php' method='POST'>
        <h2 style='font-size:2vw;'>NEW JOB CARD:</h2>
        <hr><br>
        <label style='font-size:1.5vw;'>SELECT JOB CARD TYPE:</label><br>
        <select name='jobcard_type' required class='form_input'>
            <? echo $jobcard_list; ?>
        </select><br><br>

        <label style='font-size:1.5vw;'>SELECT ASSET:</label><br>
        <select name='asset_id' id='asset_id' required class='form_input'>
            <?php echo $asset_list; ?>
        </select><br><br>

        <input type='submit' value='OPEN' class='form_btn' />
    </form>
</div>
<br>
<br>
<script>
    function call_qr_search() {

        qr_code = document.getElementById('qr_code').value;

        // Create an XMLHttpRequest object
        const xhttp = new XMLHttpRequest();
        // Define a callback function
        xhttp.onload = function() {
            // Here you can use the Data
            if (this.responseText != 0) {
                // alert(this.responseText);
                values = this.responseText.split(',');


                if (<? echo $_SESSION['farm_id']; ?> == 0) {

                    document.getElementById('asset_id').value = values[9];
                    // document.getElementById('form_1').submit();


                } else if (<? echo $_SESSION['farm_id']; ?> == values[5]) {

                    document.getElementById('asset_id').value = values[9];
                    // document.getElementById('form_1').submit();

                } else {
                    alert('YOUR NOT AUTHORISED TO DO INSPECTION ON THIS ASSET');

                    document.getElementById('qr_code').value = '';

                }




            } else if (this.responseText == 0) {
                alert("QR CODE NOT REGISTERED TO AN ASSET");

            } else {
                // window.location.href = "users.php";
                alert("Something Went Wrong");

            }
        }

        xhttp.open("GET", "ajax/get_asset.ajax.php?qr_code=" + qr_code);
        xhttp.send();

    }
</script>
</body>

</html>