{"id":1651,"date":"2024-04-29T17:57:31","date_gmt":"2024-04-30T00:57:31","guid":{"rendered":"https:\/\/surfingontheroad.com\/?page_id=1651"},"modified":"2024-04-29T17:59:18","modified_gmt":"2024-04-30T00:59:18","slug":"transportacion","status":"publish","type":"page","link":"https:\/\/surfingontheroad.com\/en_us\/transportacion\/","title":{"rendered":"transportacion"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"1651\" class=\"elementor elementor-1651\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d961e2b d-none e-flex e-con-boxed e-con e-parent\" data-id=\"d961e2b\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-938aadc e-flex e-con-boxed e-con e-parent\" data-id=\"938aadc\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fea1036 elementor-widget elementor-widget-counter\" data-id=\"fea1036\" data-element_type=\"widget\" data-widget_type=\"counter.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-counter\">\n\t\t\t<div class=\"elementor-counter-title\">+ Destinos<\/div>\t\t\t<div class=\"elementor-counter-number-wrapper\">\n\t\t\t\t<span class=\"elementor-counter-number-prefix\"><\/span>\n\t\t\t\t<span class=\"elementor-counter-number\" data-duration=\"2000\" data-to-value=\"600\" data-from-value=\"0\" data-delimiter=\",\">0<\/span>\n\t\t\t\t<span class=\"elementor-counter-number-suffix\"><\/span>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-88bab3c elementor-widget elementor-widget-counter\" data-id=\"88bab3c\" data-element_type=\"widget\" data-widget_type=\"counter.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-counter\">\n\t\t\t<div class=\"elementor-counter-title\">Clientes satisfechos<\/div>\t\t\t<div class=\"elementor-counter-number-wrapper\">\n\t\t\t\t<span class=\"elementor-counter-number-prefix\"><\/span>\n\t\t\t\t<span class=\"elementor-counter-number\" data-duration=\"2000\" data-to-value=\"1200\" data-from-value=\"0\" data-delimiter=\",\">0<\/span>\n\t\t\t\t<span class=\"elementor-counter-number-suffix\"><\/span>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4185bc6 elementor-widget elementor-widget-counter\" data-id=\"4185bc6\" data-element_type=\"widget\" data-widget_type=\"counter.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-counter\">\n\t\t\t<div class=\"elementor-counter-title\">Unidades de lujo<\/div>\t\t\t<div class=\"elementor-counter-number-wrapper\">\n\t\t\t\t<span class=\"elementor-counter-number-prefix\"><\/span>\n\t\t\t\t<span class=\"elementor-counter-number\" data-duration=\"2000\" data-to-value=\"30\" data-from-value=\"0\" data-delimiter=\",\">0<\/span>\n\t\t\t\t<span class=\"elementor-counter-number-suffix\"><\/span>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-deaaa8d e-con-full e-flex e-con e-parent\" data-id=\"deaaa8d\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-bc0afd2 e-con-full e-flex e-con e-parent\" data-id=\"bc0afd2\" data-element_type=\"container\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1c4bd4f e-flex e-con-boxed e-con e-parent\" data-id=\"1c4bd4f\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-be0b043 e-con-full e-flex e-con e-parent\" data-id=\"be0b043\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-0b9ddf5 e-flex e-con-boxed e-con e-parent\" data-id=\"0b9ddf5\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-edd7b0b order-2 noSpace elementor-widget elementor-widget-text-editor\" data-id=\"edd7b0b\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<i class=\"fa fa-shuttle-van\"><\/i><span class=\"dgray\">Passenger Transportation<\/span>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fe127a3 order-2 noSpace elementor-widget elementor-widget-text-editor\" data-id=\"fe127a3\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tRound Trip <span class=\"dgray\">\u2022<\/span> Hotel <span class=\"dgray\">\u2022<\/span> CUN Airport\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-596acc9 order-2 noSpace elementor-widget elementor-widget-text-editor\" data-id=\"596acc9\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<ul>\n<li><b class=\"costosUsd\">COSTOS DE NUESTRA PLATAFORMA EN USD<\/b><\/li>\n \t<li>Las reservaciones de transporte en nuestra plataforma web,  deber\u00e1n realizarse con 24<span style=\"text-decoration: underline;\">\u00a0hrs de anticipaci\u00f3n<\/span>. Cont\u00e1ctanos por WhatsApp para reservaciones express.<\/li>\n\n<\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-93ef966 order-1 e-flex e-con-boxed e-con e-parent\" data-id=\"93ef966\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-74f7577 e-con-full e-flex e-con e-parent\" data-id=\"74f7577\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8759a2c noSpace elementor-widget elementor-widget-text-editor\" data-id=\"8759a2c\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tIf you can't find your hotel in destination \/ origin, please reach us via WhatsApp,<br class=\"d-xl-none\">\nto schedule your reservation.\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f564120 e-con-full e-flex e-con e-parent\" data-id=\"f564120\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-755bfe0 formWhats elementor-view-default elementor-widget elementor-widget-icon\" data-id=\"755bfe0\" data-element_type=\"widget\" data-widget_type=\"icon.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-wrapper\">\n\t\t\t<a class=\"elementor-icon elementor-animation-bounce-in\" href=\"https:\/\/wa.me\/5219841388860\" target=\"_blank\">\n\t\t\t<i aria-hidden=\"true\" class=\"fab fa-whatsapp\"><\/i>\t\t\t<\/a>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8888ba1 order-3 elementor-widget elementor-widget-shortcode\" data-id=\"8888ba1\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n\n<div class=\"container-fluid overflow-visible py-2\">\n        <div class=\"row\">\n            <form id=\"reservation-form\" action=\"#\" method=\"post\" role=\"form\" aria-labelledby=\"reservation-form-heading\" data-trp-original-action=\"#\">\n\n                <div class=\"row mb-3\">\n                    <div class=\"col-md-12\">\n                        <label class=\"titleForm\" for=\"trip-type\">Trip type:<\/label>\n                        <select id=\"trip-type\" name=\"trip-type\" class=\"form-select\" required aria-required=\"true\">\n                            <option class=\"options\" value=\"redondo\">Round Trip<\/option>\n                            <option class=\"options\" value=\"sencillo\">Transfer Hotel<\/option>\n                            <option class=\"options\" value=\"aeropuerto\">Transfer to Airport<\/option>\n                        <\/select>\n                    <\/div>\n                <\/div>\n\n                <div class=\"row mb-3\">\n                    <div class=\"col-md-6 fieldInputtest\">\n                            <label class=\"titleForm\" for=\"origin\">Origin<\/label>\n                            <input class=\"origin readonly-input\" type=\"text\" id=\"origin\" name=\"origin\" value=\"CUN - Aeropuerto Internacional Canc\u00fan\" placeholder=\"CUN - Aeropuerto Internacional Canc\u00fan\" required aria-required=\"true\" aria-autocomplete=\"list\" readonly=\"true\">\n                            <div id=\"origin-autocomplete\" class=\"autocomplete-suggestions\" role=\"listbox\" aria-labelledby=\"origin\"><\/div>\n                        <\/div>\n\n                        <div class=\"col-md-6 fieldInputtest\">\n                            <label class=\"titleForm\" for=\"destination\">Destination:<\/label>\n                            <input class=\"destination\" type=\"text\" id=\"destination\" name=\"destination\" placeholder=\"Search your Hotel . . .\" required aria-required=\"true\" aria-autocomplete=\"list\">\n                            <div id=\"destination-autocomplete\" class=\"autocomplete-suggestions\" role=\"listbox\" aria-labelledby=\"destination\"><\/div>\n                        <\/div>\n\n                   <div class=\"col-md-6\">\n                       <label class=\"titleForm\" for=\"arrival-date\">Arrival date<\/label>\n                       <input type=\"date\" id=\"arrival-date\" name=\"arrival-date\" class=\"form-control\" required aria-required=\"true\" min=\"2026-05-07\" aria-describedby=\"arrival-description\">\n                       <div id=\"arrival-description\" class=\"text-danger d-none\">Arrival date is required, please.<\/div>\n\n                   <\/div>\n                   <div class=\"col-md-6\">\n                       <label class=\"titleForm\" for=\"return-date\">Departure date:<\/label>\n                       <input type=\"date\" id=\"return-date\" name=\"return-date\" class=\"form-control\" min=\"2026-05-08\" aria-describedby=\"return-description\">\n                       <div id=\"return-description\" class=\"text-danger d-none\">For your safe return, please.<\/div>\n                   <\/div>\n                <\/div>\n\n                <div class=\"row mb-3\">\n                    <div class=\"col-md-6\">\n                        <label class=\"titleForm\" for=\"adults\">Adults:<\/label>\n                        <input type=\"number\" id=\"adults\" name=\"adults\" class=\"form-control\" min=\"1\" required aria-required=\"true\">\n                    <\/div>\n\n                    <div class=\"col-md-6\">\n                        <label class=\"titleForm\" for=\"children\">Children:<\/label>\n                        <input type=\"number\" id=\"children\" name=\"children\" class=\"form-control\" min=\"0\" required aria-required=\"true\">\n                    <\/div>\n                <\/div>\n\n                <input type=\"submit\" name=\"submit_reservation\" value=\"Search\" class=\"btn btn-primary\" onclick=\"confirmClearCart()\">\n\n            <input type=\"hidden\" name=\"trp-form-language\" value=\"en_us\"\/><\/form>\n        <\/div>\n    <\/div>\n\n    \n\n    <script>\n        document.addEventListener('DOMContentLoaded', function () {\n            const tripTypeSelect = document.getElementById(\"trip-type\");\n            const destinationInput = document.getElementById(\"destination\");\n            const originInput = document.getElementById(\"origin\");\n            const autocompleteContainer = document.getElementById(\"destination-autocomplete\");\n            const originAutocompleteContainer = document.getElementById(\"origin-autocomplete\");\n\n            let jsonData = []; \/\/ Initialize an empty array to store hotel data\n\n            \/\/ Fetch the hotel data from the API\n            fetch('https:\/\/surfingontheroad.com\/wp-content\/plugins\/transport-reservation\/zonas.json')\n                .then(response => response.json())\n                .then(zonasData => {\n                    jsonData = zonasData; \/\/ Store the fetched data in the jsonData variable\n\n                    \/\/ Event listener for trip type selection changes\n                    tripTypeSelect.addEventListener(\"change\", function () {\n                        const selectedValue = this.value;\n\n                        \/\/ Reset the labels and values for origin and destination\n                        document.querySelector('label[for=\"origin\"]').textContent = \"Origen:\";\n                        originInput.value = \"\";\n                        destinationInput.value = \"\";\n\n                        \/\/ Lock and gray out the origin and destination fields based on selected trip type\n                        if (selectedValue === \"redondo\" || selectedValue === \"sencillo\") {\n                            originInput.readOnly = true;\n                            originInput.placeholder = \"CUN - Aeropuerto Internacional Canc\u00fan\"; \/\/ Reset the placeholder for Origen\n                            originInput.classList.add(\"readonly-input\");\n\n                            destinationInput.readOnly = false; \/\/ Allow searching for hotels\n                            destinationInput.classList.remove(\"readonly-input\");\n                        } else if (selectedValue === \"aeropuerto\") {\n                            originInput.readOnly = false;\n                            originInput.placeholder = \"Busca tu Hotel\"; \/\/ Update the placeholder for Origen\n                            originInput.classList.remove(\"readonly-input\");\n                            destinationInput.readOnly = true;\n                            destinationInput.value = \"CUN - Aeropuerto Internacional Canc\u00fan\"; \/\/ Set default value for Destino\n                            destinationInput.classList.add(\"readonly-input\");\n                        } else {\n                            originInput.readOnly = false;\n                            originInput.placeholder = \"CUN - Aeropuerto Internacional Canc\u00fan\"; \/\/ Reset the placeholder for Origen\n                            originInput.classList.remove(\"readonly-input\");\n                            destinationInput.readOnly = false;\n                            destinationInput.classList.remove(\"readonly-input\");\n                        }\n\n                        \/\/ Hide all description elements\n                        document.querySelectorAll('.text-danger').forEach(function (descriptionElement) {\n                            descriptionElement.classList.add('d-none');\n                        });\n\n                        \/\/ Make both date fields readonly by default\n                        document.getElementById(\"arrival-date\").readOnly = true;\n                        document.getElementById(\"return-date\").readOnly = true;\n\n                        if (selectedValue === \"aeropuerto\") {\n                            \/\/ Show the return date description for \"Transfer Aeropuerto\"\n                            document.getElementById(\"return-description\").classList.remove('d-none');\n                            \/\/ Make the return date field editable\n                            document.getElementById(\"return-date\").readOnly = false;\n                        } else if (selectedValue === \"redondo\") {\n                            \/\/ Show both arrival and return date descriptions for \"Redondo\"\n                            document.getElementById(\"arrival-description\").classList.remove('d-none');\n                            document.getElementById(\"return-description\").classList.remove('d-none');\n                            \/\/ Make both date fields editable for \"Redondo\"\n                            document.getElementById(\"arrival-date\").readOnly = false;\n                            document.getElementById(\"return-date\").readOnly = false;\n                        } else if (selectedValue === \"sencillo\") {\n                            \/\/ Show only the arrival date description for \"Transfer Hotel\"\n                            document.getElementById(\"arrival-description\").classList.remove('d-none');\n                            \/\/ Make the arrival date field editable for \"Transfer Hotel\"\n                            document.getElementById(\"arrival-date\").readOnly = false;\n                        }\n                    });\n\n\n\n                    \/\/ Event listener for input changes\n                    destinationInput.addEventListener(\"input\", function () {\n                        const inputValue = this.value.toLowerCase();\n                        let suggestions = [];\n\n                        if (inputValue.length >= 15) {\n                            \/\/ Show full list as you continue typing\n                            suggestions = jsonData;\n                        } else {\n                            \/\/ Show suggestions that match the first 12 characters\n                            suggestions = jsonData.filter(item => item.nombreHotel.toLowerCase().startsWith(inputValue));\n                        }\n\n                        \/\/ Clear previous suggestions\n                        autocompleteContainer.innerHTML = \"\";\n\n                        \/\/ Add new suggestions to the autocomplete container\n                        suggestions.forEach(item => {\n                            const suggestionElement = document.createElement(\"div\");\n                            suggestionElement.textContent = item.nombreHotel;\n                            suggestionElement.classList.add(\"autocomplete-suggestion\");\n\n                            suggestionElement.addEventListener(\"click\", function () {\n                                \/\/ Set the selected suggestion as the input value\n                                destinationInput.value = item.nombreHotel;\n                                autocompleteContainer.innerHTML = \"\";\n                            });\n\n                            autocompleteContainer.appendChild(suggestionElement);\n                        });\n                    });\n\n                    \/\/ Event listener to close the autocomplete container when clicking elsewhere on the page\n                    document.addEventListener(\"click\", function (event) {\n                        if (event.target !== destinationInput) {\n                            autocompleteContainer.innerHTML = \"\";\n                        }\n                    });\n\n                    \/\/ Event listener for input changes for origin when \"Transfer Aeropuerto\" is selected\n                    originInput.addEventListener(\"input\", function () {\n                        const inputValue = this.value.toLowerCase();\n                        let suggestions = [];\n\n                        if (inputValue.length <= 5) {\n                            \/\/ Show suggestions that match the first two characters\n                            suggestions = jsonData.filter(item => item.nombreHotel.toLowerCase().startsWith(inputValue));\n                        } else {\n                            \/\/ Show full list as you continue typing\n                            suggestions = jsonData;\n                        }\n\n                        \/\/ Clear previous suggestions\n                        originAutocompleteContainer.innerHTML = \"\";\n\n                        \/\/ Add new suggestions to the autocomplete container\n                        suggestions.forEach(item => {\n                            const suggestionElement = document.createElement(\"div\");\n                            suggestionElement.textContent = item.nombreHotel;\n                            suggestionElement.classList.add(\"autocomplete-suggestion\");\n\n                            suggestionElement.addEventListener(\"click\", function () {\n                                \/\/ Set the selected suggestion as the input value\n                                originInput.value = item.nombreHotel;\n                                originAutocompleteContainer.innerHTML = \"\";\n                            });\n\n                            originAutocompleteContainer.appendChild(suggestionElement);\n                        });\n                    });\n\n                    \/\/ Event listener to close the autocomplete container for origin when clicking elsewhere on the page\n                    document.addEventListener(\"click\", function (event) {\n                        if (event.target !== originInput) {\n                            originAutocompleteContainer.innerHTML = \"\";\n                        }\n                    });\n                });\n        });\n    <\/script><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4d03796 order-4 elementor-widget elementor-widget-shortcode\" data-id=\"4d03796\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-99ef32b e-con-full e-flex e-con e-parent\" data-id=\"99ef32b\" data-element_type=\"container\">\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>0 + Destinos 0 Clientes satisfechos 0 Unidades de lujo TransferenciasRedondo \u2022 Hotel \u2022 Aeropuerto CUN COSTOS DE NUESTRA PLATAFORMA EN USD Las reservaciones de transporte en nuestra plataforma web, deber\u00e1n realizarse con 24\u00a0hrs de anticipaci\u00f3n. Cont\u00e1ctanos por WhatsApp para reservaciones express. \u00bfNo encuentras tu Hotel, o necesitas un Express Transfer? cont\u00e1ctanos por WhatsApp<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1651","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/surfingontheroad.com\/en_us\/wp-json\/wp\/v2\/pages\/1651","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/surfingontheroad.com\/en_us\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/surfingontheroad.com\/en_us\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/surfingontheroad.com\/en_us\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/surfingontheroad.com\/en_us\/wp-json\/wp\/v2\/comments?post=1651"}],"version-history":[{"count":4,"href":"https:\/\/surfingontheroad.com\/en_us\/wp-json\/wp\/v2\/pages\/1651\/revisions"}],"predecessor-version":[{"id":1655,"href":"https:\/\/surfingontheroad.com\/en_us\/wp-json\/wp\/v2\/pages\/1651\/revisions\/1655"}],"wp:attachment":[{"href":"https:\/\/surfingontheroad.com\/en_us\/wp-json\/wp\/v2\/media?parent=1651"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}