function roomCount() {
document.getElementById("roomPax").classList.add("showRoomPax");
}
function addmore_rooms() {
var rooms = document.querySelectorAll(".HotelNoRoomWrapper");
html = "";
let RemoveHtml = `
close
`
if (rooms.length < 6) {
html = `
local_hotel
Room ${rooms.length + 1}
${rooms.length != 0 ? RemoveHtml : ''}
`
}
if (rooms.length >= 5) document.getElementById('MoreOption').querySelector('.addMoreTravller').classList.add("HotelPaxSelectOption");
document.getElementById('MoreOption').querySelector('.addMoreTravller').insertAdjacentHTML("beforebegin", html)
TravellerCounter('');
}
addmore_rooms();
function RemoveRoom(elem) {
elem.closest(".HotelNoRoomWrapper").remove();
let allRoom = document.querySelectorAll(".HotelNoRoomWrapper")
allRoom.forEach((e, i) => {
e.querySelector('.Rooms_no').innerHTML = `Room ${i + 1} `
});
TravellerCounter('');
document.getElementById('MoreOption').querySelector('.addMoreTravller').classList.remove("HotelPaxSelectOption");
};
function AddChildPax(elem, check) {
if (check) {
if (elem.previousElementSibling.value <= 3) {
elem.previousElementSibling.value++
elem.previousElementSibling.previousElementSibling.disabled = false
elem.previousElementSibling.previousElementSibling.style.opacity = '1'
children_number(elem, check, elem.previousElementSibling.value)
TravellerCounter('');
} if (elem.previousElementSibling.value == 4) {
elem.disabled = true;
elem.style.opacity = '0.6';
}
} else {
if (elem.nextElementSibling.value >= 1) {
elem.nextElementSibling.nextElementSibling.disabled = false;
elem.nextElementSibling.nextElementSibling.style.opacity = '1';
elem.nextElementSibling.value--;
children_number(elem, check, elem.nextElementSibling.value);
TravellerCounter('');
} if (elem.nextElementSibling.value == 0) {
elem.disabled = true;
elem.style.opacity = '0.6';
}
}
if (true) {
if (document.querySelector('.child_1')) {
document.querySelector('.Child-one').classList.remove('d-none');;
} else document.querySelector('.Child-one').classList.add('d-none');
if (document.querySelector('.child_2')) {
document.querySelector('.Child-two').classList.remove('d-none');
} else document.querySelector('.Child-two').classList.add('d-none');
if (document.querySelector('.child_3')) {
document.querySelector('.Child-three').classList.remove('d-none');
} else document.querySelector('.Child-three').classList.add('d-none');
if (document.querySelector('.child_4')) {
document.querySelector('.Child-four').classList.remove('d-none');
} else document.querySelector('.Child-four').classList.add('d-none');
}
};
function AddAdultPax(elem, check) {
if (check) {
if (elem.previousElementSibling.value <= 5) {
elem.previousElementSibling.value++;
elem.previousElementSibling.previousElementSibling.disabled = false;
elem.previousElementSibling.previousElementSibling.style.opacity = '1';
TravellerCounter('');
} if (elem.previousElementSibling.value == 6) {
elem.disabled = true;
elem.style.opacity = '0.6';
}
} else {
if (elem.nextElementSibling.value >= 2) {
elem.nextElementSibling.value--;
elem.nextElementSibling.nextElementSibling.disabled = false;
elem.nextElementSibling.nextElementSibling.style.opacity = '1';
TravellerCounter('');
} if (elem.nextElementSibling.value == 1) {
elem.disabled = true;
elem.style.opacity = '0.6';
}
}
};
function apply_people(elem) {
if (elem) {
TravellerCounter(elem.getAttribute('data-room'))
document.getElementById("roomPax").classList.remove("showRoomPax");
if (elem.getAttribute('data-room') == "addmore") {
document.getElementById("MoreOption").classList.remove("moreOptionWrapper")
} else document.getElementById("MoreOption").classList.add("moreOptionWrapper")
}
};
var RoomDetails = []
function TravellerCounter(optionType) {
console.log(RoomDetails)
let searchRooms = [];
let totalRooms = "";
if (optionType === "1Room2Adult") {
let array_age = [];
let data = {
"adult": "2",
"child": "0",
"childAge": array_age
}
searchRooms.push(data);
totalRooms = "1";
} else if (optionType === "1Room1Adult") {
let array_age = [];
let data = {
"adult": "1",
"child": "0",
"childAge": array_age
}
totalRooms = "1";
searchRooms.push(data);
} else {
let roomElem = [...document.querySelector('#MoreOption').querySelectorAll('.HotelNoRoomWrapper')];
let roomData = roomElem.map(e => {
let adultVal = e.querySelector('.AdultPax').querySelector('input').value;
let childVal = e.querySelector('.ChildPax').querySelector('input').value;
let html = e.querySelector('.HotelNoageChild').querySelectorAll('.HotelNoageSelect');
let array_age = [...html].map(elem => elem.querySelector('.select_control').value);
return {
'adult': adultVal,
'child': childVal,
'childAge': array_age
}
});
searchRooms = [...roomData];
totalRooms = searchRooms.length;
}
RoomDetails = searchRooms;
getRoomsInfo(searchRooms);
}
TravellerCounter('1Room2Adult')
function getRoomsInfo(rooms) {
let roomsInfo = rooms.reduce((acc, elem) =>
(
{
Adult: parseInt(acc.Adult) + parseInt(elem.adult),
Child: parseInt(acc.Child) + parseInt(elem.child)
})
, ({ Adult: 0, Child: 0 }));
roomsInfo['Rooms'] = rooms.length;
console.log(roomsInfo)
document.getElementById('RoomCount').value = `${rooms.length} Room, ${roomsInfo.Adult} Adult ${roomsInfo.Child > 0 ? ', ' + roomsInfo.Child + ' Child' : ''}`;
}
// child count
function children_number(elem, check, index) {
let html = "";
console.log(index)
if (check) {
html += `
`;
elem.closest(".HotelNoRoomWrapper").querySelector(".HotelNoageChild").insertAdjacentHTML("beforeend", html)
} else {
let elemet = elem.closest(".HotelNoRoomWrapper").querySelectorAll(".HotelNoageSelect");
let ind =
elemet.length - 1
elemet[ind].remove();
}
TravellerCounter('');
};
// hote api
let HotelList = [];
let NationalityList = [];
getBindHotelList()
async function getBindHotelList(inp) {
const response = await fetch("https://adminapi.uat.futuretravelplatform.com/api/CityMaster/GetSelectedCity?cityCode=39942,12568,41325,38997,33324&LangCode=EN", {
method: 'GET',
headers: { 'Content-Type': 'application/json', 'OrgId': '2206040706597097092' }
});
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
HotelList = data
console.log(data)
}
// onkeyup
async function GethotelList(Input) {
if (Input.value.length >= 2) {
const response = await fetch("https://hotelapi.uat.futuretravelplatform.com/api/hotel/location?searchKey=" + Input.value + "&langCode=EN", {
method: 'GET',
headers: { 'Content-Type': 'application/json', 'OrgId': '2206040706597097092' }
});
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
HotelList = data
autoHotelListbind(Input)
console.log(data)
}
}
// bind hotel list
function ShowHotelList(element) {
element.closest(".HotelSearchDestination").querySelector(".hideInput") ? element.closest(".HotelSearchDestination").querySelector(".hideInput").classList.remove('hideInput') : ''
autoHotelListbind(element)
}
function autoHotelListbind(element) {
let html = '';
HotelList.map(e => {
html += `