HEX
Server: Apache/2.4.58 (Ubuntu)
System: Linux ip-172-26-0-120 6.17.0-1009-aws #9~24.04.2-Ubuntu SMP Fri Mar 6 23:50:29 UTC 2026 x86_64
User: ubuntu (1000)
PHP: 8.3.6
Disabled: NONE
Upload Files
File: /var/www/html/orbidirectory.com/storage/framework/views/be7b84b82fa1ff85933a1eb23a210643.php
    <!-- Option 1: Bootstrap Bundle with Popper -->
    <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"
        integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous">
    </script>

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-datetimepicker/2.5.20/jquery.datetimepicker.full.min.js">
    </script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.1.0-rc.0/js/select2.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.5/jquery.validate.min.js"></script>
    <meta name="csrf-token" content="<?php echo e(csrf_token()); ?>">
    <div id="cargoConfig"
        data-limit="<?php echo e(request()->is('/') ? 3 : 9); ?>"
        data-pagination="<?php echo e(request()->is('/') ? 'false' : 'true'); ?>">
    </div>
    <script>
     //    cargo and passenger vehicles shoing data scripts-------------
        //    this is for home...
           $('.vehicle_switchTabs button').on('click', function () {
            $('.vehicle_switchTabs button').removeClass('activeTab_btn');
            $(this).addClass('activeTab_btn');

            var target = $(this).data('target');

            // Hide both the passenger and cargo vehicles
            $('.passenger_vehicles, .cargo_vehicles').hide();

            if (target === 'passenger') {
                $('.passenger_vehicles').css('display', 'flex');
            } else if (target === 'cargo') {
                // Show the cargo vehicles container and load data if needed
                $('.cargo_vehicles').css('display', 'flex');
                
                // Check if the cargo data is already loaded, otherwise load it via AJAX
                if ($('#cargo_vehicle_list').children().length === 0) {
                    loadCargoVehicles();
                }
            }
        });
        // This is for seach
        $('.vehicle_switchTabs button').on('click', function () {
                $('.vehicle_switchTabs button').removeClass('activeTab_btn');
                $(this).addClass('activeTab_btn');

                var target = $(this).data('target');

                // Hide all vehicle sections and filters
                $('.passanger_vehicles, .cargo_vehicles, .passenger_vehicle_filter, .cargo_vehicle_filter').hide();

                if (target === 'passenger') {
                    $('.passanger_vehicles').css('display', 'flex');
                    $('.passenger_vehicle_filter').css('display', 'flex');
                } else if (target === 'cargo') {
                    $('.cargo_vehicles').css('display', 'flex');
                    $('.cargo_vehicle_filter').css('display', 'flex');
                }
            });
            
            // For cargo and passenger select home to seach page

                $(document).ready(function () {
                    let selectedTab = 'passenger'; // default

                    $('.vehicle_switchTabs .btn').on('click', function () {
                        $('.vehicle_switchTabs .btn').removeClass('activeTab_btn');
                        $(this).addClass('activeTab_btn');
                        selectedTab = $(this).data('target');

                        // Set the "View All" link
                        $('#viewAllBtn').attr('href', '<?php echo e(route('search.results')); ?>?type=' + selectedTab);
                    });
                });

                $(document).ready(function () {
                    // Get 'type' from URL
                    const urlParams = new URLSearchParams(window.location.search);
                    const type = urlParams.get('type') || 'passenger';
                    console.log("Page loaded with type:", type);

                    if (type === 'passenger') {
                        $('.vehicle_switchTabs .btn').removeClass('activeTab_btn');
                        $('.vehicle_switchTabs .btn[data-target="passenger"]').addClass('activeTab_btn');

                        $('#vehicle-list').show();
                        $('.cargo_vehicle_filter').hide();
                        $('#cargo_vehicle_list').hide();

                        console.log("Passenger tab active");
                    } else {
                        $('.vehicle_switchTabs .btn').removeClass('activeTab_btn');
                        $('.vehicle_switchTabs .btn[data-target="cargo"]').addClass('activeTab_btn');

                        $('.cargo_vehicle_filter').show();
                        $('#cargo_vehicle_list').show();
                        $('.passenger_vehicle_filter').hide();
                        $('#vehicle-list').hide();

                        console.log("Cargo tab active");
                    }
                });


                 $(document).on('click', '.openReportModal', function (e) {
                    e.preventDefault();
                    $('#reportCargoUser').modal('show');
                });


 
        $(window).scroll(function() {
            console.log($(window).scrollTop())
            if ($(window).scrollTop() > 0) {
                $('.header').addClass('navbar-fixed');
            }
            if ($(window).scrollTop() < 1) {
                $('.header').removeClass('navbar-fixed');
            }
        });
    </script>


    <script>
        // In your Javascript (external .js resource or <script> tag)
        $(document).ready(function() {
            $('.js-select-2-single1').select2();
        });
    </script>

    <script>
        // In your Javascript (external .js resource or <script> tag)
        $(document).ready(function() {
            $('.js-select-2-single2').select2();
        });
    </script>


    <script>
        $('#datetimepicker1').datetimepicker({
            format: 'Y/m/d H:i:s'
        });
        $('#datetimepicker2').datetimepicker({
            format: 'Y/m/d H:i:s'
        });
    </script>


    <script>
        $('.open-menu').on('click', function() {
            $('.side-menu').addClass('side-menuOpen');
        });
        $('.close-menu').on('click', function() {
            $('.side-menu').removeClass('side-menuOpen');
        });
    </script>




    <script>
        // home page popup cities selection
    $(document).ready(function () {
    $('#citySearchInput').on('input', function () {
        let keyword = $(this).  val().toLowerCase().trim();
        let matchFound = false;

        $('#searchResult').empty().hide(); // Clear previous search result

        if (keyword === '') {
            // If search input is empty, show default city list
            $('.popular_cities').show();
            $('#searchResult').hide();
            return;
        }

        $('#cityList li').each(function () {
            let $city = $(this).find('.selectCity');
            let cityName = $city.data('name').toLowerCase();
            let cityId = $city.data('id');
            let cityImage = $city.data('image');

            if (cityName.includes(keyword)) {
                matchFound = true;

                // Hide the original city list
                $('.popular_cities').hide();

                // Show the matched result
                $('#searchResult').html(`


                    <div class="popular_cities popular_cities2">
                        <label>Popular cities</label>
                        <ul>
                            <li>
                                <a class="selectCity" href="#!" data-id="${cityId}" data-name="${cityName}" data-image="${cityImage}">
                                    <span>
                                        <img alt="${cityName}" src="${cityImage}">
                                    </span>
                                    <h6>${cityName}</h6>
                                </a>
                            </li>
                        </ul>
                    </div>


                `).show();

                return false; // Stop after first match
            }
        });

        if (!matchFound) {
            $('.popular_cities').hide();
            $('#searchResult').html(`<p>No matching cities found.</p>`).show();
        }
    });

        $('.currentLocation').on('click', function (e) {
        e.preventDefault();

        if (navigator.geolocation) {
            navigator.geolocation.getCurrentPosition(function (position) {
                let latitude = position.coords.latitude;
                let longitude = position.coords.longitude;

                $.ajax({
                    url: "<?php echo e(route('detect.location')); ?>",
                    type: "POST",
                    data: {
                        _token: "<?php echo e(csrf_token()); ?>",
                        latitude: latitude,
                        longitude: longitude
                    },
                    success: function (response) {
                        if (response.success) {
                            let cityId = response.city.id;
                            console.log(cityId);
                            $('#city-dropdown').val(cityId).trigger('change');
                            $('.modal').modal('hide');
                        } else {
                            alert("City not found based on your location.");
                        }
                    },
                    error: function () {
                        alert("Error detecting your location.");
                    }
                });
            }, function (error) {
                alert("Location permission denied or unavailable.");
            });
        } else {
            alert("Geolocation is not supported by your browser.");
        }
    });

    // Handle city selection
    $(document).on('click', '.selectCity', function () {
        let cityId = $(this).data('id');
        let cityName = $(this).data('name');

        $.ajax({
            url: "<?php echo e(route('set.city.cookie')); ?>",
            type: "POST",
            data: {
                _token: "<?php echo e(csrf_token()); ?>",
                city_id: cityId
            },
            success: function () {
                $('#city-dropdown').val(cityId).trigger('change');
                $('.modal').modal('hide');
            }
        });
    });
});

        document.addEventListener('DOMContentLoaded', function() {
            // Select all arrow icons
            const arrowIcons = document.querySelectorAll('.arrow-icon i');

            // Add click event listener to each arrow icon
            arrowIcons.forEach(icon => {
                icon.addEventListener('click', function() {
                    // Find the nearest .car-types container
                    const carTypesContainer = this.closest('.car-types');

                    if (carTypesContainer) {
                        // Find the car-models list within the car-types container
                        const carModelsList = carTypesContainer.querySelector('.car-models.scroll');

                        if (carModelsList) {
                            // Example ID of the element you want to scroll to
                            var targetElementId = 'radio1'; // Adjust as per your HTML structure

                            // Select the target element within the car models list
                            const targetElement = carModelsList.querySelector('#' +
                                targetElementId);

                            if (targetElement) {
                                // Calculate the scroll position relative to the car models list container
                                const scrollPosition = targetElement.offsetTop - carModelsList
                                    .offsetTop + carModelsList.scrollTop;

                                // Scroll car models list container to the calculated position
                                carModelsList.scrollTo({
                                    top: scrollPosition,
                                    behavior: 'smooth'
                                });
                            }
                        }
                    }
                });
            });
        });
    </script>


    <script>
        document.addEventListener('DOMContentLoaded', function() {
            // Select all arrow icons
            const arrowIcons = document.querySelectorAll('.arrow-icon-1 i');

            // Add click event listener to each arrow icon
            arrowIcons.forEach(icon => {
                icon.addEventListener('click', function() {
                    // Find the nearest .car-types container
                    const carTypesContainer = this.closest('.car-types');

                    if (carTypesContainer) {
                        // Find the car-models list within the car-types container
                        const carModelsList = carTypesContainer.querySelector('.car-models.scroll');

                        if (carModelsList) {
                            // Calculate the scroll position to the top of the car models list
                            const scrollPosition = carModelsList.scrollHeight - carModelsList
                                .clientHeight;

                            // Scroll car models list container to the calculated position
                            carModelsList.scrollTo({
                                top: 0,
                                behavior: 'smooth'
                            });
                        }
                    }
                });
            });
        });
    </script>






    <script>
        // ===== Scroll to Top ==== 
        $(window).scroll(function() {
            if ($(this).scrollTop() >= 50) { // If page is scrolled more than 50px
                $('#return-to-top').fadeIn(200); // Fade in the arrow
            } else {
                $('#return-to-top').fadeOut(200); // Else fade out the arrow
            }
        });
        $('#return-to-top').click(function() { // When arrow is clicked
            $('body,html').animate({
                scrollTop: 0 // Scroll to top of body
            }, 500);
        });
    </script>


    <script>
        $(document).ready(function() {
            $('#brand').change(function() {
                var brandID = $(this).val();
                if (brandID) {
                    $.ajax({
                        url: "<?php echo e(url('/getModel')); ?>/" + brandID,
                        type: "GET",
                        dataType: "json",
                        success: function(data) {
                            $('#model').empty();
                            $('#model').append('<option value="">Model</option>');
                            $.each(data, function(index, model) {
                                $('#model').append('<option value="' + model.id + '">' +
                                    model.name + '</option>');
                            });
                            $('#model').trigger('change');
                        },
                        error: function(xhr, status, error) {
                            console.error("Failed to fetch models:", error);
                        }
                    });
                } else {
                    $('#model').empty();
                    $('#model').append('<option value="">Model</option>');
                }
            });
        });
    </script>

    <script>
        $(document).ready(function() {
            $('#clearSearch').click(function(e) {
                e.preventDefault();
                $('#searchForm').find('input:text, input:password, input:file, select, textarea').val('');
                $('#searchForm').find('input:radio, input:checkbox').removeAttr('checked').removeAttr(
                    'selected');
                window.location.href = '/search';
            });
        });
    </script>

   <script>
        $(document).ready(function() {

            // Update data-id attribute on radio button change
            $('#cargo_vehicle_list').on('change', '.cargo-model-radio', function() {
                var selectedRadio = $(this);
                var vehicleId = selectedRadio.data('modal');
                var transporterId = selectedRadio.data('transporter_id');
                selectedRadio.closest('.car-wrap').find('.contactdetailstest').attr('data-id', vehicleId);
                selectedRadio.closest('.car-wrap').find('.contactdetailstest').attr('data-transporter-id',transporterId);
            });

            // Handle click on vehicle_info button
            $(document).on('click', '.contactdetailstest', function() {
                var vehicleId = $(this).attr('data-id');
                var transporterId = $(this).attr('data-transporter-id');
                if (!vehicleId) {
                    console.error("Vehicle ID not found.");
                    return;
                }
                $('.modal').modal('hide');
                $('#taxiBookingForm')[0].reset();
                console.log(vehicleId);
                $('#vehicle_id').val(vehicleId);
                $('#vehicle_info_button').attr('data-id', vehicleId);
                $('#transporter_id').val(transporterId);

                if ($('.orbicontactdetailstest').length) {
                    console.log("Opening modal for vehicle ID: " + vehicleId);
                    $('.orbicontactdetailstest').modal('show'); // Show the contact details modal
                } else {
                    console.error("Modal element not found.");
                }
                $('.orbicontactdetailstest').modal('show');

            });

        });
    </script>

    <script>

        $(document).ready(function() {
            $('#cargo_vehicle_list').on('change', '.cargo-model-radio', function() {
                var selectedRadio = $(this);
                var vehicleId = selectedRadio.data('vehicle_id');
                var vehicle_image = '';

                $.ajax({
                    url: '<?php echo e(url('cargo-vehicle-detail')); ?>/' + vehicleId,
                    method: 'GET',
                    data: {
                        'type': 'detail'
                    },
                    success: function(response) {

                        if (response.html) {
                            $('#vehicle-details-container').html(response
                                .html);
                        }

                        var cargo_vehicle_image = response.cargo_media_url || '';
                        console.log("Cargo Vehicle image URL: ", cargo_vehicle_image);
                        var imageElement = selectedRadio.closest('.cargo_wrap').find(
                            '.car-wrap-image-1 img');  



                        if (cargo_vehicle_image) {
                            imageElement.attr('src', cargo_vehicle_image);
                        } else {
                            console.log("Media URL is undefined or empty");
                        }
                        console.log("Message: Vehicle details loaded successfully");
                    },
                    error: function(xhr, status, error) {
                        console.error('Error fetching cargo vehicle details:', error);
                        console.log("AJAX error: " + error);
                    }
                });

                var carDetailsContainer = selectedRadio.closest('.cargo_wrap').find('.cargo_detail_item');

                var brand = selectedRadio.data('brand');
                var model = selectedRadio.data('model');
                var image = selectedRadio.data('image');
                var Type = selectedRadio.data('type');

                var modelId = selectedRadio.val();
                var vehicleTypeId = selectedRadio.data('vehicle_type_id');
                var fuelType = selectedRadio.data('fuel_type');
                var weightCapacity = parseInt(selectedRadio.data('weight_capacity')) + ' Kg';
                var bedDimensionUnit = selectedRadio.data('bed_dimension_unit');
                var bodyType = selectedRadio.data('body_type');
                var loadingRampAvailable = selectedRadio.data('loading_ramp_available');
                // var permitType = selectedRadio.data('permit_type');
                var permitTypeRaw = selectedRadio.data('permit_type');
                var permitTypeMap = {
                    local: "Local",
                    all_india: "All India"
                };
                var permitType = permitTypeMap[permitTypeRaw] || permitTypeRaw;

                var foundVehicleType = vehicle_types.find(type => type.id == vehicleTypeId);
                console.log("foundvehicle type " + foundVehicleType);
                if (foundVehicleType) {
                    vehicleTypeName = foundVehicleType.name;
                    console.log(foundVehicleType.name);
                }
                carDetailsContainer.find('.cargo-detail-heading h5').text(brand);
                carDetailsContainer.find('.cargoType_name').text(Type);
                carDetailsContainer.find('.cargo_fuel_type').text(fuelType);
                carDetailsContainer.find('.cargo_weight_capacity').text(weightCapacity);
                var length = parseInt(selectedRadio.data('length_in'));
                var width = parseInt(selectedRadio.data('width_in'));
                var depth = parseInt(selectedRadio.data('depth_in'));
                var bedDimensionUnitRaw = selectedRadio.data('bed_dimension_unit');

                var unitMap = {
                    feet: 'Ft'
                };

                var bedDimensionUnit = unitMap[bedDimensionUnitRaw] || bedDimensionUnitRaw.toUpperCase();
                var bedDimensionFormatted = `${length} * ${width} * ${depth} ${bedDimensionUnit}`;
                carDetailsContainer.find('.cargo_bed_dimension_unit').text(bedDimensionFormatted);
                carDetailsContainer.find('.cargo_body_type').text(`${bodyType} Body Type`);
                carDetailsContainer.find('.cargo_loading_ramp_available').text(loadingRampAvailable);
                carDetailsContainer.find('.cargo_permit_type').text(`${permitType} Permit`);
            });
        });
    </script>


    <script>
        $(document).ready(function() {

            // Update data-id attribute on radio button change
            $('#vehicle-list').on('change', '.car-model-radio', function() {
                var selectedRadio = $(this);
                var vehicleId = selectedRadio.data('modal');
                var transporterId = selectedRadio.data('transporter_id');
                selectedRadio.closest('.car-wrap').find('.contactdetails').attr('data-id', vehicleId);
                selectedRadio.closest('.car-wrap').find('.contactdetails').attr('data-transporter-id',
                    transporterId);
            });

            // Handle click on vehicle_info button
            $(document).on('click', '.contactdetails', function() {
                var vehicleId = $(this).attr('data-id');
                var transporterId = $(this).attr('data-transporter-id');
                if (!vehicleId) {
                    console.error("Vehicle ID not found.");
                    return;
                }
                $('.modal').modal('hide');
                $('#taxiBookingForm')[0].reset();
                console.log(vehicleId);
                $('#vehicle_id').val(vehicleId);
                $('#vehicle_info_button').attr('data-id', vehicleId);
                $('#transporter_id').val(transporterId);

                if ($('.orbicontactdetails').length) {
                    console.log("Opening modal for vehicle ID: " + vehicleId);
                    $('.orbicontactdetails').modal('show'); // Show the contact details modal
                } else {
                    console.error("Modal element not found.");
                }
                $('.orbicontactdetails').modal('show');

            });

        });
    </script>

    <script>
        var vehicle_types = <?php echo json_encode($vehicle_types, 15, 512) ?>;


        $(document).ready(function() {
            $('#vehicle-list').on('change', '.car-model-radio', function() {
                var selectedRadio = $(this);
                var vehicleId = selectedRadio.data('vehicle_id');
                var vehicle_image = '';

                $.ajax({
                    url: '<?php echo e(url('vehicledetails')); ?>/' + vehicleId,
                    method: 'GET',
                    data: {
                        'type': 'detail'
                    },
                    success: function(response) {

                        if (response.html) {
                            $('#vehicle-details-container').html(response
                                .html);
                        }

                        var vehicle_image = response.media_url || '';
                        console.log("Vehicle image URL: ", vehicle_image);
                        var imageElement = selectedRadio.closest('.car-wrap').find(
                            '.car-wrap-image-1 img');



                        if (vehicle_image) {
                            imageElement.attr('src', vehicle_image);
                        } else {
                            console.log("Media URL is undefined or empty");
                        }
                        console.log("Message: Vehicle details loaded successfully");
                    },
                    error: function(xhr, status, error) {
                        console.error('Error fetching vehicle details:', error);
                        console.log("AJAX error: " + error);
                    }
                });

                var carDetailsContainer = selectedRadio.closest('.car-wrap').find('.car-details-item');

                var make = selectedRadio.data('make');
                var model = selectedRadio.data('model');
                var image = selectedRadio.data('image');

                var modelId = selectedRadio.val();
                var vehicleTypeId = selectedRadio.data('vehicle_type_id');
                var fuelType = selectedRadio.data('fuel_type');
                var transmissionType = selectedRadio.data('transmission_type');
                var seatingcapacity = selectedRadio.data('seating_capacity');
                var serviceType = selectedRadio.data('service_type');
                var city = selectedRadio.data('city');


                var foundVehicleType = vehicle_types.find(type => type.id == vehicleTypeId);
                console.log("foundvehicle type " + foundVehicleType);
                if (foundVehicleType) {
                    vehicleTypeName = foundVehicleType.name;
                    console.log(foundVehicleType.name);
                }


                // carDetailsContainer.find('.car-details-heading h5').text(make + ' ' + model);
                carDetailsContainer.find('.car-details-heading h5').text(make);
                carDetailsContainer.find('.details-sub-heading').text(vehicleTypeName);

                carDetailsContainer.find('.right-details-fuel').text(fuelType);
                carDetailsContainer.find('.right-details-transmission').text(transmissionType);
                carDetailsContainer.find('.right-details-seating').text(seatingcapacity + " seater ");
                carDetailsContainer.find('.car-details-servicetype').text(serviceType);
                carDetailsContainer.find('.car-details-city').text(city);
            });
        });
    </script>


    <script>
        $(document).ready(function() {
       $.validator.addMethod("customEmail", function (value, element) {
    return this.optional(element) || /^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z]{2,}$/i.test(value);
}, "Please enter a valid email address.");

$("#taxiBookingForm").validate({
    rules: {
        'your_name': {
            required: true,
            maxlength: 255
        },
        'your_email': {
            required: function () {
                return $("#your_number").val().trim() === "";
            },
            customEmail: true, // Use custom method here
            maxlength: 255
        },
        'your_number': {
            required: function () {
                return $("#your_email").val().trim() === "";
            },
            digits: true,
            minlength: 10,
            maxlength: 10
        }
    },
    messages: {
        'your_name': {
            required: "Please enter your name.",
            maxlength: "Your name must not exceed 255 characters."
        },
        'your_email': {
            required: "Please enter your email address if phone number is not provided.",
            customEmail: "Please enter a valid email address (e.g. [email protected]).",
            maxlength: "Your email address must not exceed 255 characters."
        },
        'your_number': {
            required: "Please enter your phone number if email is not provided.",
            digits: "Your phone number must contain only digits.",
            minlength: "Your phone number must be exactly 10 digits.",
            maxlength: "Your phone number must be exactly 10 digits."
        }
    },

                submitHandler: function(form) {
                    // Use serialize() for form data
                    $.ajax({
                        url: $("#taxiBookingForm").attr('action'),
                        type: 'POST',
                        data: $(form).serialize(),
                        headers: {
                            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
                        },
                        success: function(response) {
                            // console.log('Success:', response);
                            if (response.html) {

                                $('.orbi-viewcontactdetails').find('.modal-body')
                                    .html(
                                        response
                                        .html);
                                $('.orbi-viewcontactdetails').modal('show');
                                $('.orbicontactdetails').modal('hide');
                            } else {
                                console.error('No HTML returned in response:',
                                    response);
                            }

                        },
                        error: function(xhr, status, error) {
                            console.error('Error details:', xhr
                                .responseText); // Log error details
                            alert('An error occurred while submitting the form.');
                        }
                    });
                    return false; // Prevent default form submission
                }
            });

        });
    </script>

    <script>
        document.addEventListener("DOMContentLoaded", function() {
            // Check if there's a success message
            <?php if(session('success')): ?>
                var myModal = new bootstrap.Modal(document.getElementById('exampleModal-1'));
                myModal.show();


                const successMessage = document.getElementById('success-message');
                if (successMessage) {
                    setTimeout(() => {
                        successMessage.style.display = 'none';
                    }, 5000);
                }


                $('#exampleModal-1').on('hidden.bs.modal', function() {
                    const successMessage = document.getElementById('success-message');
                    if (successMessage) {
                        successMessage.style.display = 'none';
                    }
                });
            <?php endif; ?>

            $("#BookingForm").validate({
                rules: {
                    your_name: {
                        required: true,
                        minlength: 2
                    },
                    your_number: {
                        required: true,
                        digits: true,
                        minlength: 10,
                        maxlength: 10
                    },
                    your_email: {
                        required: true,
                        email: true
                    },
                    vehicle_type: {
                        required: true
                    },
                    passenger: {
                        required: true,
                        digits: true,
                        min: 1
                    },
                    pickup: {
                        required: true
                    },
                    drop: {
                        required: true
                    },
                    datetimepicker1: {
                        required: true
                    },
                    your_message: {
                        required: true
                    }
                },
                messages: {
                    your_name: "Please enter your name",
                    your_number: {
                        required: "Please enter your phone number",
                        digits: "Please enter a valid phone number",
                        minlength: "Phone number must be 10 digits",
                        maxlength: "Phone number must be 10 digits"
                    },
                    your_email: {
                        required: "Please enter your email address",
                        email: "Please enter a valid email address"
                    },
                    vehicle_type: "Please select a vehicle type",
                    passenger: {
                        required: "Please enter the number of passengers",
                        digits: "Please enter a valid number",
                        min: "Number of passengers must be at least 1"
                    },
                    pickup: "Please enter a pickup location",
                    drop: "Please enter a drop location",
                    datetimepicker1: "Please select a date and time",
                    your_message: "Please enter a description"
                },

            });
        });
    $(document).ready(function () {
            // Show modal if there is a success message
            <?php if(session('report_success')): ?>
                var reportModal = new bootstrap.Modal(document.getElementById('userReport'));
                reportModal.show();

                const reportMessage = document.getElementById('report-success-message');
                if (reportMessage) {
                    setTimeout(() => {
                        reportMessage.style.display = 'none';
                    }, 5000);
                }

                $('#userReport').on('hidden.bs.modal', function() {
                    if (reportMessage) {
                        reportMessage.style.display = 'none';
                    }
                });
            <?php endif; ?>

            $.validator.addMethod("fileSize", function(value, element, param) {
                if (element.files.length > 0) {
                    return element.files[0].size <= param;
                }
                return true;
            }, "The uploaded file should not exceed 1MB.");

            // jQuery validation for user report form
            $(document).ready(function() {
                $("#userRequest").validate({
                    rules: {
                        transporter_name: {
                            required: true
                        },
                        reported_user_image: {
                            required: true,
                            extension: "jpg|jpeg|png|pdf|mp4|mov|avi", // Validate file type
                            fileSize: 1024 * 1024 // 1MB file size limit
                        },
                        reason: {
                            required: true
                        }
                    },
                    messages: {
                        transporter_name: "Please enter the transporter's name",
                        reported_user_image: {
                            required: "Please upload an image",
                            extension: "Allowed file types: jpg, jpeg, png, pdf, mp4, mov, avi",
                            fileSize: "The uploaded file should not exceed 1MB."
                        },
                        reason: "Please provide a reason for the report"
                    }
                });
            });
        });
        // For cargo transport
        $(document).ready(function () {
            // Show modal if there is a success message
            <?php if(session('report_success')): ?>
                var reportModal = new bootstrap.Modal(document.getElementById('reportCargoUser'));
                reportModal.show();

                const reportMessage = document.getElementById('report-success-message');
                if (reportMessage) {
                    setTimeout(() => {
                        reportMessage.style.display = 'none';
                    }, 5000);
                }

                $('#reportCargoUser').on('hidden.bs.modal', function() {
                    if (reportMessage) {
                        reportMessage.style.display = 'none';
                    }
                });
            <?php endif; ?>

            $.validator.addMethod("fileSize", function(value, element, param) {
                if (element.files.length > 0) {
                    return element.files[0].size <= param;
                }
                return true;
            }, "The uploaded file should not exceed 1MB.");

            // jQuery validation for user report form
            $(document).ready(function() {
                $("#userCargoRequest").validate({
                    rules: {
                        transporter_name: {
                            required: true
                        },
                        reported_user_image: {
                            required: true,
                            extension: "jpg|jpeg|png|pdf|mp4|mov|avi", // Validate file type
                            fileSize: 1024 * 1024 // 1MB file size limit
                        },
                        reason: {
                            required: true
                        }
                    },
                    messages: {
                        transporter_name: "Please enter the transporter's name",
                        reported_user_image: {
                            required: "Please upload an image",
                            extension: "Allowed file types: jpg, jpeg, png, pdf, mp4, mov, avi",
                            fileSize: "The uploaded file should not exceed 1MB."
                        },
                        reason: "Please provide a reason for the report"
                    }
                });
            });
        });
    </script>
    



    <script>
        $(document).ready(function() {

            $("#BookingFormhome").validate({
                rules: {
                    your_name: {
                        required: true,
                        minlength: 2
                    },
                    your_number: {
                        required: true,
                        digits: true,
                        minlength: 10,
                        maxlength: 10
                    },
                    your_email: {
                        required: true,
                        email: true
                    },
                    vehicle_type: {
                        required: true
                    },
                    passenger: {
                        required: true,
                        digits: true,
                        min: 1
                    },
                    pickup: {
                        required: true
                    },
                    drop: {
                        required: true
                    },
                    datetimepicker1: {
                        required: true
                    },
                    your_message: {
                        required: true
                    }
                },
                messages: {
                    your_name: "Please enter your name",
                    your_number: {
                        required: "Please enter your phone number",
                        digits: "Please enter a valid phone number",
                        minlength: "Phone number must be 10 digits",
                        maxlength: "Phone number must be 10 digits"
                    },
                    your_email: {
                        required: "Please enter your email address",
                        email: "Please enter a valid email address"
                    },
                    vehicle_type: "Please select a vehicle type",
                    passenger: {
                        required: "Please enter the number of passengers",
                        digits: "Please enter a valid number",
                        min: "Number of passengers must be at least 1"
                    },
                    pickup: "Please enter a pickup location",
                    drop: "Please enter a drop location",
                    datetimepicker1: "Please select a date and time",
                    your_message: "Please enter a description"
                },

            });

        });
    </script>


    <script>
      $(document).ready(function() {
        const limit = 9; // Number of items per page
        let currentPage = 1; // Initial page

    // Function to load vehicles with AJAX
    function loadVehicles(page) {
        currentPage = page; // Update current page
        let formData = $('#searchallForm').serializeArray().reduce((obj, item) => {
            obj[item.name] = item.value;
            return obj;
        }, {});

        $(".loader-main").show();
         let seating_capacity = $('#seating_capacity').val();
        $.ajax({
            url: '<?php echo e(route('vehicles.ajax')); ?>',
            type: 'GET',
            data: {
                  seating_capacity: seating_capacity,
                ...formData,
                page: page,
                limit: limit
            },
            success: function(response) {
                $(".loader-main").hide();
                // Replace vehicle list with new content
                $('#vehicle-list').html(response.html);
                // ✅ Show the filter after content loads
                $('.passenger_vehicle_filter').show();

                // Update pagination
                generatePagination(response.total_pages, page);
                $('.car-model-radio:checked').trigger('change');
            },
            error: function() {
                alert('An error occurred while fetching data.');
            }
        });
    }

    // Trigger the loadVehicles function when the seating capacity dropdown value is changed
    $('select[name="seating_capacity"]').change(function() {
        loadVehicles(currentPage);
    });

    // Function to generate pagination links (already provided in your code)
    function generatePagination(totalPages, currentPage) {
        $('#pagination-links').empty();

        // Previous button
        $('#pagination-links').append(`
            <li class="page-item ${currentPage === 1 ? 'disabled' : ''}">
                <a class="page-link" href="#" data-page="${currentPage - 1}"><i class="fas fa-arrow-left"></i></a>
            </li>
        `);

        // Page numbers
        for (let page = 1; page <= totalPages; page++) {
            $('#pagination-links').append(`
                <li class="page-item ${page === currentPage ? 'active' : ''}">
                    <a class="page-link" href="#" data-page="${page}">${page}</a>
                </li>
            `);
        }

        // Next button
        $('#pagination-links').append(`
            <li class="page-item ${currentPage === totalPages ? 'disabled' : ''}">
                <a class="page-link" href="#" data-page="${currentPage + 1}"><i class="fas fa-arrow-right"></i></a>
            </li>
        `);

        // Attach click event to pagination links
        $('#pagination-links .page-link').click(function(e) {
            e.preventDefault();
            const page = $(this).data('page');
            if (page > 0 && page <= totalPages) {
                loadVehicles(page);
            }
        });
    }

    // Initial load with no filters
    const currentRoute = window.location.pathname;
    if (currentRoute === '/search') {
        loadVehicles(currentPage);
    }
});

    </script>
     <script>
        // $(document).ready(function() {
        //     const limit = 9; // Number of items per page
        //     let currentPage = 1; // Initial page

        //     // Function to load vehicles with AJAX
        //     function loadVehicles(page) {
        //         currentPage = page; // Update current page
        //         let formData = $('#searchallForm').serializeArray().reduce((obj, item) => {
        //             obj[item.name] = item.value;
        //             return obj;
        //         }, {});

        //         $(".loader-main").show();
        //         let weight_capacity = $('#weight_capacity').val();
        //         $.ajax({
        //             url: '<?php echo e(route('get.cargo.vehicle')); ?>',
        //             type: 'GET',
        //             data: { 
        //                 weight_capacity: weight_capacity,
        //                 ...formData, 
        //                 page: page, 
        //                 limit: limit 
        //             },
        //             success: function(response) {
        //                 $(".loader-main").hide();
        //                 $('#cargo_vehicle_list').html(response.html);  // Replace vehicle list with new content
        //                 generatePagination(response.total_pages, page); // Update pagination
        //             },
        //             error: function() {
        //                 alert('An error occurred while fetching data.');
        //             }
        //         });
        //     }

        //     // Function to generate pagination links
        //     function generatePagination(totalPages, currentPage) {
        //         $('#cargo-pagination-links').empty();
        //         $('#cargo-pagination-links').append(`
        //             <li class="page-item ${currentPage === 1 ? 'disabled' : ''}">
        //                 <a class="page-link" href="#" data-page="${currentPage - 1}"><i class="fas fa-arrow-left"></i></a>
        //             </li>
        //         `);
        //         for (let page = 1; page <= totalPages; page++) {
        //             $('#cargo-pagination-links').append(`
        //                 <li class="page-item ${page === currentPage ? 'active' : ''}">
        //                     <a class="page-link" href="#" data-page="${page}">${page}</a>
        //                 </li>
        //             `);
        //         }
        //         $('#cargo-pagination-links').append(`
        //             <li class="page-item ${currentPage === totalPages ? 'disabled' : ''}">
        //                 <a class="page-link" href="#" data-page="${currentPage + 1}"><i class="fas fa-arrow-right"></i></a>
        //             </li>
        //         `);
        //         $('#cargo-pagination-links .page-link').click(function(e) {
        //             e.preventDefault();
        //             const page = $(this).data('page');
        //             if (page > 0 && page <= totalPages) {
        //                 loadVehicles(page);
        //             }
        //         });
        //     }

        //     // Handle weight capacity dropdown change
        //     $('#weight_capacity').on('change', function() {
        //         loadVehicles(currentPage);  // Re-load vehicles when filter changes
        //     });

        //     // Handle filter form submission via AJAX
        //     $('#filterButton').on('click', function(e) {
        //         e.preventDefault(); // Prevent default form submission
        //         loadVehicles(currentPage);
        //     });

        //     // Initial load with no filters
        //     loadVehicles(currentPage);
        // });
        $(document).ready(function() {
    // Read config
    let config = $('#cargoConfig').data();
    const limit = parseInt(config.limit);
    const pagination = config.pagination === true || config.pagination === 'true';
    let currentPage = 1;

    function loadVehicles(page) {
        currentPage = page;

        let formData = $('#searchallForm').serializeArray().reduce((obj, item) => {
            obj[item.name] = item.value;
            return obj;
        }, {});

        let weight_capacity = $('#weight_capacity').val();

        $(".loader-main").show();

        $.ajax({
            url: '<?php echo e(route('get.cargo.vehicle')); ?>',
            type: 'GET',
            data: {
                weight_capacity: weight_capacity,
                ...formData,
                page: page,
                limit: limit,
                pagination: pagination
            },
            success: function(response) {
                $(".loader-main").hide();
                $('#cargo_vehicle_list').html(response.html);

                if (response.pagination) {
                    generatePagination(response.total_pages, page);
                } else {
                    $('#cargo-pagination-links').empty();
                }
            },
            error: function() {
                $(".loader-main").hide();
                alert('An error occurred while fetching data.');
            }
        });
    }

    function generatePagination(totalPages, currentPage) {
        $('#cargo-pagination-links').empty();

        $('#cargo-pagination-links').append(`
            <li class="page-item ${currentPage === 1 ? 'disabled' : ''}">
                <a class="page-link" href="#" data-page="${currentPage - 1}"><i class="fas fa-arrow-left"></i></a>
            </li>
        `);

        for (let page = 1; page <= totalPages; page++) {
            $('#cargo-pagination-links').append(`
                <li class="page-item ${page === currentPage ? 'active' : ''}">
                    <a class="page-link" href="#" data-page="${page}">${page}</a>
                </li>
            `);
        }

        $('#cargo-pagination-links').append(`
            <li class="page-item ${currentPage === totalPages ? 'disabled' : ''}">
                <a class="page-link" href="#" data-page="${currentPage + 1}"><i class="fas fa-arrow-right"></i></a>
            </li>
        `);

        $('#cargo-pagination-links .page-link').click(function(e) {
            e.preventDefault();
            const page = $(this).data('page');
            if (page > 0 && page <= totalPages) {
                loadVehicles(page);
            }
        });
    }

    $('#weight_capacity').on('change', function() {
        loadVehicles(1);
    });

    $('#filterButton').on('click', function(e) {
        e.preventDefault();
        loadVehicles(1);
    });

    loadVehicles(currentPage);
});
    </script>
    <script>
        document.addEventListener("DOMContentLoaded", function() {
            // Check if there's a success message
            <?php if(session('business_success')): ?>
                var myModal = new bootstrap.Modal(document.getElementById('exampleModal-2'));
                myModal.show();


                const successMessage = document.getElementById('success-register-business-message');
                if (successMessage) {
                    setTimeout(() => {
                        successMessage.style.display = 'none';
                    }, 5000);
                }


                $('#exampleModal-2').on('hidden.bs.modal', function() {
                    const successMessage = document.getElementById('success-register-business-message');
                    if (successMessage) {
                        successMessage.style.display = 'none';
                    }
                });
            <?php endif; ?>
            $('#register_business').validate({ // initialize the plugin
                rules: {
                    name: {
                        required: true,
                        maxlength: 255
                    },
                    email: {
                        required: true,
                        email: true
                    },
                    phone_number: {
                        required: true,
                        digits: true,
                        minlength: 9,
                        maxlength: 10
                    },
                    message: {
                        required: false,
                        maxlength: 500
                    }
                },
                messages: {
                    name: {
                        required: "Please enter your name",
                        maxlength: "Name must not exceed 255 characters"
                    },
                    email: {
                        email: "Please enter a valid email address"
                    },
                    phone_number: {
                        digits: "Please enter only digits (0-9)",
                        minlength: "Phone number must be 9 digits",
                        maxlength: "Phone number cannot exceed 10 digits"
                    },
                    message: {
                        required: "Please enter your message",
                        maxlength: "Message must not exceed 500 characters"
                    }
                },
            });



            $('#subscribe_form').validate({ // initialize the plugin
                rules: {
                    email: {
                        required: true,
                        email: true
                    }
                },
                messages: {
                    email: {
                        email: "Please enter a valid email address"
                    },
                },
            });

        });
    </script>
    <script>
        $(document).ready(function() {
            // Show the city select popup if no city is selected (optional)
            if (!$('#city-dropdown').val()) {
                $('#city_select_popup').modal('show');
            }

            $.ajaxSetup({
                headers: {
                    'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
                }
            });

              // Show loader function
                function showLoader() {
                    $('.loader-main').show();
                }

                // Hide loader function
                function hideLoader() {
                    $('.loader-main').hide();
                }
            // Handle city selection from the header dropdown
            $('#city-dropdown').change(function() {
                var selectedCityId = $(this).val();
                 showLoader();
                // Make an AJAX POST request to update the selected city
                $.post("<?php echo e(route('select.city')); ?>", {
                    city_id: selectedCityId
                }, function(response) {
                    if (response.status === 'success') {
                        $('#city-dropdown option:selected').text(response.city_name);

                        // Refresh the page
                        location.reload();
                    }
                 }).fail(function() {
                    alert('Failed to update the city. Please try again.');
                }).always(function() {
                    hideLoader(); // Hide loader after completion
                });
            });
            $(document).ready(function() {
                $("#reportForm").on("submit", function(event) {
                    event.preventDefault();

                    var formData = new FormData(this);

                    $.ajax({
                        url: $(this).attr("action"),
                        type: "POST",
                        data: formData,
                        processData: false,
                        contentType: false,
                        success: function(response) {

                            $("#successMessage").html(
                                '<div class="alert alert-success"> Report submitted successfully!</div>'
                            ).fadeIn();

                            $("#reportForm")[0].reset();

                            setTimeout(function() {
                                $("#successMessage").fadeOut();
                                $("#reportedUserModal").modal("hide");
                            }, 2000);
                        },
                        error: function(xhr) {
                            $("#errorMessage").html(
                                '<div class="alert alert-danger"> Something went wrong! Please try again.</div>'
                            ).fadeIn();

                            setTimeout(function() {
                                $("#errorMessage").fadeOut();
                            }, 3000);
                        }
                    });
                });
            });




            $("#reportForm").validate({
                rules: {
                    name: {
                        minlength: 3
                    },
                    email: {
                        email: true
                    },
                    reason: {
                        required: true,
                        minlength: 5
                    },
                    transporter: {
                        required: true
                    }
                },
                messages: {
                    name: {
                        minlength: "Name must be at least 3 characters long."
                    },
                    email: {
                        email: "Enter a valid email address."
                    },
                    reason: {
                        required: "Reason is required.",
                        minlength: "Reason must be at least 5 characters long."
                    },
                    transporter: {
                        required: "Transporter is required."
                    }
                },
                errorElement: "small",
                errorClass: "text-danger",
                highlight: function(element) {
                    $(element).addClass("is-invalid");
                },
                unhighlight: function(element) {
                    $(element).removeClass("is-invalid");
                },
                errorPlacement: function(error, element) {
                    error.insertAfter(element);
                }
            });

        });
        
     const seatingOptions = JSON.parse($('#seating_options_data').val());

    $('#service_type').on('change', function () {
        const selectedType = $(this).val();
        const capacityDropdown = $('#seating_capacity');

        // Set placeholder based on selected service type
        const labelText = selectedType === 'Goods Transport' ? 'Weight Capacity' : 'Seating Capacity';

        // Reset dropdown and show dynamic first option
        capacityDropdown.empty().append(`<option value="">${labelText}</option>`);

        // Append new options
        if (seatingOptions[selectedType]) {
            $.each(seatingOptions[selectedType], function (key, value) {
                capacityDropdown.append(`<option value="${key}">${value}</option>`);
            });
        }
    });
</script>
<?php /**PATH /var/www/html/orbidirectory.com/resources/views/front/partial/script.blade.php ENDPATH**/ ?>