{"id":5325,"date":"2025-11-07T07:50:23","date_gmt":"2025-11-07T07:50:23","guid":{"rendered":"https:\/\/clt.githobby.com\/?page_id=5325"},"modified":"2025-11-07T10:29:45","modified_gmt":"2025-11-07T10:29:45","slug":"bookmytickets","status":"publish","type":"page","link":"http:\/\/clt.githobby.com\/si\/bookmytickets\/","title":{"rendered":"BookMyTickets"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"5325\" class=\"elementor elementor-5325\" data-elementor-post-type=\"page\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-1427b2bc elementor-section-height-min-height elementor-section-items-bottom elementor-section-full_width elementor-section-stretched elementor-section-height-default\" data-id=\"1427b2bc\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;stretch_section&quot;:&quot;section-stretched&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1730c855\" data-id=\"1730c855\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-77dfa6a3 elementor-widget elementor-widget-heading\" data-id=\"77dfa6a3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">An Seamless Experience <\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9990b28 elementor-widget elementor-widget-heading\" data-id=\"9990b28\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Book Your Tickets<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-045852d elementor-section-full_width elementor-section-stretched elementor-section-height-default elementor-section-height-default\" data-id=\"045852d\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;stretch_section&quot;:&quot;section-stretched&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-3828fa8\" data-id=\"3828fa8\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-11df1db elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"11df1db\" data-element_type=\"section\" data-e-type=\"section\" id=\"student\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-f6d8192\" data-id=\"f6d8192\" data-element_type=\"column\" data-e-type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-005d91c elementor-widget elementor-widget-image\" data-id=\"005d91c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"http:\/\/clt.githobby.com\/wp-content\/uploads\/elementor\/thumbs\/25f0afc05134b1d83a5e260c2e939725-q7plr7alp8a78lqekdildfah0wfxfqf9xsmnu0oc4o.jpeg\" title=\"25f0afc05134b1d83a5e260c2e939725\" alt=\"25f0afc05134b1d83a5e260c2e939725\" loading=\"lazy\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-7880891\" data-id=\"7880891\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-55c03e9 elementor-widget elementor-widget-html\" data-id=\"55c03e9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n\/* --- 1. Hiding the Default CF7 Structure --- *\/\r\n\/* The CF7 shortcode output must be present for the JS to submit data, but it must be invisible. *\/\r\n.wpcf7 {\r\n    position: relative; \r\n    z-index: 1; \r\n}\r\n.wpcf7-form {\r\n    \/* Hide all default CF7 wrapper elements *\/\r\n    opacity: 0;\r\n    position: absolute;\r\n    width: 1px;\r\n    height: 1px;\r\n    overflow: hidden;\r\n    left: -9999px;\r\n    top: -9999px;\r\n}\r\n\/* Ensure the CF7 submit button is found by the JS but remains visually hidden *\/\r\n.wpcf7-submit {\r\n    position: absolute !important;\r\n    left: -9999px !important;\r\n    top: -9999px !important;\r\n    visibility: hidden !important;\r\n    pointer-events: none !important;\r\n}\r\n\r\n\/* --- 2. Tab Functionality CSS (Controls Highlighting and Styling) --- *\/\r\n#tabs-nav {\r\n    display: flex;\r\n    margin-bottom: 0;\r\n    overflow-x: auto;\r\n    margin-top: 20px; \r\n}\r\n.tab-button {\r\n    padding: 10px 18px;\r\n    margin-right: 8px;\r\n    cursor: pointer;\r\n    \r\n    \/* MODIFIED: Border-only style for inactive tabs (NO FILL) *\/\r\n    border: 1px solid #00a8e0; \/* Blue border *\/\r\n    background-color: transparent; \/* NO FILL *\/\r\n    color: #00a8e0; \/* Blue text *\/\r\n    \r\n    transition: all 0.2s ease-in-out;\r\n    border-radius: 5px;\r\n    white-space: nowrap;\r\n    outline: none;\r\n    font-weight: 500;\r\n    flex-shrink: 0;\r\n}\r\n.tab-button:hover:not(.active) {\r\n    background-color: rgba(0, 168, 224, 0.05); \/* Subtle blue fill on hover *\/\r\n}\r\n\r\n\/* Highlight\/Active State - Matches your image *\/\r\n.tab-button.active {\r\n    \/* Purple gradient background *\/\r\n    background: linear-gradient(to right, #9c27b0, #c660e5); \/* Purple gradient *\/\r\n    color: #fff; \/* White text for active tab *\/\r\n    border-color: #9c27b0; \/* Match border color to gradient start *\/\r\n    border-bottom-color: transparent; \/* No bottom border for active tab *\/\r\n    z-index: 2; \r\n    position: relative;\r\n    box-shadow: 0 3px 6px rgba(0,0,0,0.1); \/* Subtle shadow for depth *\/\r\n}\r\n\r\n\/* Tab Content Area Styling *\/\r\n.tab-content {\r\n    display: none;\r\n    padding: 20px;\r\n    \/* Dark top border for the content area, matching image *\/\r\n    border: 1px solid #1a2d3f; \r\n    border-top: 2px solid #1a2d3f; \/* Thicker top border for content area *\/\r\n    border-radius: 0 5px 5px 5px; \/* Adjust border radius for content box *\/\r\n    margin-top: -1px; \/* Overlap with tab border for seamless look *\/\r\n}\r\n\r\n\/* Show the active tab content *\/\r\n.tab-content.active {\r\n    display: block;\r\n}\r\n\r\n\/* --- 3. Input Styling (General Aesthetics) --- *\/\r\n#customer-details input,\r\n.ticket-group label,\r\n.ticket-group input,\r\n#booking-notes-visible,\r\n#custom-submit-button,\r\n#rebook-button {\r\n    font-size: 1em;\r\n    font-family: inherit;\r\n}\r\n\r\n#customer-details input[type=\"text\"], \r\n#customer-details input[type=\"email\"],\r\n#tab-school input[type=\"text\"] {\r\n    padding: 10px;\r\n    border: 1px solid #ddd;\r\n    border-radius: 4px;\r\n    width: 100%;\r\n    box-sizing: border-box;\r\n    margin-bottom: 15px;\r\n}\r\n\r\n.ticket-group {\r\n    display: flex;\r\n    justify-content: space-between;\r\n    align-items: center;\r\n    margin-bottom: 10px;\r\n    padding-bottom: 5px;\r\n    border-bottom: 1px dashed #eee;\r\n}\r\n\r\n.ticket-group label {\r\n    flex-grow: 1;\r\n    padding-right: 20px;\r\n}\r\n\r\n.ticket-group input[type=\"number\"] {\r\n    width: 80px;\r\n    text-align: center;\r\n    flex-shrink: 0;\r\n    padding: 8px;\r\n    box-sizing: border-box;\r\n}\r\n\r\n#booking-notes-visible {\r\n    width: 100%;\r\n    min-height: 80px;\r\n    padding: 10px;\r\n    box-sizing: border-box;\r\n    margin-top: 10px;\r\n    border: 1px solid #ddd;\r\n    border-radius: 4px;\r\n}\r\n\r\n#custom-submit-button {\r\n    background-color: #0073aa;\r\n    color: white;\r\n    padding: 12px 20px;\r\n    border: none;\r\n    border-radius: 4px;\r\n    cursor: pointer;\r\n    font-size: 1.1em;\r\n    width: 100%;\r\n    margin-top: 20px;\r\n}\r\n\r\n\/* Style for the free ticket info note and Bill Number display *\/\r\n.info-note {\r\n    font-size: 0.9em;\r\n    color: #6b7280; \/* Gray color *\/\r\n    margin-top: 15px;\r\n    padding-top: 5px;\r\n    border-top: 1px dashed #eee;\r\n}\r\n\r\n#display-bill-number {\r\n    font-weight: bold;\r\n    color: #2563eb; \/* Blue for high visibility *\/\r\n}\r\n\r\n\/* Success Message Styling *\/\r\n#booking-success-box {\r\n    text-align: center; \r\n    padding: 40px; \r\n    border: 2px solid #9c27b0; \r\n    border-radius: 8px; \r\n    max-width: 400px; \r\n    margin: 40px auto; \r\n    background-color: #f3e5f5;\r\n    box-shadow: 0 5px 15px rgba(0,0,0,0.1);\r\n}\r\n\r\n#rebook-button {\r\n    padding: 10px 30px; \r\n    background-color: #00a8e0; \r\n    color: white; \r\n    border: none; \r\n    border-radius: 4px; \r\n    cursor: pointer; \r\n    margin-top: 20px;\r\n    transition: background-color 0.2s;\r\n}\r\n\r\n#rebook-button:hover {\r\n    background-color: #0073aa;\r\n}\r\n<\/style>\r\n\r\n<!-- \r\n    The CF7 shortcode is placed here, enclosed in an HTML comment block. \r\n    This ensures that when the page is rendered (especially in environments that don't execute WordPress shortcodes in the editor preview), it won't display the raw text. \r\n    However, when this code is placed within a page content area in WordPress, the shortcode WILL be processed by the CF7 plugin, generating the necessary hidden HTML form structure that the JavaScript relies on.\r\n-->\r\n<!-- [contact-form-7 id=\"123\" title=\"Custom Ticket Booking Form\"] -->\r\n\r\n\r\n<div id=\"booking-container\">\r\n\r\n    <div id=\"customer-details\">\r\n        <h3>Customer Details<\/h3>\r\n        <input type=\"text\" name=\"customer-name-visible\" id=\"customer-name-visible\" required placeholder=\"Full Name\">\r\n        <input type=\"email\" name=\"customer-email-visible\" id=\"customer-email-visible\" required placeholder=\"Email Address\">\r\n    <\/div>\r\n\r\n    <div id=\"tabs-nav\">\r\n        <button data-tab=\"tab-local\" class=\"tab-button active\">Local<\/button>\r\n        <button data-tab=\"tab-foreigner\" class=\"tab-button\">Foreigners<\/button>\r\n        <button data-tab=\"tab-school\" class=\"tab-button\">School Children<\/button>\r\n    <\/div>\r\n\r\n    <div id=\"tab-local\" class=\"tab-content active\">\r\n        <h4>Local Tickets (LKR)<\/h4>\r\n        \r\n        <!-- Updated Local Adult Tickets -->\r\n        <div class=\"ticket-group\"><label>Adults \u2013 Observation Deck (Rs. 500):<\/label><input type=\"number\" min=\"0\" value=\"0\" class=\"ticket-qty-lkr\" data-price=\"500\" name=\"qty-local-adult-obs\" id=\"qty-local-adult-obs\"><\/div>\r\n        <div class=\"ticket-group\"><label>Adults \u2013 Pixel Bloom (Rs. 350):<\/label><input type=\"number\" min=\"0\" value=\"0\" class=\"ticket-qty-lkr\" data-price=\"350\" name=\"qty-local-adult-pixel\" id=\"qty-local-adult-pixel\"><\/div>\r\n        <div class=\"ticket-group\"><label>Adults \u2013 Obs Deck + Pixel Bloom (Rs. 850):<\/label><input type=\"number\" min=\"0\" value=\"0\" class=\"ticket-qty-lkr\" data-price=\"850\" name=\"qty-local-adult-both\" id=\"qty-local-adult-both\"><\/div>\r\n        \r\n        <!-- Updated Local Kids Tickets -->\r\n        <div class=\"ticket-group\"><label>Kids \u2013 Observation Deck (Rs. 200):<\/label><input type=\"number\" min=\"0\" value=\"0\" class=\"ticket-qty-lkr\" data-price=\"200\" name=\"qty-local-kids-obs\" id=\"qty-local-kids-obs\"><\/div>\r\n        <div class=\"ticket-group\"><label>Kids \u2013 Pixel Bloom (Rs. 200):<\/label><input type=\"number\" min=\"0\" value=\"0\" class=\"ticket-qty-lkr\" data-price=\"200\" name=\"qty-local-kids-pixel\" id=\"qty-local-kids-pixel\"><\/div>\r\n        <div class=\"ticket-group\"><label>Kids \u2013 Obs Deck + Pixel Bloom (Rs. 400):<\/label><input type=\"number\" min=\"0\" value=\"0\" class=\"ticket-qty-lkr\" data-price=\"400\" name=\"qty-local-kids-both\" id=\"qty-local-kids-both\"><\/div>\r\n\r\n        <!-- KIDS BELOW 3: Now just an information note, no input needed. -->\r\n        <p class=\"info-note\">Kids below 3 years: Free (No selection needed)<\/p>\r\n    <\/div>\r\n\r\n    <div id=\"tab-foreigner\" class=\"tab-content\">\r\n        <h4>Foreigner Tickets (USD)<\/h4>\r\n        \r\n        <!-- Updated Foreigner Adult Tickets -->\r\n        <div class=\"ticket-group\"><label>Adults \u2013 Obs Deck + Pixel Bloom ($20):<\/label><input type=\"number\" min=\"0\" value=\"0\" class=\"ticket-qty-usd\" data-price=\"20\" name=\"qty-foreigner-adult-both\" id=\"qty-foreigner-adult-both\"><\/div>\r\n        \r\n        <!-- Updated Foreigner Kids Tickets -->\r\n        <div class=\"ticket-group\"><label>Kids \u2013 Obs Deck + Pixel Bloom ($10):<\/label><input type=\"number\" min=\"0\" value=\"0\" class=\"ticket-qty-usd\" data-price=\"10\" name=\"qty-foreigner-kids-both\" id=\"qty-foreigner-kids-both\"><\/div>\r\n        \r\n        <!-- KIDS BELOW 3: Now just an information note, no input needed. -->\r\n        <p class=\"info-note\">Kids below 3 years: Free (No selection needed)<\/p>\r\n    <\/div>\r\n\r\n    <div id=\"tab-school\" class=\"tab-content\">\r\n        <label for=\"school-name-visible\">School Name:<\/label>\r\n        <input type=\"text\" name=\"school-name-visible\" id=\"school-name-visible\" placeholder=\"Enter school name\">\r\n        \r\n        <h4>School Tickets (LKR)<\/h4>\r\n        <div class=\"ticket-group\"><label>Observation Deck (Rs. 200):<\/label><input type=\"number\" min=\"0\" value=\"0\" class=\"ticket-qty-lkr\" data-price=\"200\" name=\"qty-school-obs\" id=\"qty-school-obs\"><\/div>\r\n        <div class=\"ticket-group\"><label>Pixel Bloom (Rs. 200):<\/label><input type=\"number\" min=\"0\" value=\"0\" class=\"ticket-qty-lkr\" data-price=\"200\" name=\"qty-school-pixel\" id=\"qty-school-pixel\"><\/div>\r\n    <\/div>\r\n    \r\n    <div id=\"form-footer\">\r\n        <h3>Total Cost<\/h3>\r\n        <p>LKR Total: <span id=\"display-total-lkr\">Rs. 0.00<\/span><\/p>\r\n        <p>USD Total: <span id=\"display-total-usd\">$0.00<\/span><\/p>\r\n\r\n        <p id=\"display-bill-number\" class=\"info-note\">Bill Number: Pending<\/p>\r\n\r\n        <textarea name=\"booking-notes-visible\" id=\"booking-notes-visible\" placeholder=\"Booking Notes (Optional)\"><\/textarea>\r\n        \r\n        <button type=\"button\" id=\"custom-submit-button\">Confirm & Send Booking<\/button>\r\n    <\/div>\r\n<\/div>\r\n\r\n<!-- Success Message Container (Hidden by default) -->\r\n<div id=\"booking-success\" style=\"display: none;\">\r\n    <div id=\"booking-success-box\">\r\n        <h2 style=\"color: #9c27b0; margin-bottom: 20px;\">Thank You for Your Booking!<\/h2>\r\n        <p style=\"font-size: 1.1em; color: #333;\">Your booking details have been sent for processing. Please note down your Bill Number below for reference.<\/p>\r\n        <div style=\"margin: 25px 0; padding: 15px; background-color: #fff; border-radius: 5px; border: 1px solid #ddd;\">\r\n            <p style=\"margin: 0; font-weight: 500;\">Bill \/ Booking Number:<\/p>\r\n            <strong id=\"success-bill-number\" style=\"font-size: 1.5em; color: #0073aa;\"><\/strong>\r\n        <\/div>\r\n        <button type=\"button\" id=\"rebook-button\">\r\n            Start New Booking\r\n        <\/button>\r\n    <\/div>\r\n<\/div>\r\n\r\n\r\n<!-- Load jQuery from a CDN to fix the ReferenceError -->\r\n<script src=\"https:\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/3.6.0\/jquery.min.js\"><\/script>\r\n\r\n<script>\r\n\/\/ Use the standard WordPress jQuery wrapper\r\n(function($) {\r\n    $(document).ready(function() {\r\n        const tabButtons = $('.tab-button');\r\n        const tabContents = $('.tab-content');\r\n        const submitButton = $('#custom-submit-button');\r\n\r\n        \/\/ --- DEFINING FOCUSED SELECTORS TO AVOID DOUBLE COUNTING ---\r\n        const qtyInputsLocalLKR = $('#tab-local').find('.ticket-qty-lkr');\r\n        const qtyInputsSchoolLKR = $('#tab-school').find('.ticket-qty-lkr');\r\n        const qtyInputsUSD = $('.ticket-qty-usd'); \r\n        \r\n        \/\/ Combined LKR inputs for processing\r\n        const allLKRInputs = qtyInputsLocalLKR.add(qtyInputsSchoolLKR);\r\n\r\n        \/\/ --- Utility Function: Generate Unique Bill Number ---\r\n        function generateBillNumber() {\r\n            \/\/ New Format: BON000000001 (B for Bill, ON for Online, 9 unique digits)\r\n            \/\/ Using a unique timestamp-based number to fill the 9 digits, padded with leading zeros.\r\n            const now = Date.now();\r\n            \/\/ Take the last 9 digits of the timestamp (mod 1 billion) to ensure a 9-digit base\r\n            const uniquePart = (now % 1000000000).toString().padStart(9, '0'); \r\n\r\n            return `BON${uniquePart}`;\r\n        }\r\n\r\n        \/\/ --- Tab Switching Logic (Handles Highlighting) ---\r\n        tabButtons.on('click', function() {\r\n            tabButtons.removeClass('active');\r\n            tabContents.removeClass('active');\r\n\r\n            $(this).addClass('active');\r\n            const targetTabId = $(this).data('tab');\r\n            $('#' + targetTabId).addClass('active');\r\n        });\r\n\r\n        \/\/ --- Calculation & Data Sync Logic ---\r\n        function calculateTotal() {\r\n            let totalLKR = 0;\r\n            let totalUSD = 0;\r\n\r\n            function processTickets(inputs, isLKR) {\r\n                inputs.each(function() {\r\n                    const quantity = parseInt($(this).val()) || 0; \r\n                    const price = parseFloat($(this).data('price')) || 0;\r\n                    \r\n                    if (isLKR) {\r\n                        totalLKR += (quantity * price);\r\n                    } else {\r\n                        totalUSD += (quantity * price);\r\n                    }\r\n\r\n                    \/\/ Sync value to the hidden CF7 input field (if it exists)\r\n                    $('input[name=\"' + $(this).attr('name') + '\"]').val(quantity);\r\n                });\r\n            }\r\n\r\n            processTickets(allLKRInputs, true); \r\n            processTickets(qtyInputsUSD, false);\r\n\r\n            $('#display-total-lkr').text(`Rs. ${totalLKR.toFixed(2)}`);\r\n            $('#display-total-usd').text(`$${totalUSD.toFixed(2)}`);\r\n            \r\n            \/\/ Sync Total amounts to the hidden CF7 fields\r\n            $('input[name=\"total-lkr-amount\"]').val(totalLKR.toFixed(2));\r\n            $('input[name=\"total-usd-amount\"]').val(totalUSD.toFixed(2));\r\n        }\r\n\r\n        \/\/ --- Event Handlers ---\r\n        allLKRInputs.on('change keyup', calculateTotal);\r\n        qtyInputsUSD.on('change keyup', calculateTotal);\r\n\r\n        \/\/ --- Re-book Button Handler ---\r\n        $('#rebook-button').on('click', function() {\r\n            \/\/ Reload the page to reset the entire form state for a new booking\r\n            location.reload(); \r\n        });\r\n\r\n\r\n        \/\/ --- CF7 Submission Trigger ---\r\n        submitButton.on('click', function() {\r\n            \/\/ 1. Calculate and sync all quantities and totals\r\n            calculateTotal();\r\n\r\n            \/\/ 2. Generate and sync the Bill Number\r\n            const billNumber = generateBillNumber();\r\n            \r\n            \/\/ Sync to the hidden CF7 field\r\n            $('input[name=\"bill-number\"]').val(billNumber);\r\n\r\n            \/\/ 3. Sync visible user text\/email inputs to the hidden CF7 fields\r\n            $('input[name=\"customer-name\"]').val($('#customer-name-visible').val());\r\n            $('input[name=\"customer-email\"]').val($('#customer-email-visible').val());\r\n            $('textarea[name=\"booking-notes\"]').val($('#booking-notes-visible').val());\r\n            \r\n            const schoolNameInput = $('#school-name-visible');\r\n            if (schoolNameInput.length) {\r\n                \/\/ Sync School Name to a hidden CF7 field\r\n                $('input[name=\"school-name\"]').val(schoolNameInput.val());\r\n            }\r\n\r\n            \/\/ --- Show Success Message Immediately (Client-side simulation) ---\r\n            $('#booking-container').hide();\r\n            $('#success-bill-number').text(billNumber);\r\n            $('#booking-success').show();\r\n\r\n\r\n            \/\/ 4. Trigger the hidden CF7 submit button\r\n            const cf7Form = $('.wpcf7-form');\r\n            if (cf7Form.length) {\r\n                const cf7Submit = cf7Form.find('.wpcf7-submit');\r\n                if (cf7Submit.length) {\r\n                    cf7Submit.trigger('click');\r\n                } else {\r\n                    console.error('Error: CF7 submit button not found. Check CF7 setup.');\r\n                }\r\n            } else {\r\n                console.error('Error: CF7 form container not found.');\r\n            }\r\n        });\r\n\r\n        \/\/ Initial calculation on load\r\n        calculateTotal();\r\n    });\r\n})(jQuery);\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>An Seamless Experience Book Your Tickets Customer Details Local Foreigners School Children Local Tickets (LKR) Adults \u2013 Observation Deck (Rs. 500): Adults \u2013 Pixel Bloom (Rs. 350): Adults \u2013 Obs Deck + Pixel Bloom (Rs. 850): Kids \u2013 Observation Deck (Rs. 200): Kids \u2013 Pixel Bloom (Rs. 200): Kids \u2013 Obs Deck + Pixel Bloom&hellip; <a class=\"more-link\" href=\"http:\/\/clt.githobby.com\/si\/bookmytickets\/\">Continue reading <span class=\"screen-reader-text\">BookMyTickets<\/span><\/a><\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-5325","page","type-page","status-publish","hentry","entry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>BookMyTickets - Lotus Tower Colombo<\/title>\n<meta name=\"description\" content=\"Purchase tickets to the Colombo Lotus Tower today and experience the wonder of Sri Lanka&#039;s tallest tower. Enjoy panoramic views, immersive exhibits, and world-class amenities.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/clt.githobby.com\/si\/bookmytickets\/\" \/>\n<meta property=\"og:locale\" content=\"si_LK\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"BookMyTickets - Lotus Tower Colombo\" \/>\n<meta property=\"og:description\" content=\"Purchase tickets to the Colombo Lotus Tower today and experience the wonder of Sri Lanka&#039;s tallest tower. Enjoy panoramic views, immersive exhibits, and world-class amenities.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/clt.githobby.com\/si\/bookmytickets\/\" \/>\n<meta property=\"og:site_name\" content=\"Lotus Tower Colombo\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/cmblotustower\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-07T10:29:45+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/clt.githobby.com\/wp-content\/uploads\/elementor\/thumbs\/25f0afc05134b1d83a5e260c2e939725-q7plr7alp8a78lqekdildfah0wfxfqf9xsmnu0oc4o.jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/clt.githobby.com\\\/bookmytickets\\\/\",\"url\":\"https:\\\/\\\/clt.githobby.com\\\/bookmytickets\\\/\",\"name\":\"BookMyTickets - Lotus Tower Colombo\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/2p7.378.myftpupload.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/clt.githobby.com\\\/bookmytickets\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/clt.githobby.com\\\/bookmytickets\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/clt.githobby.com\\\/wp-content\\\/uploads\\\/elementor\\\/thumbs\\\/25f0afc05134b1d83a5e260c2e939725-q7plr7alp8a78lqekdildfah0wfxfqf9xsmnu0oc4o.jpeg\",\"datePublished\":\"2025-11-07T07:50:23+00:00\",\"dateModified\":\"2025-11-07T10:29:45+00:00\",\"description\":\"Purchase tickets to the Colombo Lotus Tower today and experience the wonder of Sri Lanka's tallest tower. Enjoy panoramic views, immersive exhibits, and world-class amenities.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/clt.githobby.com\\\/bookmytickets\\\/#breadcrumb\"},\"inLanguage\":\"si\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/clt.githobby.com\\\/bookmytickets\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"si\",\"@id\":\"https:\\\/\\\/clt.githobby.com\\\/bookmytickets\\\/#primaryimage\",\"url\":\"http:\\\/\\\/clt.githobby.com\\\/wp-content\\\/uploads\\\/elementor\\\/thumbs\\\/25f0afc05134b1d83a5e260c2e939725-q7plr7alp8a78lqekdildfah0wfxfqf9xsmnu0oc4o.jpeg\",\"contentUrl\":\"http:\\\/\\\/clt.githobby.com\\\/wp-content\\\/uploads\\\/elementor\\\/thumbs\\\/25f0afc05134b1d83a5e260c2e939725-q7plr7alp8a78lqekdildfah0wfxfqf9xsmnu0oc4o.jpeg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/clt.githobby.com\\\/bookmytickets\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/clt.githobby.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"BookMyTickets\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/2p7.378.myftpupload.com\\\/#website\",\"url\":\"https:\\\/\\\/2p7.378.myftpupload.com\\\/\",\"name\":\"Lotus Tower Colombo\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/2p7.378.myftpupload.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/2p7.378.myftpupload.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"si\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/2p7.378.myftpupload.com\\\/#organization\",\"name\":\"Lotus Tower Colombo\",\"url\":\"https:\\\/\\\/2p7.378.myftpupload.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"si\",\"@id\":\"https:\\\/\\\/2p7.378.myftpupload.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"http:\\\/\\\/clt.githobby.com\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/cropped-favicon-2.png\",\"contentUrl\":\"http:\\\/\\\/clt.githobby.com\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/cropped-favicon-2.png\",\"width\":512,\"height\":512,\"caption\":\"Lotus Tower Colombo\"},\"image\":{\"@id\":\"https:\\\/\\\/2p7.378.myftpupload.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/cmblotustower\",\"https:\\\/\\\/www.instagram.com\\\/colombolotustower\\\/\",\"https:\\\/\\\/www.tiktok.com\\\/@colombolotustower\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/colombo-lotus-tower\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"BookMyTickets - Lotus Tower Colombo","description":"Purchase tickets to the Colombo Lotus Tower today and experience the wonder of Sri Lanka's tallest tower. Enjoy panoramic views, immersive exhibits, and world-class amenities.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/clt.githobby.com\/si\/bookmytickets\/","og_locale":"si_LK","og_type":"article","og_title":"BookMyTickets - Lotus Tower Colombo","og_description":"Purchase tickets to the Colombo Lotus Tower today and experience the wonder of Sri Lanka's tallest tower. Enjoy panoramic views, immersive exhibits, and world-class amenities.","og_url":"https:\/\/clt.githobby.com\/si\/bookmytickets\/","og_site_name":"Lotus Tower Colombo","article_publisher":"https:\/\/www.facebook.com\/cmblotustower","article_modified_time":"2025-11-07T10:29:45+00:00","og_image":[{"url":"http:\/\/clt.githobby.com\/wp-content\/uploads\/elementor\/thumbs\/25f0afc05134b1d83a5e260c2e939725-q7plr7alp8a78lqekdildfah0wfxfqf9xsmnu0oc4o.jpeg","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/clt.githobby.com\/bookmytickets\/","url":"https:\/\/clt.githobby.com\/bookmytickets\/","name":"BookMyTickets - Lotus Tower Colombo","isPartOf":{"@id":"https:\/\/2p7.378.myftpupload.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/clt.githobby.com\/bookmytickets\/#primaryimage"},"image":{"@id":"https:\/\/clt.githobby.com\/bookmytickets\/#primaryimage"},"thumbnailUrl":"http:\/\/clt.githobby.com\/wp-content\/uploads\/elementor\/thumbs\/25f0afc05134b1d83a5e260c2e939725-q7plr7alp8a78lqekdildfah0wfxfqf9xsmnu0oc4o.jpeg","datePublished":"2025-11-07T07:50:23+00:00","dateModified":"2025-11-07T10:29:45+00:00","description":"Purchase tickets to the Colombo Lotus Tower today and experience the wonder of Sri Lanka's tallest tower. Enjoy panoramic views, immersive exhibits, and world-class amenities.","breadcrumb":{"@id":"https:\/\/clt.githobby.com\/bookmytickets\/#breadcrumb"},"inLanguage":"si","potentialAction":[{"@type":"ReadAction","target":["https:\/\/clt.githobby.com\/bookmytickets\/"]}]},{"@type":"ImageObject","inLanguage":"si","@id":"https:\/\/clt.githobby.com\/bookmytickets\/#primaryimage","url":"http:\/\/clt.githobby.com\/wp-content\/uploads\/elementor\/thumbs\/25f0afc05134b1d83a5e260c2e939725-q7plr7alp8a78lqekdildfah0wfxfqf9xsmnu0oc4o.jpeg","contentUrl":"http:\/\/clt.githobby.com\/wp-content\/uploads\/elementor\/thumbs\/25f0afc05134b1d83a5e260c2e939725-q7plr7alp8a78lqekdildfah0wfxfqf9xsmnu0oc4o.jpeg"},{"@type":"BreadcrumbList","@id":"https:\/\/clt.githobby.com\/bookmytickets\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/clt.githobby.com\/"},{"@type":"ListItem","position":2,"name":"BookMyTickets"}]},{"@type":"WebSite","@id":"https:\/\/2p7.378.myftpupload.com\/#website","url":"https:\/\/2p7.378.myftpupload.com\/","name":"Lotus Tower Colombo","description":"","publisher":{"@id":"https:\/\/2p7.378.myftpupload.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/2p7.378.myftpupload.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"si"},{"@type":"Organization","@id":"https:\/\/2p7.378.myftpupload.com\/#organization","name":"Lotus Tower Colombo","url":"https:\/\/2p7.378.myftpupload.com\/","logo":{"@type":"ImageObject","inLanguage":"si","@id":"https:\/\/2p7.378.myftpupload.com\/#\/schema\/logo\/image\/","url":"http:\/\/clt.githobby.com\/wp-content\/uploads\/2022\/09\/cropped-favicon-2.png","contentUrl":"http:\/\/clt.githobby.com\/wp-content\/uploads\/2022\/09\/cropped-favicon-2.png","width":512,"height":512,"caption":"Lotus Tower Colombo"},"image":{"@id":"https:\/\/2p7.378.myftpupload.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/cmblotustower","https:\/\/www.instagram.com\/colombolotustower\/","https:\/\/www.tiktok.com\/@colombolotustower","https:\/\/www.linkedin.com\/company\/colombo-lotus-tower"]}]}},"_links":{"self":[{"href":"http:\/\/clt.githobby.com\/si\/wp-json\/wp\/v2\/pages\/5325","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/clt.githobby.com\/si\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/clt.githobby.com\/si\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/clt.githobby.com\/si\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/clt.githobby.com\/si\/wp-json\/wp\/v2\/comments?post=5325"}],"version-history":[{"count":5,"href":"http:\/\/clt.githobby.com\/si\/wp-json\/wp\/v2\/pages\/5325\/revisions"}],"predecessor-version":[{"id":5335,"href":"http:\/\/clt.githobby.com\/si\/wp-json\/wp\/v2\/pages\/5325\/revisions\/5335"}],"wp:attachment":[{"href":"http:\/\/clt.githobby.com\/si\/wp-json\/wp\/v2\/media?parent=5325"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}