<?php
include('../includes/session.php');
include('../includes/config.php');
include('../template/tngweb/header.php');

$fee = $udata['mobile_to_vehicle_fee'] ?? 20;
checkServiceStatus($udata, 'mobile_to_vehicle_status');

if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['mobile'])) {

    $mobile     = trim($_POST['mobile']);
    $appliedby  = $udata['phone'];
    $balance    = $udata['balance'];
    $debit_fee  = $balance - $fee;

    if ($balance < $fee) {
        echo "<script src='https://cdn.jsdelivr.net/npm/sweetalert2@11'></script>
        <script>
            Swal.fire('Low Balance', 'Please Recharge Wallet', 'error');
            setTimeout(()=>{ window.location='wallet.php'; },1500);
        </script>";
    } else {

        $request = ['mobileNumber' => $mobile];
        $resdata = mobile_to_vehicle_verification_run($request);
        
        $sampleCode = $resdata['sampleCode'] ?? '';
        $errorMsg = $resdata['error'] ?? $resdata['Message'] ?? '';

        if ($sampleCode !== '200') {
            echo "<script src='https://cdn.jsdelivr.net/npm/sweetalert2@11'></script>
            <script>
                Swal.fire('Error', '" . addslashes($errorMsg) . "', 'error');
            </script>";
        } else {

            date_default_timezone_set('Asia/Kolkata');
            $timestamp = date("Y-m-d H:i:s");
            $parentPhone = $udata['parent'] ?? null;

            addCommission($tng_conn, $appliedby, $fee, $parentPhone, "Mobile To Vehicle RC");
            mysqli_query($tng_conn, "UPDATE users SET balance = balance - $fee WHERE phone='$appliedby'");

            $base64Json = base64_encode(json_encode($resdata, JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES));
            $totalRC = $resdata['total_rc_found'] ?? 0;
            $vehicleInfo = "Total RC Found: " . $totalRC;
            
            mysqli_query($tng_conn, "INSERT INTO all_pdf_records
                (service_name, name, username, number, pdf, date)
                VALUES ('mobile_to_vehicle', '$vehicleInfo', '{$udata['phone']}', '$mobile', '$base64Json', '$timestamp')");

            mysqli_query($tng_conn, "INSERT INTO wallethistory
                (userid, amount, balance, purpose, status, type)
                VALUES ('$appliedby','$fee','$debit_fee','Mobile To Vehicle RC','1','Debit')");

            // Build success message with vehicle list
            $vehicleList = "";
            if (!empty($resdata['data'])) {
                foreach ($resdata['data'] as $vehicle) {
                    $vehicleList .= "\\n• " . $vehicle['regNo'];
                }
            }
            $successMsg = "Total RC Found: " . $totalRC . $vehicleList;
            
            echo "<script src='https://cdn.jsdelivr.net/npm/sweetalert2@11'></script>
            <script>
                Swal.fire({
                    icon: 'success',
                    title: 'Success!',
                    text: '" . addslashes($successMsg) . "',
                    timer: 3000,
                    showConfirmButton: false
                }).then(()=>{ window.location='all_history.php'; });
            </script>";
        }
    }
}
?>

<style>
.card-shine {
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    transition: .3s;
    border: none;
}
.card-shine:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 40px rgba(0,0,0,0.15);
}
.container-center {
    min-height: 85vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 0;
}
.form-label {
    font-weight: 600;
    font-size: 13px;
    margin-bottom: 6px;
    color: #333;
}
.single-line {
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, transparent, #e2e8f0, #e2e8f0, #e2e8f0, transparent);
    margin: 20px 0;
}
</style>

<div class="content-wrap">
<div class="main">
<div class="page-wrapper">
<div class="container-center">
<div class="page-content w-100 d-flex justify-content-center">

<div class="col-lg-5 col-md-7 col-sm-10">
<div class="card card-shine">
<div class="card-body p-4">

<a href="javascript:history.back()" class="btn btn-light mb-4 w-100 py-2" style="border-radius: 12px;">
    ← Go Back
</a>

<div class="text-center mb-4">
    <h5 class="fw-bold mb-1" style="color: #1e293b;">🚗 Mobile to Vehicle RC</h5>
    <p class="text-muted small">Find vehicle registration numbers linked with mobile number</p>
</div>

<form method="POST" id="mobileForm">

<div class="mb-3">
    <label class="form-label">MOBILE NUMBER *</label>
    <input type="tel" name="mobile" id="mobile" class="form-control"
           placeholder="Enter 10-digit Mobile Number" maxlength="10"
           style="border-radius: 12px; padding: 12px;" 
           onkeyup="this.value = this.value.replace(/[^0-9]/g, '');" required>
    <small class="text-muted">Example: 98XXXXXX10</small>
</div>

<div class="single-line"></div>

<div class="d-flex justify-content-between align-items-center mb-4">
    <span class="fw-semibold" style="color: #475569;">💰 SERVICE CHARGE</span>
    <span class="fw-bold fs-5" style="color: #1e293b;">₹ <?= number_format($fee, 2) ?></span>
</div>

<button type="submit" class="btn btn-primary w-100 py-2" id="submitBtn" 
        style="border-radius: 12px; font-weight: 600; font-size: 16px;">
    🔍 FIND VEHICLES
</button>

</form>

</div>
</div>
</div>

</div>
</div>
</div>
</div>
</div>

<?php include('../template/tngweb/footer.php'); ?>

<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>

<script>
// Mobile number validation
function validateMobile(mobile) {
    return /^[0-9]{10}$/.test(mobile);
}

let submitting = false;
document.getElementById("mobileForm").addEventListener("submit", function(e) {
    e.preventDefault();
    if (submitting) return;

    var mobile = document.getElementById("mobile").value;
    if(!validateMobile(mobile)) {
        Swal.fire('Invalid Mobile Number', 'Please enter valid 10-digit mobile number', 'error');
        return;
    }

    Swal.fire({
        title: 'Confirm?',
        text: 'Mobile to Vehicle RC verification hoga aur wallet se fee deduct hogi',
        icon: 'warning',
        showCancelButton: true,
        confirmButtonText: 'Yes, Proceed',
        cancelButtonText: 'Cancel',
        confirmButtonColor: '#3085d6'
    }).then((result) => {
        if (result.isConfirmed) {
            submitting = true;
            document.getElementById('submitBtn').disabled = true;
            document.getElementById('submitBtn').innerText = 'Processing...';
            this.submit();
        }
    });
});
</script>

<script src="../template/tngweb/assets/js/bootstrap.bundle.min.js"></script>
<script src="../template/tngweb/assets/js/app.js"></script>
</html>