You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
information-system/application/views/mobile_first/htravel-chiang-mai-lantern-...

599 lines
35 KiB
PHTML

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!--lantern-form start-->
<script src="https://www.recaptcha.net/recaptcha/enterprise.js?render=6Lf828MhAAAAANNetijCXKwW5ARyhcJ-b1Hhslja"></script>
<div class="tmbottom">
<h3 style="font-size: 24px; line-height: 22px; font-family: Calibri;margin-top: 60px;">Chiang Mai Authentic Sky Lantern Festival on Nov. 5, 2025</h3>
<form id='chiang_mai_lantern_ticket_form' action="https://www.highlightstravel.com/orders/lantern_save" method="post" >
<p style="font-size: 20px; margin-bottom: 15px;"><strong>Select a Ticket Type:</strong></p>
<div class="selectHotl" style="margin-bottom: 20px;">
<div class="optionLable" id="ticket_type_premium_khomloy">
<input type="radio" value="Premium+Transfer+Dinner" checked id="premium_khomloy" data-price="199" name="ticket_type">
<label for="premium_khomloy" style="font-size:18px;">
Premium+Transfer+Dinner
<div class="selectionMemo">
US$199
</div>
</label>
</div>
<div class="optionLable" id="ticket_type_vip_khomloy">
<input type="radio" value="VIP+Transfer+Dinner" id="vip_khomloy" data-price="139" name="ticket_type">
<label for="vip_khomloy" style="font-size:18px;">
VIP+Transfer+Dinner
<div class="selectionMemo">
US$139
</div>
</label>
</div>
<div class="optionLable" id="ticket_type_standard_khomloy">
<input type="radio" value="Premium+Dinner+Exclusive Transfer+Thai Costume" id="premium_costume" data-price="339" name="ticket_type">
<label for="premium_costume" style="font-size:18px;">
Premium+Thai Costume<br>+Exclusive Transfer+Dinner
<div class="selectionMemo">
US$339
</div>
</label>
</div>
</div>
<div id="ticket_type_errmsg" style="display: none">
<div class="requiredArea" style="margin-top:-10px;">Please select at least one option.</div>
</div>
<p style="font-size: 20px;margin-bottom: 5px; margin-top: 10px;"><strong>Quantity:</strong> Adults & children (8+) Free for under 8</p>
<div class="peopleSelect" style="width: auto;">
<div class="numberBtn">
<input class="minaddBtn reduceadult" id='minusButton' type="button" value="-">
<input class="number" id="adultNumberValue" readonly="readonly" type="text" value="1"
name="adult" style="width: 50px;
height: 22px;
top: -5px;
position: relative;
text-align: center;
font-size: 20px;">
<input class="minaddBtn addadult" id='plusButton' type="button" value="+">
</div>
</div>
<div style="clear: both;
display: inline-block;
border: 3px dashed #d1d1d1;
border-radius: 10px;
padding: 10px 10px 0px 10px;
width: calc(100% - 30px);
background: #fff;margin-top: 15px; margin-bottom: 20px; display: none;">
<p style=" font-size: 19px;
margin-bottom: 5px;
font-style: italic;
clear: both;"><strong>Exclusive Add-on:</strong> Thai Costume with Makeup & Hairstyle <span style="color: #ad1818;">US$119 per person</span></p>
<div class="numberBtn">
<input class="minaddBtn reduceadult" id='minusButton_makeup' type="button" value="-">
<input class="number" id="makeupNumberValue" readonly="readonly" type="text" value="0"
name="makeupNumber" style="width: 50px;
height: 22px;
top: -5px;
position: relative;
text-align: center;
font-size: 20px;">
<input class="minaddBtn addadult" id='plusButton_makeup' type="button" value="+">
</div>
</div>
<div class="payonline_price">Total price: <strong id="totalPriceText">$149</strong></div>
<p style=" margin-top: 30px;
margin-bottom: 10px;"><strong>Please provide correct personal info. Double check.</strong></p>
<input class="FullName" id="ticket_realname" name="fullname"
placeholder="Your name * (exactly per passport)" required="" type="text" value="" />
<div id="ticket_realname_errmsg" style="display: none">
<div class="requiredArea" style="margin-top:-10px;">Please enter your name.</div>
</div>
<input class="EmailAddress" id="ticket_email" name="email" placeholder="Email *" required="" type="text"
value="" />
<div id="ticket_email_errmsg" style="display: none">
<div class="requiredArea" style="margin-top:-10px;">Please enter your email.</div>
</div>
<div id="ticket_email_verify_errmsg" style="display: none">
<div class="requiredArea" style="margin-top:-10px;">Please verify your email.</div>
</div>
<select name="country_code" class="country_code" id="country_code">
<option value="Afghanistan +93">Afghanistan    +93</option>
<option value="Albania +355">Albania    +355</option>
<option value="Algeria +213">Algeria   +213</option>
<option value="Andorra +376">Andorra   +376</option>
<option value="Angola +244">Angola   +244</option>
<option value="Anguilla +1264">Anguilla   +1264</option>
<option value="Australia +61">Australia   +61</option>
<option value="Antigua and Barbuda +1268">Antigua and Barbuda   +1268</option>
<option value="Argentina +54">Argentina   +54</option>
<option value="Armenia +374">Armenia    +374</option>
<option value="Aruba +297">Aruba   +297</option>
<option value="Ascension Island +247">Ascension Island   +247</option>
<option value="Austria +43">Austria   +43</option>
<option value="Azerbaijan +994">Azerbaijan   +994</option>
<option value="Bahamas +1242">Bahamas   +1242</option>
<option value="Bahrain +973">Bahrain   +973</option>
<option value="Bangladesh +880">Bangladesh   +880</option>
<option value="Barbados +1246">Barbados   +1246</option>
<option value="Belarus +375">Belarus   +375</option>
<option value="Belgium +32">Belgium   +32</option>
<option value="Belize +501">Belize   +501</option>
<option value="Benin +229">Benin   +229</option>
<option value="Bermuda +1441">Bermuda   +1441</option>
<option value="Bhutan +975">Bhutan   +975</option>
<option value="Bolivia +591">Bolivia   +591</option>
<option value="Bosnia and Herzegovina +387">Bosnia and Herzegovina   +387</option>
<option value="Botswana +267">Botswana   +267</option>
<option value="Brazil +55">Brazil   +55</option>
<option value="British Indian Ocean Territory +246">British Indian Ocean Territory   +246</option>
<option value="British Virgin Islands +1284">British Virgin Islands   +1284</option>
<option value="Brunei +673">Brunei   +673</option>
<option value="Bulgaria +359">Bulgaria    +359</option>
<option value="Burkina Faso +226">Burkina Faso   +226</option>
<option value="Burundi +257">Burundi   +257</option>
<option value="Cambodia +855">Cambodia   +855</option>
<option value="Cameroon +237">Cameroon   +237</option>
<option value="Canada +001">Canada   +001</option>
<option value="Cape Verde +238">Cape Verde   +238</option>
<option value="Caribbean Netherlands +599">Caribbean Netherlands   +599</option>
<option value="Cayman Islands +1345">Cayman Islands   +1345</option>
<option value="Central African Republic +236">Central African Republic   +236</option>
<option value="Chad +235">Chad   +235</option>
<option value="Chile +56">Chile   +56</option>
<option value="China +86">China   +86</option>
<option value="Christmas Island +6189164">Christmas Island   +6189164</option>
<option value="Cocos Islands +6189162">Cocos Islands   +6189162</option>
<option value="Colombia +57">Colombia   +57</option>
<option value="Comoros +269">Comoros   +269</option>
<option value="Congo +243">Congo (DRC)   +243</option>
<option value="Congo +242">Congo (Republic)   +242</option>
<option value="Cook Islands +682">Cook Islands   +682</option>
<option value="Costa Rica +506">Costa Rica   +506</option>
<option value="Côte d'Ivoire +225">Côte d'Ivoire   +225</option>
<option value="Croatia +385">Croatia   +385</option>
<option value="Cuba +53">Cuba   +53</option>
<option value="Curaçao +599">Curaçao   +599</option>
<option value="Cyprus +357">Cyprus   +357</option>
<option value="Czech Republic +420">Czech Republic   +420</option>
<option value="Denmark +45">Denmark   +45</option>
<option value="Djibouti +253">Djibouti   +253</option>
<option value="Dominica +1767">Dominica   +1767</option>
<option value="Dominican Republic +1809">Dominican Republic   +1809</option>
<option value="Ecuador +593">Ecuador   +593</option>
<option value="Egypt +20">Egypt   +20</option>
<option value="El Salvador +503">El Salvador   +503</option>
<option value="Equatorial Guinea +240">Equatorial Guinea   +240</option>
<option value="Eritrea +291">Eritrea   +291</option>
<option value="Estonia +372">Estonia   +372</option>
<option value="Eswatini +268">Eswatini   +268</option>
<option value="Ethiopia +251">Ethiopia   +251</option>
<option value="Falkland Islands +500">Falkland Islands   +500</option>
<option value="Faroe Islands +298">Faroe Islands   +298</option>
<option value="Fiji +679">Fiji   +679</option>
<option value="Finland +358">Finland   +358</option>
<option value="France +33">France   +33</option>
<option value="French Guiana +594">French Guiana   +594</option>
<option value="French Polynesia +689">French Polynesia   +689</option>
<option value="Gabon +241">Gabon   +241</option>
<option value="Gambia +220">Gambia   +220</option>
<option value="Georgia +995">Georgia   +995</option>
<option value="Germany +49">Germany   +49</option>
<option value="Ghana +233">Ghana   +233</option>
<option value="Gibraltar +350">Gibraltar   +350</option>
<option value="Greece +30">Greece   +30</option>
<option value="Greenland +299">Greenland   +299</option>
<option value="Grenada +1473">Grenada   +1473</option>
<option value="Guadeloupe +590">Guadeloupe   +590</option>
<option value="Guam +1671">Guam   +1671</option>
<option value="Guatemala +502">Guatemala   +502</option>
<option value="Guinea +224">Guinea   +224</option>
<option value="Guinea-Bissau +245">Guinea-Bissau   +245</option>
<option value="Guyana +592">Guyana   +592</option>
<option value="Haiti +509">Haiti   +509</option>
<option value="Honduras +504">Honduras   +504</option>
<option value="Hong Kong +852">Hong Kong   +852</option>
<option value="Hungary +36">Hungary   +36</option>
<option value="Iceland +354">Iceland   +354</option>
<option value="India +91">India   +91</option>
<option value="Indonesia +62">Indonesia   +62</option>
<option value="Iran +98">Iran   +98</option>
<option value="Iraq +964">Iraq   +964</option>
<option value="Ireland +353">Ireland   +353</option>
<option value="Israel +972">Israel   +972</option>
<option value="Italy +39">Italy   +39</option>
<option value="Jamaica +1876">Jamaica   +1876</option>
<option value="Japan +81">Japan   +81</option>
<option value="Jersey +44">Jersey   +44</option>
<option value="Jordan +962">Jordan   +962</option>
<option value="Kazakhstan +7">Kazakhstan    +7</option>
<option value="Kenya +254">Kenya   +254</option>
<option value="Kiribati +686">Kiribati   +686</option>
<option value="Kosovo +383">Kosovo   +383</option>
<option value="Kuwait +965">Kuwait   +965</option>
<option value="Kyrgyzstan +996">Kyrgyzstan    +996</option>
<option value="Laos +856">Laos   +856</option>
<option value="Latvia +371">Latvia    +371</option>
<option value="Lebanon +961">Lebanon   +961</option>
<option value="Lesotho +266">Lesotho   +266</option>
<option value="Liberia +231">Liberia   +231</option>
<option value="Libya +218">Libya   +218</option>
<option value="Liechtenstein +423">Liechtenstein   +423</option>
<option value="Lithuania +370">Lithuania   +370</option>
<option value="Luxembourg +352">Luxembourg   +352</option>
<option value="Macau +853">Macau   +853</option>
<option value="Macedonia +389">Macedonia   +389</option>
<option value="Madagascar +261">Madagascar   +261</option>
<option value="Malawi +265">Malawi   +265</option>
<option value="Malaysia +60">Malaysia   +60</option>
<option value="Maldives +960">Maldives   +960</option>
<option value="Mali +223">Mali   +223</option>
<option value="Malta +356">Malta   +356</option>
<option value="Marshall +692">Marshall Islands   +692</option>
<option value="Martinique +596">Martinique   +596</option>
<option value="Mauritania +222">Mauritania   +222</option>
<option value="Mauritius +230">Mauritius   +230</option>
<option value="Mayotte +262">Mayotte   +262</option>
<option value="Mexico +52">Mexico   +52</option>
<option value="Micronesia +691">Micronesia   +691</option>
<option value="Moldova +373">Moldova   +373</option>
<option value="Monaco +377">Monaco   +377</option>
<option value="Mongolia +976">Mongolia   +976</option>
<option value="Montenegro +382">Montenegro   +382</option>
<option value="Montserrat +1664">Montserrat   +1664</option>
<option value="Morocco +212">Morocco   +212</option>
<option value="Mozambique +258">Mozambique   +258</option>
<option value="Myanmar +95">Myanmar    +95</option>
<option value="Namibia +264">Namibia   +264</option>
<option value="Nauru +674">Nauru   +674</option>
<option value="Nepal +977">Nepal   +977</option>
<option value="New Caledonia +687">New Caledonia   +687</option>
<option value="New Zealand +64">New Zealand   +64</option>
<option value="Netherlands +31">Netherlands   +31</option>
<option value="Nicaragua +505">Nicaragua   +505</option>
<option value="Niger +227">Niger   +227</option>
<option value="Nigeria +234">Nigeria   +234</option>
<option value="Niue +683">Niue   +683</option>
<option value="Norfolk Island +6723">Norfolk Island   +6723</option>
<option value="North Korea +850">North Korea   +850</option>
<option value="Northern Mariana Islands +1670">Northern Mariana Islands   +1670</option>
<option value="Norway +47">Norway   +47</option>
<option value="Oman +968">Oman   +968</option>
<option value="Pakistan +92">Pakistan   +92</option>
<option value="Palau +680">Palau   +680</option>
<option value="Palestine +970">Palestine    +970</option>
<option value="Panama +507">Panama    +507</option>
<option value="Papua New Guinea +675">Papua New Guinea   +675</option>
<option value="Paraguay +595">Paraguay   +595</option>
<option value="Peru +51">Peru    +51</option>
<option value="Philippines +63">Philippines   +63</option>
<option value="Poland +48">Poland   +48</option>
<option value="Portugal +351">Portugal   +351</option>
<option value="Puerto Rico +1787">Puerto Rico   +1787</option>
<option value="Qatar +974">Qatar   +974</option>
<option value="Réunion +262">Réunion   +262</option>
<option value="Romania +40">Romania   +40</option>
<option value="Russia +7">Russia   +7</option>
<option value="Rwanda +250">Rwanda   +250</option>
<option value="Saint Barthélemy +590">Saint Barthélemy   +590</option>
<option value="Saint Helena +290">Saint Helena   +290</option>
<option value="Saint Kitts and Nevis +1869">Saint Kitts and Nevis   +1869</option>
<option value="Saint Lucia +1758">Saint Lucia   +1758</option>
<option value="Saint Martin +590">Saint Martin   +590</option>
<option value="Saint Pierre and Miquelon +508">Saint Pierre and Miquelon   +508</option>
<option value="Saint Vincent and the Grenadines +1784">Saint Vincent and the Grenadines   +1784
</option>
<option value="Samoa +685">Samoa   +685</option>
<option value="San Marino +378">San Marino   +378</option>
<option value="São Tomé and Príncipe +239">São Tomé and Príncipe   +239</option>
<option value="Saudi Arabia +966">Saudi Arabia    +966</option>
<option value="Senegal +221">Senegal    +221</option>
<option value="Serbia +381">Serbia   +381</option>
<option value="Seychelles +248">Seychelles   +248</option>
<option value="Sierra Leone +232">Sierra Leone   +232</option>
<option value="Singapore +65">Singapore   +65</option>
<option value="Sint Maarten +1721">Sint Maarten   +1721</option>
<option value="Slovakia +421">Slovakia   +421</option>
<option value="Slovenia +386">Slovenia   +386</option>
<option value="Solomon Islands +677">Solomon Islands   +677</option>
<option value="Somalia +252">Somalia   +252</option>
<option value="South Africa +27">South Africa   +27</option>
<option value="South Korea +82">South Korea   +82</option>
<option value="South Sudan +211">South Sudan   +211</option>
<option value="Spain +34">Spain   +34</option>
<option value="Sri Lanka +94">Sri Lanka    +94</option>
<option value="Sudan +249">Sudan   +249</option>
<option value="Suriname +597">Suriname   +597</option>
<option value="Svalbard and Jan Mayen +47">Svalbard and Jan Mayen   +47</option>
<option value="Sweden +46">Sweden   +46</option>
<option value="Switzerland +41">Switzerland   +41</option>
<option value="Syria +963">Syria    +963</option>
<option value="Taiwan +886">Taiwan   +886</option>
<option value="Tajikistan +992">Tajikistan   +992</option>
<option value="Tanzania +255">Tanzania   +255</option>
<option value="Thailand +66">Thailand   +66</option>
<option value="Timor-Leste +670">Timor-Leste   +670</option>
<option value="Togo +228">Togo   +228</option>
<option value="Tokelau +690">Tokelau   +690</option>
<option value="Tonga +676">Tonga   +676</option>
<option value="Trinidad and Tobago +1868">Trinidad and Tobago   +1868</option>
<option value="Tunisia +216">Tunisia   +216</option>
<option value="Turkey +90">Turkey   +90</option>
<option value="Turkmenistan +993">Turkmenistan   +993</option>
<option value="Turks and Caicos Islands +1649">Turks and Caicos Islands   +1649</option>
<option value="Tuvalu +688">Tuvalu   +688</option>
<option value="U.S. Virgin Islands +1340">U.S. Virgin Islands   +1340</option>
<option value="Uganda +256">Uganda   +256</option>
<option value="Ukraine +380">Ukraine   +380</option>
<option value="United Arab Emirates +971">United Arab Emirates    +971</option>
<option value="United Kingdom +44">United Kingdom   +44</option>
<option value="United States +1">United States   +1</option>
<option value="Uruguay +598">Uruguay   +598</option>
<option value="Uzbekistan +998">Uzbekistan   +998</option>
<option value="Vanuatu +678">Vanuatu   +678</option>
<option value="Vatican City +39">Vatican City   +379</option>
<option value="Venezuela +58">Venezuela   +58</option>
<option value="Vietnam +84">Vietnam   +84</option>
<option value="Wallis and Futuna +681">Wallis and Futuna   +681</option>
<option value="Western Sahara +21228">Western Sahara    +21228</option>
<option value="Yemen +967">Yemen   +967</option>
<option value="Zambia +260">Zambia   +260</option>
<option value="Zimbabwe +263">Zimbabwe   +263</option>
<option value="Åland Islands +35818">Åland Islands   +35818</option>
</select>
<input class="Inquiryphone" id="ticket_PhoneNo" name="PhoneNo"
placeholder="Phone number *" type="tel" value="" />
<div id="ticket_contact_errmsg" style="display: none">
<div class="requiredArea" style="margin-top:-10px;">Please enter your phone number.</div>
</div>
<textarea name="other_travelers_names" placeholder="If booking two or more tickets, please fill in other traveler name(s) here: (per passport, e.g.Smith Sarah Jean)."></textarea>
<input name="total_price" id="totalPriceHidden" type="hidden" value="10000" />
<input name="ticket_date" id="ticket_date" type="hidden" value="2025-11-05" />
<input name="product_code" id="cli_no" type="hidden" value="YDFW-AH"/>
<input name="itinerary" type="hidden" value="Chiang Mai Authentic Sky Lantern Festival on Nov. 5, 2025" />
<button class="sendButton" id="submit_ticket_button" name="submit_chiang_mai_lantern_ticket_form"
type="button" style="margin-top: 20px;">Proceed to Payment</button>
<p style=" text-align: center;
margin-top: -15px;
line-height: 20px;"><strong>Once payment is received, we'll send your e-ticket within 24 hours.</strong></p>
</form>
</div>
<script>
function calcTotalPrice(ticketPrice, adultNumber) {
var makeupPrice = makeupNumberValue * 119;
var totalPrice = (ticketPrice * adultNumber) + makeupPrice;
if (adultNumber >= 10) {
totalPrice = totalPrice * 0.95;
}
totalPrice = totalPrice.toFixed(2);
totalPriceHidden.value = totalPrice;
totalPriceText.innerText = '$' + totalPrice;
}
var adultNumberNode = document.getElementById("adultNumberValue");
var makeupNumberNode = document.getElementById("makeupNumberValue");
var ticketDateList = document.querySelectorAll("input[name='ticket_date']");
var ticketTypeList = document.querySelectorAll("input[name='ticket_type']");
var ticket_type_premium_khomloy_div = document.getElementById("ticket_type_premium_khomloy");
var ticket_type_vip_khomloy_div = document.getElementById("ticket_type_vip_khomloy");
var ticket_type_standard_khomloy_div = document.getElementById("ticket_type_standard_khomloy");
var ticket_type_premium_heritage_div = document.getElementById("ticket_type_premium_heritage");
var ticket_type_vip_heritage_div = document.getElementById("ticket_type_vip_heritage");
var premium_khomloy_radio = document.getElementById("premium_khomloy");
var premium_heritage_radio = document.getElementById("premium_heritage");
var ticket_date_november15th = document.getElementById("ticket_date_november15th");
var ticket_date_november16th = document.getElementById("ticket_date_november16th");
var venueList = document.querySelectorAll("input[name='Venue']");
var totalPriceText = document.getElementById("totalPriceText");
var totalPriceHidden = document.getElementById("totalPriceHidden");
var adultNumberValue = parseInt(adultNumberNode.value);
var makeupNumberValue = parseInt(makeupNumberNode.value);
var currentTicketPrice = 10000;
for (var i = 0; i < venueList.length; i++) {
var venueNode = venueList[i];
venueNode.addEventListener('click', function (event) {
var currentTarget = event.currentTarget;
if (currentTarget.id === 'Khomloy') {
setKhomloyTicket();
}
if (currentTarget.id === 'Heritage') {
setHeritageTicket();
}
});
}
for (var i = 0; i < ticketTypeList.length; i++) {
var ticketTypeNode = ticketTypeList[i];
var dataPrice = parseInt(ticketTypeNode.getAttribute('data-price'));
if (ticketTypeNode.checked) {
currentTicketPrice = dataPrice;
calcTotalPrice(currentTicketPrice, adultNumberValue);
}
ticketTypeNode.addEventListener('click', function (event) {
var currentTarget = event.currentTarget;
currentTicketPrice = parseInt(currentTarget.getAttribute('data-price'));
adultNumberValue = parseInt(adultNumberNode.value);
calcTotalPrice(currentTicketPrice, adultNumberValue);
});
}
function setKhomloyTicket() {
ticket_type_premium_khomloy_div.style.display = '';
ticket_type_vip_khomloy_div.style.display = '';
ticket_type_standard_khomloy_div.style.display = '';
ticket_type_premium_heritage_div.style.display = 'none';
ticket_type_vip_heritage_div.style.display = 'none';
ticket_date_november15th.style.display = '';
ticket_date_november16th.style.display = '';
premium_khomloy_radio.checked = true;
currentTicketPrice = parseInt(premium_khomloy_radio.getAttribute('data-price'));
adultNumberValue = parseInt(adultNumberNode.value);
calcTotalPrice(currentTicketPrice, adultNumberValue);
}
function setHeritageTicket() {
ticket_type_premium_khomloy_div.style.display = 'none';
ticket_type_vip_khomloy_div.style.display = 'none';
ticket_type_standard_khomloy_div.style.display = 'none';
ticket_type_premium_heritage_div.style.display = '';
ticket_type_vip_heritage_div.style.display = '';
ticket_date_november15th.style.display = '';
ticket_date_november16th.style.display = 'none';
premium_heritage_radio.checked = true;
currentTicketPrice = parseInt(premium_heritage_radio.getAttribute('data-price'));
adultNumberValue = parseInt(adultNumberNode.value);
calcTotalPrice(currentTicketPrice, adultNumberValue);
}
var plusButton = document.getElementById("plusButton");
var minusButton = document.getElementById("minusButton");
plusButton.addEventListener('click', function (event) {
adultNumberValue = parseInt(adultNumberNode.value) + 1;
adultNumberNode.value = adultNumberValue;
calcTotalPrice(currentTicketPrice, adultNumberValue);
});
minusButton.addEventListener('click', function (event) {
var beforeValue = parseInt(adultNumberNode.value);
if (beforeValue > 1) {
adultNumberValue = beforeValue - 1;
adultNumberNode.value = adultNumberValue;
calcTotalPrice(currentTicketPrice, adultNumberValue);
}
});
var plusMakeupButton = document.getElementById("plusButton_makeup");
var minusMakeupButton = document.getElementById("minusButton_makeup");
plusMakeupButton.addEventListener('click', function (event) {
makeupNumberValue = parseInt(makeupNumberNode.value) + 1;
makeupNumberNode.value = makeupNumberValue;
calcTotalPrice(currentTicketPrice, adultNumberValue);
});
minusMakeupButton.addEventListener('click', function (event) {
var beforeValue = parseInt(makeupNumberNode.value);
if (beforeValue > 0) {
makeupNumberValue = beforeValue - 1;
makeupNumberNode.value = makeupNumberValue;
calcTotalPrice(currentTicketPrice, adultNumberValue);
}
});
</script>
<script>
var submit_ticket_button = document.getElementById("submit_ticket_button");
var chiang_mai_lantern_ticket_form = document.getElementById("chiang_mai_lantern_ticket_form");
submit_ticket_button.addEventListener('click', function (event) {
var validateResult = validateTicketForm();
if (validateResult) {
if (typeof (grecaptcha) === "undefined") {
console.warn('grecaptcha is disabled.');
chiang_mai_lantern_ticket_form.submit();
} else {
grecaptcha.enterprise.ready(async () => {
const token = await grecaptcha.enterprise.execute('6Lf828MhAAAAANNetijCXKwW5ARyhcJ-b1Hhslja', { action: 'ADD_TO_CART' });
var el = document.createElement("input");
el.type = "hidden";
el.name = "__grecaptcha_token__";
el.value = token;
chiang_mai_lantern_ticket_form.appendChild(el);
chiang_mai_lantern_ticket_form.submit();
submit_ticket_button.innerText = "Submitted successfully";
});
}
}
});
function validateTicketForm() {
var result = true;
var realnameVal = document.getElementById("ticket_realname").value;
var emailVal = document.getElementById("ticket_email").value;
var contactVal = document.getElementById("ticket_PhoneNo").value;
var realnameErrEl = document.getElementById("ticket_realname_errmsg");
var emailErrEl = document.getElementById("ticket_email_errmsg");
var emailVerifyErrEl = document.getElementById("ticket_email_verify_errmsg");
var contactErrEl = document.getElementById("ticket_contact_errmsg");
var ticketTypeErrEl = document.getElementById("ticket_type_errmsg");
realnameErrEl.style.display = 'none';
emailErrEl.style.display = 'none';
emailVerifyErrEl.style.display = 'none';
contactErrEl.style.display = 'none';
ticketTypeErrEl.style.display = 'none';
var selectedTicketType = false;
for (var i = 0; i < ticketTypeList.length; i++) {
var ticketTypeNode = ticketTypeList[i];
if (ticketTypeNode.checked) {
selectedTicketType = true;
}
}
if (!selectedTicketType) {
ticketTypeErrEl.style.display = '';
result = false;
}
if (realnameVal === '') {
realnameErrEl.style.display = '';
result = false;
}
if (emailVal === '') {
emailErrEl.style.display = '';
result = false;
} else {
var emailPattern = /^[\w\-\.]+@[\w\-\.]+(\.\w+)+$/;
if (!emailPattern.test(emailVal)) {
emailVerifyErrEl.style.display = '';
result = false;
}
}
if (contactVal === '') {
contactErrEl.style.display = '';
result = false;
}
return result;
}
</script>
<script src="https://data.highlightstravel.com/js/min.php?f=/js/jquery-1.8.2.min.js,/js/jquery.mailAutoComplete-4.0.min.js&amp;v=20231110"></script>
<script>
$(function () {
$.getJSON("https://www.chinahighlights.com/guide-use.php/apps/ip2location/index/get_country", function (data) {
var yourCountry = data.country_name;
$('#country_code option').each((i, optionEle) => {
var countryName = optionEle.value.split('+')[0].trim();
if (yourCountry === countryName) {
optionEle.selected = true;
}
});
})
.fail(function (xhr, status, error) {
console.error(error);
});
})
</script>
<style>
.minaddBtn { width:auto !important;}
.optionLable input[type="radio"]+label {min-height: auto;}
.optionLable input[type="radio"]:checked+label, .optionLable input[type="radio"]+label:hover {
border: 1px solid #ad1818;
color: #ad1818;
background: #ad1818;
color: #fff;
}
</style>
<!--lantern-form end-->