取消酒店选项内容

webht/payment
candice 2 years ago
parent c0bcca2a9d
commit fe3cb52cd5

@ -1,15 +1,10 @@
<!--AH-Lantern-From-Info-->
<script src="https://www.recaptcha.net/recaptcha/enterprise.js?render=6Lf828MhAAAAANNetijCXKwW5ARyhcJ-b1Hhslja"></script>
<script
src="https://www.recaptcha.net/recaptcha/enterprise.js?render=6Lf828MhAAAAANNetijCXKwW5ARyhcJ-b1Hhslja"></script>
<div class="tmbottom">
<h3 style="font-size: 24px; line-height: 22px;">Chiang Mai CAD Yi Peng Festival 2023 - Secure Your Exclusive Tickets Before They're Gone!</h3>
<p>
As the Lantern Festival approaches, all tourism resources are in high demand. We are currently offering two types of services: <br>
1. Single ticket sales: VIP and standard tickets.<br>
2. Package: The exclusive <strong>premium ticket</strong> paired with the most <strong>convenient hotel</strong>.
</p>
<form id='ticket_form' action="https://www.asiahighlights.com/orders/lantern_save" method="post" >
<h3 style="font-size: 24px; line-height: 22px;">Chiang Mai CAD Yi Peng Festival 2023 - Secure Your Exclusive Tickets While You Can!</h3>
<form id='ticket_form' action="https://www.asiahighlights.com/orders/lantern_save" method="post">
<p style=" font-size: 22px;"><strong>Select Date</strong></p>
<div class="selectHotl" style="margin-bottom: 20px;">
<div class="selectHotl" style="margin-bottom: 20px;">
<div class="optionLable">
<input type="radio" value="2023-11-27" id="november27th" name="ticket_date">
<label for="november27th">
@ -23,29 +18,18 @@
</label>
</div>
</div>
<p style="font-size: 22px;"><strong>Select Ticket Type</strong></p>
<div class="selectHotl" style="margin-bottom: 20px;">
<p style=" font-size: 22px;"><strong>Select an Available Ticket Type</strong></p>
<div class="selectHotl" style="margin-bottom: 20px;">
<div class="optionLable" id="ticket_type_premium">
<input type="radio" value="Premium+Transfer+Dinner" id="Premium" name="ticket_type">
<label for="Premium" style="font-size:18px;">
Premium+Transfer+Dinner
<div class="selectionMemo">
US$199
US$209
</div>
<div id='premium_ticket_left'>0 left</div>
</label>
</div>
<div class="optionLable" id="ticket_type_premium_hotel">
<input type="radio" value="Premium (+Transfer+Dinner)+ Novotel Hotel" id="Premium_hotel" name="ticket_type">
<label for="Premium_hotel" style="font-size:18px;">
Premium <span style="font-size:17px;">(+Transfer+Dinner)</span>+ Novotel Hotel
<div class="selectionMemo">
US$ 199 per ticket<br>
US$100 PRPN
</div>
</label>
</div>
<div class="optionLable" id="vip_type_premium">
<input type="radio" value="VIP+Transfer+Dinner" id="VIP" name="ticket_type">
<label for="VIP" style="font-size:18px;">
@ -67,46 +51,39 @@
</label>
</div>
</div>
<div id="hotel_choice" style="display: none">
<div class="peopleSelect" style="width: auto;">
<p style="font-size: 22px; margin-bottom: 5px;"><strong>Select the Number of Hotel Room(s)</strong></p>
<p style=" font-size: 22px;"><strong>Select Ticket Quantity</strong></p>
<div class="peopleSelect" style="width: auto;">
<span class="formMemo">
Adults and older children (8+ years old)
</span>
<div class="numberBtn">
<input class="minaddBtn reduce_room" id='minusRoomBtn' type="button" value="-">
<input class="number" id="hotel_room" readonly="readonly" type="text" value="1" name="hotelrooms">
<input class="minaddBtn add_room" id='plusRoomBtn' type="button" value="+">
<input class="minaddBtn reduceadult" id='minusButton' type="button" value="-">
<input class="number" id="adultNumberValue" readonly="readonly" type="text" value="1"
name="adult">
<input class="minaddBtn addadult" id='plusButton' type="button" value="+">
</div>
<p style="font-size: 22px; margin-bottom: 5px;"><strong>Select the Length of Stay (Night)</strong></p>
<div class="numberBtn">
<input class="minaddBtn reduce_stay" id='minusStayBtn' type="button" value="-">
<input class="number" id="stay_length" readonly="readonly" type="text" value="1" name="hotelstay">
<input class="minaddBtn add_stay" id='plusStayBtn' type="button" value="+">
</div>
</div>
<p style="clear: both;">
1. Regardless of the quantity of premium tickets required, a minimum of one night's stay in one room at <strong>Novotel Chiang Mai</strong> between November 26th and 29th is required.<br>
2. The superior room at Novotel Chiang Mai is pricing at US$100 PRPN, include <strong>breakfast</strong> and tax.
</p>
</div>
<p style="font-size: 22px; margin-bottom: 5px;"><strong>Select Ticket Quantity</strong></p>
<div class="peopleSelect" style="width: auto;">
<span class="formMemo">
Adults and older children (8+ years old)
</span>
<p style="display: inline-block;">Children under 8 years old enter free; 8-year-olds and above are charged the same as adults.</p>
<div class="numberBtn" style="width: 60%;">
<input class="minaddBtn reduceadult" id='minusButton' type="button" value="-">
<input class="number" id="adultNumberValue" readonly="readonly" type="text" value="1" name="adult">
<input class="minaddBtn addadult" id='plusButton' type="button" value="+">
</div>
</div>
<div class="payonline_price" style="clear: both;">Total price (ticket + hotel): <strong id="totalPriceText">$122</strong>
<p style="font-size: 17px; margin-bottom: 0;"><em>* Only premium tickets require a purchase along with accommodation.</em></p>
</div>
<p style="display: inline-block;">Children under 8 years old enter free; 8-year-olds and above are charged the same as adults. You can buy a
ticket for your child under 8 if you would like her or him to enjoy the same provision.</p>
<div class="payonline_price">Total price: <strong id="totalPriceText">$122</strong></div>
<p style="font-size: 22px;"><strong>Book tickets, enjoy explosive hotel prices!</strong></p>
<p>Book <strong>Premium tickets</strong> with us for special rates at <strong>Novotel Chiang Mai (4-star)</strong> Superior Balcony Room (including breakfast) between November 26th and 30th.</p>
<p> Rate details (applicable regardless of rooms or nights):<br>
4 or more tickets: Amazing rate of <strong>US$10</strong> PRPN.<br>
2 or 3 tickets: Discounted rate of <strong>US$50</strong> PRPN.<br>
1 ticket: Discounted rate of <strong>US$80</strong> PRPN.</p>
<p> Offer valid <strong>until November 10th</strong>. <br>
If you need a hotel reservation, provide details in the <a href="#request">"Special Requests"</a> section below.
</p>
<p style="margin-top: 50px;"><strong>Please provide correct personal information for your ticket
booking. Double
check.</strong></p>
<input class="FullName" id="ticket_realname" name="fullname"
placeholder="Your name * (exactly as in your passport)" required="" type="text" value="" />
<div id="ticket_realname_errmsg" style="display: none">
@ -121,7 +98,7 @@
<div class="requiredArea" style="margin-top:-10px;">Please verify your email.</div>
</div>
<select name="country_code" class="country_code">
<option style="font-weight: 600;" value="United States +1">United States&nbsp; &nbsp;+1</option>
<option style="font-weight: 600;" value="United States +1">United States&nbsp; &nbsp;+1</option>
<option style="font-weight: 600;" value="United Kingdom +44">United Kingdom&nbsp; &nbsp;+44</option>
<option style="font-weight: 600;" value="Australia +61">Australia&nbsp; &nbsp;+61</option>
<option style="font-weight: 600;" value="Canada +1">Canada&nbsp; &nbsp;+1</option>
@ -375,210 +352,145 @@
</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="For booking two/or more tickets, please fill in other traveler name(s) here: (per passport, e.g. Smith Sarah Jean)"></textarea>
<textarea name="other_travels_name"
placeholder="For booking two/or more tickets, please fill in other traveler name(s) here: (per passport, e.g. Smith Sarah Jean)" id="request"></textarea>
<textarea name="additional_requirements"
placeholder="If you have other requirements such as hotel booking, customized guided tour, private transport, or a full tour package, please let us know .... (optional)"
></textarea>
<p style="
placeholder="If you have other requirements such as hotel booking, customized guided tour, private transport, or a full tour package, please let us know .... (optional)"></textarea>
<p style="
margin-top: 0;
margin-bottom: 10px;
padding: 0;
">I prefer to be contacted via:</p>
<div class="checkYes">
<input type="checkbox" value="yes" name="contact_via_whatsapp" id="whatsapp" class="checkBorder" >
<label for="whatsapp">WhatsApp</label>
</div>
<div class="checkYes">
<input type="checkbox" value="yes" name="contact_via_iMessage" id="iMessage" class="checkBorder" >
<label for="iMessage">iMessage</label>
</div>
<div class="checkYes">
<input type="checkbox" value="yes" name="contact_via_phone_call" id="Phone" class="checkBorder" >
<label for="Phone">Phone call</label>
</div>
<div class="checkYes">
<input type="checkbox" value="yes" name="contact_via_email" id="Email" class="checkBorder" >
<label for="Email">Email</label>
</div>
<div class="checkYes">
<input type="checkbox" value="yes" name="contact_via_video_appointment" id="Video" class="checkBorder" >
<label for="Video">Video appointment</label>
</div>
<input name="total_price" id="totalPriceHidden" type="hidden" value="10000" />
<input name="product_code" id="cli_no" type="hidden" value="YDFW-AH"/>
<input name="itinerary" type="hidden" value="<?php echo $information->ic_title; ?>" />
<button class="sendButton" id="submit_ticket_button" name="submit_ticket_form"
type="button">Proceed to Payment</button>
<div class="checkYes">
<input type="checkbox" value="yes" name="contact_via_whatsapp" id="whatsapp" class="checkBorder">
<label for="whatsapp">WhatsApp</label>
</div>
<div class="checkYes">
<input type="checkbox" value="yes" name="contact_via_iMessage" id="iMessage" class="checkBorder">
<label for="iMessage">iMessage</label>
</div>
<div class="checkYes">
<input type="checkbox" value="yes" name="contact_via_phone_call" id="Phone" class="checkBorder">
<label for="Phone">Phone call</label>
</div>
<div class="checkYes">
<input type="checkbox" value="yes" name="contact_via_email" id="Email" class="checkBorder">
<label for="Email">Email</label>
</div>
<div class="checkYes">
<input type="checkbox" value="yes" name="contact_via_video_appointment" id="Video" class="checkBorder">
<label for="Video">Video appointment</label>
</div>
<input name="total_price" id="totalPriceHidden" type="hidden" value="10000" />
<input name="product_sn" id="product_sn" type="hidden" value="13949" />
<input name="product_code" id="cli_no" type="hidden" value="YDFW-AH" />
<input name="itinerary" type="hidden" value="<?php echo $information->ic_title; ?>" />
<button class="sendButton" id="submit_ticket_button" name="submit_ticket_form" type="button">Proceed to
Payment</button>
</form>
</div>
<script>
function calcTotalPrice() {
var ticketTotalPrice = ticketPrice * adultNumberValue;
if (adultNumberValue >= 10) {
ticketTotalPrice = ticketTotalPrice * 0.95;
}
function calcTotalPrice(ticketPrice, adultNumber) {
var totalPrice = ticketPrice * adultNumber;
if (adultNumber >= 10) {
totalPrice = totalPrice * 0.95;
}
// Premium Hotel 票要选酒店 100 美金/间/夜
var hotelTotalPrice = 0;
if (selectedTicketType === 'Premium_hotel') {
hotelTotalPrice = 100 * hotelRoomValue * stayLengthValue;
return totalPrice.toFixed(2);
}
var totalPrice = ticketTotalPrice + hotelTotalPrice;
if (!Number.isInteger(totalPrice)) {
totalPrice = totalPrice.toFixed(2);
var adultNumberNode = document.getElementById("adultNumberValue");
var ticketTypeList = document.querySelectorAll("input[name='ticket_type']");
var totalPriceText = document.getElementById("totalPriceText");
var totalPriceHidden = document.getElementById("totalPriceHidden");
var adultNumberValue = parseInt(adultNumberNode.value);
var ticketPrice = 139;
totalPriceHidden.value = ticketPrice * adultNumberValue;
totalPriceText.innerText = '$' + ticketPrice;
for (var i = 0; i < ticketTypeList.length; i++) {
var ticketTypeNode = ticketTypeList[i];
ticketTypeNode.addEventListener('click', function (event) {
var currentTarget = event.currentTarget;
var adultNumberValue = parseInt(adultNumberNode.value);
if (currentTarget.value === 'Premium+Transfer+Dinner') {
ticketPrice = 209;
} else if (currentTarget.value === 'Standard+Transfer+Dinner') {
ticketPrice = 139;
} else if (currentTarget.value === 'VIP+Transfer+Dinner') {
ticketPrice = 179;
}
var totalPrice = calcTotalPrice(ticketPrice, adultNumberValue);
totalPriceText.innerText = '$' + totalPrice;
totalPriceHidden.value = totalPrice;
});
}
totalPriceText.innerText = '$' + totalPrice;
totalPriceHidden.value = totalPrice;
}
var adultNumberNode = document.getElementById("adultNumberValue");
var hotelRoomNode = document.getElementById("hotel_room");
var stayLengthNode = document.getElementById("stay_length");
var ticketTypeList = document.querySelectorAll("input[name='ticket_type']");
var totalPriceText = document.getElementById("totalPriceText");
var totalPriceHidden = document.getElementById("totalPriceHidden");
var hotelChoiceBlock = document.getElementById("hotel_choice");
var adultNumberValue = parseInt(adultNumberNode.value);
var hotelRoomValue = parseInt(hotelRoomNode.value);
var stayLengthValue = parseInt(stayLengthNode.value);
var ticketPrice = 139;
var selectedTicketDate = '';
var selectedTicketType = '';
calcTotalPrice();
for (var i = 0; i < ticketTypeList.length; i++) {
var ticketTypeNode = ticketTypeList[i];
ticketTypeNode.addEventListener('click', function (event) {
var currentTarget = event.currentTarget;
selectedTicketType = currentTarget.id;
var adultNumberValue = parseInt(adultNumberNode.value);
if (selectedTicketType === 'Premium') {
ticketPrice = 199;
} else if (selectedTicketType === 'Premium_hotel') {
ticketPrice = 199;
} else if (selectedTicketType === 'VIP') {
ticketPrice = 179;
} else if (selectedTicketType === 'Standardr') {
ticketPrice = 139;
}
if (selectedTicketType === 'Premium_hotel') {
hotelChoiceBlock.style.display = '';
} else {
hotelChoiceBlock.style.display = 'none';
}
calcTotalPrice();
});
}
var ticketDateList = document.querySelectorAll("input[name='ticket_date']");
var ticketTypePremium = document.getElementById("ticket_type_premium");
var vipTypePremium = document.getElementById("vip_type_premium");
var ticketTypeStandard = document.getElementById("ticket_type_standard");
var ticketDateList = document.querySelectorAll("input[name='ticket_date']");
var ticketTypePremium = document.getElementById("ticket_type_premium");
var vipTypePremium = document.getElementById("vip_type_premium");
var ticketTypeStandard = document.getElementById("ticket_type_standard");
var premiumOption = document.getElementById("Premium");
var vipOption = document.getElementById("VIP");
var standardOption = document.getElementById("Standard");
var premiumTicketLeft = document.getElementById("premium_ticket_left");
var vipTicketLeft = document.getElementById("vip_ticket_left");
var standardTicketLeft = document.getElementById("standard_ticket_left");
setNovember28thTicketLeft();
var premiumTicketLeft = document.getElementById("premium_ticket_left");
var vipTicketLeft = document.getElementById("vip_ticket_left");
var standardTicketLeft = document.getElementById("standard_ticket_left");
setNovember28thTicketLeft();
ticketTypePremium.style.display = 'none';
for (var i = 0; i < ticketDateList.length; i++) {
var ticketDateNode = ticketDateList[i];
ticketDateNode.addEventListener('click', function (event) {
var currentTarget = event.currentTarget;
selectedTicketDate = currentTarget.id;
if (currentTarget.id === 'november27th') {
ticketTypeStandard.style.display = 'none';
vipTypePremium.style.display = 'none';
// standardOption.disabled = true;
setNovember27thTicketLeft();
} else { // november28th
// ticketTypePremium.style.display = '';
ticketTypeStandard.style.display = '';
vipTypePremium.style.display = '';
// standardOption.disabled = false;
setNovember28thTicketLeft();
}
if (selectedTicketType === 'Premium_hotel') {
hotelChoiceBlock.style.display = '';
} else {
hotelChoiceBlock.style.display = 'none';
}
});
}
function setNovember27thTicketLeft() {
premiumTicketLeft.innerText = '30 left';
vipTicketLeft.innerText = '14 left';
standardTicketLeft.innerText = '0 left';
}
function setNovember28thTicketLeft() {
premiumTicketLeft.innerText = '35 left';
vipTicketLeft.innerText = '198 left';
standardTicketLeft.innerText = '149 left';
}
var plusButton = document.getElementById("plusButton");
var minusButton = document.getElementById("minusButton");
plusButton.addEventListener('click', function (event) {
adultNumberValue = parseInt(adultNumberNode.value) + 1;
adultNumberNode.value = adultNumberValue;
calcTotalPrice();
});
minusButton.addEventListener('click', function (event) {
var beforeValue = parseInt(adultNumberNode.value);
if (beforeValue > 1) {
adultNumberValue = beforeValue - 1;
adultNumberNode.value = adultNumberValue;
calcTotalPrice();
for (var i = 0; i < ticketDateList.length; i++) {
var ticketDateNode = ticketDateList[i];
ticketDateNode.addEventListener('click', function (event) {
var currentTarget = event.currentTarget;
if (currentTarget.id === 'november27th') {
ticketTypePremium.style.display = '';
ticketTypeStandard.style.display = 'none';
vipTypePremium.style.display = '';
// standardOption.disabled = true;
setNovember27thTicketLeft();
} else { // november28th
ticketTypePremium.style.display = '';
ticketTypeStandard.style.display = '';
vipTypePremium.style.display = '';
// standardOption.disabled = false;
setNovember28thTicketLeft();
}
});
}
});
var plusRoomBtn = document.getElementById("plusRoomBtn");
var minusRoomBtn = document.getElementById("minusRoomBtn");
var plusStayBtn = document.getElementById("plusStayBtn");
var minusStayBtn = document.getElementById("minusStayBtn");
plusRoomBtn.addEventListener('click', function (event) {
hotelRoomValue = parseInt(hotelRoomNode.value) + 1;
hotelRoomNode.value = hotelRoomValue;
calcTotalPrice();
});
minusRoomBtn.addEventListener('click', function (event) {
var beforeValue = parseInt(hotelRoomNode.value);
if (beforeValue > 1) {
hotelRoomValue = beforeValue - 1;
hotelRoomNode.value = hotelRoomValue;
calcTotalPrice();
function setNovember27thTicketLeft() {
premiumTicketLeft.innerText = '20 left';
vipTicketLeft.innerText = '20 left';
standardTicketLeft.innerText = '0 left';
}
});
plusStayBtn.addEventListener('click', function (event) {
stayLengthValue = parseInt(stayLengthNode.value) + 1;
stayLengthNode.value = stayLengthValue;
calcTotalPrice();
});
minusStayBtn.addEventListener('click', function (event) {
var beforeValue = parseInt(stayLengthNode.value);
if (beforeValue > 1) {
stayLengthValue = beforeValue - 1;
stayLengthNode.value = stayLengthValue;
calcTotalPrice();
function setNovember28thTicketLeft() {
premiumTicketLeft.innerText = '35 left';
vipTicketLeft.innerText = '60 left';
standardTicketLeft.innerText = '50 left';
}
});
var plusButton = document.getElementById("plusButton");
var minusButton = document.getElementById("minusButton");
plusButton.addEventListener('click', function (event) {
var adultNumberValue = parseInt(adultNumberNode.value) + 1;
adultNumberNode.value = adultNumberValue;
var totalPrice = calcTotalPrice(ticketPrice, adultNumberValue);
totalPriceText.innerText = '$' + totalPrice;
totalPriceHidden.value = totalPrice;
});
minusButton.addEventListener('click', function (event) {
var beforeValue = parseInt(adultNumberNode.value);
if (beforeValue > 1) {
var adultNumberValue = beforeValue - 1;
adultNumberNode.value = adultNumberValue;
var totalPrice = calcTotalPrice(ticketPrice, adultNumberValue);
totalPriceText.innerText = '$' + totalPrice;
totalPriceHidden.value = totalPrice;
}
});
</script>
<script>
var submit_ticket_button = document.getElementById("submit_ticket_button");
@ -640,16 +552,4 @@
}
return result;
}
</script>
<style>
#hotel_choice { display: inline-block;}
.selectionMemo {
font-size: 18px;
line-height: 17px;
}
@media (min-width: 751px){
.optionLable {
width: 31.8%;
}}
</style>
<!--AH-Lantern-From-Info-->
</script>
Loading…
Cancel
Save