/*FETCH*/
if (typeof NeoModules === "undefined") {
var NeoModules = {};
}
(function () {
if (typeof window.HttpRequestException === "undefined") {
window.HttpRequestException = class HttpRequestException {
constructor(message) {
this.name = "HttpRequestException";
this.message = message
? message
: "Ha ocurrido un error en la solicitud";
}
};
}
})();
function isEmptyObject(obj) {
return Object.entries(obj).length === 0 && obj.constructor === Object;
}
function getHeaders(token) {
let headers = {
"Content-Type": "application/json",
Accept: "application/json",
};
if (token) headers["Authorization"] = `Bearer ${token}`;
return headers;
}
async function neoApiPost(endpoint, data, overrideApi, overrideConfig) {
let config = {
method: "POST",
headers: getHeaders("114|LuhhnXez3aq5tl9CGzdBH0NoNLA4HkMg9777vD5Nc5926620"),
body: JSON.stringify(data),
};
// Check if overrideConfig is an object and not empty
if (
overrideConfig &&
typeof overrideConfig === "object" &&
!isEmptyObject(overrideConfig)
) {
config = {
...config,
...overrideConfig,
};
}
const apiGatewayEndPoint = $("#location-autocomplete-container").attr(
"gateWay"
);
let baseURL = apiGatewayEndPoint;
if (overrideApi) baseURL = overrideApi;
if (!baseURL) throw "No se definió correctamente el endpoint";
if (config.headers.Authorization === "Bearer ") throw "Token ausente";
const url = baseURL + endpoint;
if (typeof FnLoadingON === "function") FnLoadingON();
return fetch(url, config)
.then((response) => {
if (typeof FnLoadingOFF === "function") FnLoadingOFF();
if (!response.ok) {
return response.json().then((errorData) => {
let errorMessage = errorData.message || "Error en la solicitud";
if (errorData?.kick_user) {
MostrarError("Tu sesión ha expirado. Por favor, vuelve a ingresar");
window.location.reload();
} else {
MostrarError(errorMessage);
}
throw new NeoModules.HttpRequestException(errorMessage);
});
}
return response.json();
})
.then((data) => {
if (data.response === 0 || data.Response === 0) {
if (data.message && typeof MostrarError === "function")
MostrarError(data.message);
}
return data;
})
.catch((error) => {
if (typeof FnLoadingOFF === "function") FnLoadingOFF();
if (error instanceof NeoModules.HttpRequestException) {
throw error;
} else {
if (error.message === "Network Error")
error.message = "Error de comunicación con el servidor";
MostrarError(`Ha ocurrido un error. ${error.message}`);
throw new NeoModules.HttpRequestException(error.message);
}
});
}
/* MARKETPLACE_BUSCADOR_v3 JS.JS BEGIN */
function initBuscador() {
console.log("Init Buscador");
// Check and log timezone and days modifier
console.log("Using timezone: " + getValidTimezone());
var daysModifier = getDaysModifier();
if (daysModifier !== 0) {
console.log("Applying global days modifier: " + daysModifier + " days");
}
$(".filtersku i").click(function (e) {
$(".filtersku").remove();
$(".filterby").remove();
$(".skufilercontainer input").val("");
});
if (!tagPxsolEngine) {
var tagPxsolEngine = setTag();
}
var locationChoosenClick = false;
var lng = $(".neo_marketplace_buscador_v3 #dataconfig").attr("lng");
var DatePickerStart = $(".neo_marketplace_buscador_v3 #dataconfig").attr(
"DatePickerStart"
);
DatePickerStart = DatePickerStart * 1;
$(".ModuloWrap_marketplace_buscador_v3").click(function () {
$(this).removeClass("isolate");
});
var required_txt_date = "Please select a date";
var required_txt_search = "Please select a destination";
if (LngTk == "es") {
required_txt_date = "Por favor seleccione una Fecha";
required_txt_search = "Por favor seleccione una destino";
}
if (LngTk == "pt") {
required_txt_date = "Selecione uma data";
required_txt_search = "Seleccione um destino";
}
$(".neo_marketplace_buscador_v3 #pxmk_searchform").validate({
rules: {
Search: {
required: true,
},
Start: {
required: true,
},
End: {
required: true,
},
},
messages: {
Search: {
required: required_txt_search,
},
Start: {
required: required_txt_date,
},
End: {
required: required_txt_date,
},
},
});
function SetPartyGroup() {
var PartyTypeVal = $(".neo_marketplace_buscador_v3 #PartyType").val();
if (PartyTypeVal === "single") {
$(".neo_marketplace_buscador_v3 #GroupsForm").val("1:1,0,0");
}
if (PartyTypeVal === "double") {
$(".neo_marketplace_buscador_v3 #GroupsForm").val("1:2,0,0");
}
if (PartyTypeVal === "multiple" || PartyTypeVal == "familiar") {
$(".neo_marketplace_buscador_v3 #MultiplePartySelect").css(
"display",
"flex"
);
CalculatePartyGroup();
} else {
$(".neo_marketplace_buscador_v3 #MultiplePartySelect").hide();
}
}
// Get valid timezone or fallback to default
function getValidTimezone() {
const timezoneElement = document.querySelector(".neo_marketplace_buscador_v3 #ProductTimezone");
let timezone = timezoneElement ? timezoneElement.value : null;
// Check if timezone input exists and has a value
if (!timezone) {
return "America/Argentina/Mendoza";
}
// Validate timezone
try {
Intl.DateTimeFormat(undefined, { timeZone: timezone });
return timezone;
} catch (e) {
console.warn("Invalid timezone: " + timezone + ". Falling back to default.");
return "America/Argentina/Mendoza";
}
}
// Get global days modifier for testing
function getDaysModifier() {
const modifierElement = document.querySelector(".neo_marketplace_buscador_v3 #GlobalDaysModifier");
let modifier = modifierElement ? modifierElement.value : null;
if (modifier && !isNaN(parseInt(modifier))) {
return parseInt(modifier);
}
return 0;
}
// Apply the global days modifier to a date
function applyDaysModifier(date) {
const modifier = getDaysModifier();
if (modifier !== 0) {
date.setDate(date.getDate() + modifier);
}
return date;
}
$(".neo_marketplace_buscador_v3 .CalculateParty").change(function () {
CalculatePartyGroup();
});
var InitialContent = $(
".neo_marketplace_buscador_v3 .RoomsSelectContainer[roomnumber='1']"
).html();
var MaxRooms = Number($(".neo_marketplace_buscador_v3 #MaxRooms").val());
$(".neo_marketplace_buscador_v3 .px-mk-addnewroom").off();
$(".neo_marketplace_buscador_v3 .px-mk-addnewroom").click(function () {
$(".neo_marketplace_buscador_v3 .px-mk-removeroom").show();
var CurrentRooms = $(
".neo_marketplace_buscador_v3 .RoomsSelectContainer"
).length;
if (CurrentRooms < MaxRooms) {
var LastRoomNumber = $(".neo_marketplace_buscador_v3 .RoomsSelectContainer")
.last()
.attr("roomnumber");
var NewRoomNumber = Number(LastRoomNumber) + 1;
var NewContent =
'
' +
InitialContent +
"
";
$(NewContent).insertAfter(
$(".neo_marketplace_buscador_v3 .RoomsSelectContainer").last()
);
$(
".neo_marketplace_buscador_v3 .RoomsSelectContainer[roomnumber='" +
NewRoomNumber +
"']"
)
.find("#RoomNumber")
.text(NewRoomNumber);
$(
".neo_marketplace_buscador_v3 .RoomsSelectContainer[roomnumber='" +
NewRoomNumber +
"']"
)
.find("[roomnumber]")
.attr("roomnumber", NewRoomNumber);
if (Number(CurrentRooms + 1) === Number(MaxRooms)) {
$(".neo_marketplace_buscador_v3 .px-mk-addnewroom").hide();
}
}
CalculatePartyGroup();
});
$(".neo_marketplace_buscador_v3 #PartyType").change(function () {
SetPartyGroup();
});
SetPartyGroup();
console.log("Init rmRoom");
$(".neo_marketplace_buscador_v3 .px-mk-removeroom-btn").off();
$(".neo_marketplace_buscador_v3 .px-mk-removeroom-btn").click(function () {
var MaxRooms = $(".neo_marketplace_buscador_v3 #MaxRooms").val();
var CurrentRooms = $(
".neo_marketplace_buscador_v3 .RoomsSelectContainer"
).length;
//console.log(CurrentRooms+" < "+MaxRooms);
$(".neo_marketplace_buscador_v3 .RoomsSelectContainer").last().remove();
if (Number(CurrentRooms - 1) < Number(MaxRooms)) {
$(".neo_marketplace_buscador_v3 .px-mk-addnewroom").show();
}
if (Number(CurrentRooms - 1) === 1) {
$(".neo_marketplace_buscador_v3 .px-mk-removeroom").hide();
}
CalculatePartyGroup();
});
$(".neo_marketplace_buscador_v3 .SelectorInitial").click(function () {
$(".neo_marketplace_buscador_v3 .PartyTypeSimulatorSelect").show();
});
$("body").click(function (e) {
if (
!$(e.target).is(".neo_marketplace_buscador_v3 .SelectorInitial") &&
!$(e.target).parents(".SelectorInitial").length &&
!$(e.target).parents(".PartyTypeSimulatorSelect").length
) {
$(".PartyTypeSimulatorSelect").hide();
}
});
$(".neo_marketplace_buscador_v3 .PartyTypeSimulatorSelect .Selector").click(
function () {
var PartyType = $(this).attr("rel");
$(".neo_marketplace_buscador_v3 #PartyType").val(PartyType);
SetPartyGroup();
$(".neo_marketplace_buscador_v3 .SelectorInitial").hide();
$(
".neo_marketplace_buscador_v3 .SelectorInitial[rel='" + PartyType + "']"
).css("display", "flex");
$(".neo_marketplace_buscador_v3 .PartyTypeSimulatorSelect").hide();
}
);
function ChildrensSelect(elem) {
var RoomNumber = $(elem).attr("roomnumber");
var ChildrensQty = $(elem).val();
if (ChildrensQty > 0) {
$(
".neo_marketplace_buscador_v3 .ChildrensAgesSelectContainer[roomnumber='" +
RoomNumber +
"']"
).html("");
$(
".neo_marketplace_buscador_v3 .ChildrensAges[roomnumber='" +
RoomNumber +
"']"
).show();
var ChildrensAgesContent =
'";
for (var j = 1; j <= ChildrensQty; j++) {
$(
".neo_marketplace_buscador_v3 .ChildrensAgesSelectContainer[roomnumber='" +
RoomNumber +
"']"
).append(ChildrensAgesContent);
}
} else {
$(
".neo_marketplace_buscador_v3 .ChildrensAges[roomnumber='" +
RoomNumber +
"']"
).hide();
}
CalculatePartyGroup();
}
function CheckChildrens() {
var ValidChildrens = 1;
$(".neo_marketplace_buscador_v3 .NotValidChildrens").hide();
$(".neo_marketplace_buscador_v3 .ChildrensSelect").each(function () {
var HasChilds = $(this).val();
var RoomNumber = $(this).attr("roomnumber");
if (HasChilds !== "0") {
$(
".neo_marketplace_buscador_v3 .ChildrensAgesSelect[roomnumber='" +
RoomNumber +
"']"
).each(function () {
if ($(this).val() === "") {
ValidChildrens = 0;
$(this).addClass("notvalid");
}
});
}
});
if (ValidChildrens === 0) {
$(".neo_marketplace_buscador_v3 .NotValidChildrens").show();
}
return ValidChildrens;
}
function CalculatePartyGroup(elem) {
$(elem).removeClass("notvalid");
var RoomsQty = $(".neo_marketplace_buscador_v3 .RoomsSelectContainer").length;
var PartyGroup = "";
var RoomsQtyLoop = 1;
$(".neo_marketplace_buscador_v3 .RoomsSelectContainer").each(function () {
PartyGroup += RoomsQtyLoop;
if (RoomsQtyLoop <= RoomsQty) {
RoomsQtyLoop = RoomsQtyLoop + 1;
}
var RoomNumber = $(this).attr("roomnumber");
var Adults = $(
".neo_marketplace_buscador_v3 .AdultsSelect[roomnumber='" +
RoomNumber +
"']"
).val();
if ($(".neo_marketplace_buscador_v3 #Combinations").length > 0) {
var JsonCombinations = $(
".neo_marketplace_buscador_v3 #Combinations"
).text();
JsonCombinations = JSON.parse(JsonCombinations);
$.each(JsonCombinations, function (i, item) {
if (JsonCombinations[i].Adults === Adults) {
console.log("MAXCHILDS=" + JsonCombinations[i].Childs);
var DefaultChilds = $(
".neo_marketplace_buscador_v3 .ChildrensSelect[roomnumber='" +
RoomNumber +
"']"
).val();
console.log("DEFAULTCHILDS=" + DefaultChilds);
$(
".neo_marketplace_buscador_v3 .ChildrensSelect[roomnumber='" +
RoomNumber +
"']"
).html("");
for (var c = 0; c <= JsonCombinations[i].Childs; c++) {
if (c === 0) {
var itext = "-";
} else {
var itext = c;
}
$(
".neo_marketplace_buscador_v3 .ChildrensSelect[roomnumber='" +
RoomNumber +
"']"
).append('");
}
$(
".neo_marketplace_buscador_v3 .ChildrensSelect[roomnumber='" +
RoomNumber +
"']"
).val(DefaultChilds);
}
});
}
PartyGroup += ":" + Adults + ",";
var Childrens = $(
".neo_marketplace_buscador_v3 .ChildrensSelect[roomnumber='" +
RoomNumber +
"']"
).val();
var BabiesQty = 0;
var MaxAgeBabies = $(
".neo_marketplace_buscador_v3 #MaxAgeBabiesNumber"
).val();
var ChildrenPartyGroup = "";
if (Number(Childrens) !== 0) {
$(
".neo_marketplace_buscador_v3 .ChildrensAgesSelect[roomnumber='" +
RoomNumber +
"']"
).each(function () {
var ChildrensAgeValue = $(this).val();
console.log(ChildrensAgeValue);
console.log("MaxAgeBabies=" + MaxAgeBabies);
if (Number(ChildrensAgeValue) <= Number(MaxAgeBabies)) {
BabiesQty += 1;
} else {
ChildrenPartyGroup += ChildrensAgeValue + ".";
}
});
if (ChildrenPartyGroup.indexOf(".") !== -1) {
ChildrenPartyGroup = ChildrenPartyGroup.substr(
0,
ChildrenPartyGroup.length - 1
);
}
} else {
ChildrenPartyGroup = "0";
}
if (ChildrenPartyGroup === "") {
ChildrenPartyGroup = "0";
}
console.log(ChildrenPartyGroup);
PartyGroup += ChildrenPartyGroup + "," + BabiesQty + ";";
});
PartyGroup = PartyGroup.substring(0, PartyGroup.length - 1);
PartyGroup = PartyGroup.replace("0.0", "0");
console.log("PARTYGROUP=" + PartyGroup);
$(".neo_marketplace_buscador_v3 #GroupsForm").val(PartyGroup);
}
$("body").on("click", function (e) {
if (
!$(e.target).parents("#MultiplePartySelect").length &&
!$(e.target).parents('[rel="multiple"]').length &&
!$(e.target).is('[rel="multiple"]')
) {
$(".neo_marketplace_buscador_v3 #MultiplePartySelect").hide();
}
});
if ($(".neo_marketplace_buscador_v3 #fechaingreso").length) {
function GetFormattedDate(dia) {
var timezone = getValidTimezone();
var todayTime = new Date(new Date().toLocaleString("en-US", {timeZone: timezone}));
// Apply global days modifier
todayTime = applyDaysModifier(todayTime);
if (dia !== null) {
var manana = todayTime.setDate(todayTime.getDate() + dia);
}
var month = todayTime.getMonth() + 1;
var day = todayTime.getDate();
var year = todayTime.getFullYear();
if (dia !== null) {
return day + "/" + month + "/" + year;
} else {
return manana + "/" + month + "/" + year;
}
}
function dateafter(entrada, salida) {
var fechaegreso = $(entrada).val();
var newdate = fechaegreso.split("/").reverse().join("-");
var dt = $.datepicker.parseDate("yy-mm-dd", newdate);
dt.setDate(dt.getDate() + 1);
var dtNew = $.datepicker.formatDate("yy-mm-dd", dt);
dtNew = dtNew.split("-").reverse().join("/");
$(salida).datepicker("setDate", dtNew);
VerNoches(1);
}
var NochesError_txt = "Please select a check-out date";
if (lng == "es") {
NochesError_txt = "Por favor seleccione una fecha de salida";
}
if (lng == "pt") {
NochesError_txt = "Por favor seleccione uma data de partida";
}
function VerNoches(Noches) {
if (Noches <= 0) {
console.log(Noches);
$(".neo_marketplace_buscador_v3 #NochesError").html(NochesError_txt);
$(".neo_marketplace_buscador_v3 #NochesError").show();
$(".neo_marketplace_buscador_v3 #Nights").val(Noches);
$(".neo_marketplace_buscador_v3 #NochesText").html(
"" + Noches + ""
);
} else {
console.log(Noches);
$(".neo_marketplace_buscador_v3 #NochesError").html("");
$(".neo_marketplace_buscador_v3 #NochesError").hide();
$(".neo_marketplace_buscador_v3 #Nights").val(Noches);
$(".neo_marketplace_buscador_v3 #NochesText").html(
"" + Noches + ""
);
}
}
var Noches = "";
var Tiempo = "";
$(
".neo_marketplace_buscador_v3 #fechaingreso_icon,.fechas_ancho_entrada"
).click(function () {
$(".neo_marketplace_buscador_v3 #fechaingreso").datepicker("show");
document.activeElement.blur();
$(".PartyTypeSimulatorSelect").hide();
});
$(
".neo_marketplace_buscador_v3 #fechaegreso_icon,.fechas_ancho_salida"
).click(function () {
$(".neo_marketplace_buscador_v3 #fechaegreso").datepicker("show");
document.activeElement.blur();
$(".PartyTypeSimulatorSelect").hide();
});
$(".neo_marketplace_buscador_v3 #fechaingreso,.fechas_ancho_entrada").click(
function () {
document.activeElement.blur();
$(".PartyTypeSimulatorSelect").hide();
}
);
$(".neo_marketplace_buscador_v3 #fechaegreso,.fechas_ancho_salida").click(
function () {
document.activeElement.blur();
$(".PartyTypeSimulatorSelect").hide();
}
);
dateSelecionada1 = $(".neo_marketplace_buscador_v3 #fechaingreso").datepicker(
"getDate"
);
dateSelecionada2 = $(".neo_marketplace_buscador_v3 #fechaegreso").datepicker(
"getDate"
);
if (LngTk === "es") {
(function (factory) {
if (typeof define === "function" && define.amd) {
// AMD. Register as an anonymous module.
define(["../widgets/datepicker"], factory);
} else {
// Browser globals
factory(jQuery.datepicker);
}
})(function (datepicker) {
datepicker.regional.es = {
closeText: "Cerrar",
prevText: "<Ant",
nextText: "Sig>",
currentText: "Hoy",
monthNames: [
"enero",
"febrero",
"marzo",
"abril",
"mayo",
"junio",
"julio",
"agosto",
"septiembre",
"octubre",
"noviembre",
"diciembre",
],
monthNamesShort: [
"ene",
"feb",
"mar",
"abr",
"may",
"jun",
"jul",
"ago",
"sep",
"oct",
"nov",
"dic",
],
dayNames: [
"domingo",
"lunes",
"martes",
"miércoles",
"jueves",
"viernes",
"sábado",
],
dayNamesShort: ["dom", "lun", "mar", "mié", "jue", "vie", "sáb"],
dayNamesMin: ["D", "L", "M", "X", "J", "V", "S"],
weekHeader: "Sm",
dateFormat: "dd/mm/yy",
firstDay: 1,
isRTL: false,
showMonthAfterYear: false,
yearSuffix: "",
};
datepicker.setDefaults(datepicker.regional.es);
return datepicker.regional.es;
});
}
if (LngTk === "pt") {
(function (factory) {
if (typeof define === "function" && define.amd) {
// AMD. Register as an anonymous module.
define(["../widgets/datepicker"], factory);
} else {
// Browser globals
factory(jQuery.datepicker);
}
})(function (datepicker) {
datepicker.regional[LngTk] = {
closeText: "Fechar",
prevText: "<Anterior",
nextText: "Próximo>",
currentText: "Hoje",
monthNames: [
"Janeiro",
"Fevereiro",
"Março",
"Abril",
"Maio",
"Junho",
"Julho",
"Agosto",
"Setembro",
"Outubro",
"Novembro",
"Dezembro",
],
monthNamesShort: [
"Jan",
"Fev",
"Mar",
"Abr",
"Mai",
"Jun",
"Jul",
"Ago",
"Set",
"Out",
"Nov",
"Dez",
],
dayNames: [
"Domingo",
"Segunda-feira",
"Terça-feira",
"Quarta-feira",
"Quinta-feira",
"Sexta-feira",
"Sábado",
],
dayNamesShort: ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb"],
dayNamesMin: ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb"],
weekHeader: "Sm",
dateFormat: "dd/mm/yy",
firstDay: 0,
isRTL: false,
showMonthAfterYear: false,
yearSuffix: "",
};
datepicker.setDefaults(datepicker.regional["pt-BR"]);
return datepicker.regional["pt-BR"];
});
}
$.datepicker.setDefaults($.datepicker.regional[LngTk]);
function RunClosedOnArrival(disableddates) {
disableddates = disableddates.split(",");
var timezone = getValidTimezone();
$(".neo_marketplace_buscador_v3 #fechaingreso").datepicker({
dateFormat: "dd/mm/yy",
showAnim: "",
onSelect: function () {
$(this).datepicker("hide");
dateSelecionada1 = $(this).datepicker("getDate");
$(".neo_marketplace_buscador_v3 #fechaegreso").val("");
dateSelecionada1.setDate(dateSelecionada1.getDate());
$(".neo_marketplace_buscador_v3 #fechaegreso").datepicker("option", "minDate", dateSelecionada1);
VerNoches(0);
dateafter($(this), ".neo_marketplace_buscador_v3 #fechaegreso");
setTimeout(() => {
$(".neo_marketplace_buscador_v3 #fechaegreso").datepicker("show");
}, 100);
},
beforeShowDay: function (date) {
var sdate = $.datepicker.formatDate("yy-mm-dd", date);
if ($.inArray(String(sdate), disableddates) !== -1) {
return [false];
}
return [true];
},
});
RunMinDate();
}
function RunClosedOnDepartures(disableddates) {
disableddates = disableddates.split(",");
var timezone = getValidTimezone();
$(".neo_marketplace_buscador_v3 #fechaegreso").datepicker({
dateFormat: "dd/mm/yy",
showAnim: "",
onSelect: function () {
dateSelecionada1 = $(".neo_marketplace_buscador_v3 #fechaingreso").datepicker("getDate");
dateSelecionada2 = $(".neo_marketplace_buscador_v3 #fechaegreso").datepicker("getDate");
one_day = 1000 * 60 * 60 * 24;
Noches = Math.ceil((dateSelecionada2.getTime() - dateSelecionada1.getTime()) / one_day);
VerNoches(Noches);
$(".neo_marketplace_buscador_v3 #fechaegreso").valid();
},
beforeShowDay: function (date) {
var sdate = $.datepicker.formatDate("yy-mm-dd", date);
var today = new Date(new Date().toLocaleString("en-US", {timeZone: timezone}));
today = applyDaysModifier(today);
var smallerdate = new Date(sdate);
if ($.inArray(String(sdate), disableddates) !== -1) {
return [false];
}
return [true];
},
});
RunMinDate();
}
function RunMinDate() {
var timezone = getValidTimezone();
var today = new Date(new Date().toLocaleString("en-US", {timeZone: timezone}));
var tomorrow = new Date(new Date().toLocaleString("en-US", {timeZone: timezone}));
// Apply global days modifier to today and tomorrow
today = applyDaysModifier(today);
tomorrow = applyDaysModifier(tomorrow);
today.setDate(today.getDate());
tomorrow.setDate(tomorrow.getDate() + 1);
$(".neo_marketplace_buscador_v3 #fechaingreso").datepicker("option", "minDate", new Date(new Date().getFullYear(), today.getMonth(), today.getDate()));
$(".neo_marketplace_buscador_v3 #fechaegreso").datepicker("option", "minDate", new Date(new Date().getFullYear(), tomorrow.getMonth(), tomorrow.getDate()));
if (dateSelecionada1 != null && dateSelecionada2 != null) {
one_day = 1000 * 60 * 60 * 24;
Tiempo = Math.ceil(dateSelecionada2.getTime() - dateSelecionada1.getTime());
Noches = Math.round(Tiempo / one_day);
VerNoches(Noches);
}
var fullDate = new Date(new Date().toLocaleString("en-US", {timeZone: timezone}));
fullDate = applyDaysModifier(fullDate);
console.log(fullDate);
var twoDigitMonth = fullDate.getMonth().length + 1 === 1 ? fullDate.getMonth() + 1 : "0" + (fullDate.getMonth() + 1);
}
$(".neo_marketplace_buscador_v3 #Nights").val("1");
}
$(".neo_marketplace_buscador_v3 #LocationSearch").on("keydown", function (e) {
var locDropdown = $(".px-mk-locationdropdown");
var itemClass = "px-mk-locationitem";
var suggestionHoverClass = "suggestion_hover";
if (e.key == "ArrowDown") {
e.preventDefault();
if ($("." + suggestionHoverClass).length > 0) {
if (
$(locDropdown)
.find("." + suggestionHoverClass)
.nextAll(":visible:first").length > 0
) {
var currentHover = $(locDropdown).find("." + suggestionHoverClass);
$(currentHover)
.nextAll(":visible:first")
.addClass(suggestionHoverClass);
$(currentHover).removeClass(suggestionHoverClass).focus();
var suggCont = $(locDropdown);
var suggGoTo = $(currentHover).nextAll(":visible:first");
if (
suggGoTo.offset().top + suggGoTo.innerHeight() >
suggCont.offset().top + suggCont.innerHeight()
) {
suggCont.scrollTop(suggCont.scrollTop() + suggGoTo.innerHeight());
}
} else {
$("." + suggestionHoverClass).removeClass(suggestionHoverClass);
$(locDropdown)
.find("." + itemClass + ":visible:first")
.addClass(suggestionHoverClass);
var suggCont = $(locDropdown);
suggCont.scrollTop(0);
}
} else {
$(locDropdown)
.find("." + itemClass + ":visible:first")
.addClass(suggestionHoverClass);
var currentHover = $(locDropdown).find("." + suggestionHoverClass);
var suggCont = $(locDropdown);
var suggGoTo = $(currentHover).nextAll(":visible:first");
suggCont.scrollTop(0);
}
} else if (e.key == "ArrowUp") {
e.preventDefault();
if ($("." + suggestionHoverClass).length > 0) {
if (
$(locDropdown)
.find("." + suggestionHoverClass)
.prevAll(":visible:first").length > 0
) {
var currentHover = $(locDropdown).find("." + suggestionHoverClass);
$(currentHover)
.prevAll(":visible:first")
.addClass(suggestionHoverClass);
$(currentHover).removeClass(suggestionHoverClass).focus();
var suggCont = $(locDropdown);
var suggGoTo = $(currentHover).prevAll(":visible:first");
if (suggGoTo.offset().top < suggCont.offset().top) {
suggCont.scrollTop(
suggGoTo.offset().top - suggCont.offset().top + suggCont.scrollTop()
);
}
} else {
$("." + suggestionHoverClass).removeClass(suggestionHoverClass);
$(locDropdown)
.find("." + itemClass + ":visible:last")
.addClass(suggestionHoverClass);
var currentHover = $(locDropdown).find("." + suggestionHoverClass);
var suggCont = $(locDropdown);
var suggGoTo = $(currentHover).prevAll(":visible:first");
suggCont.scrollTop(
suggGoTo.offset().top - suggCont.offset().top + suggCont.scrollTop()
);
}
} else {
$(locDropdown)
.find("." + itemClass + ":visible:last")
.addClass(suggestionHoverClass);
var currentHover = $(locDropdown).find("." + suggestionHoverClass);
var suggCont = $(locDropdown);
var suggGoTo = $(currentHover).prevAll(":visible:first");
suggCont.scrollTop(
suggGoTo.offset().top - suggCont.offset().top + suggCont.scrollTop()
);
}
} else if (e.key == "Enter") {
e.preventDefault();
if (!$("." + itemClass + ":visible:not(.px-mk-everylocation)").length) {
chooseLocation($(".px-mk-everylocation"));
} else {
var itemHighlighted = $(locDropdown).find("." + suggestionHoverClass);
$("." + suggestionHoverClass).removeClass(suggestionHoverClass);
chooseLocation(itemHighlighted);
}
}
});
$(".neo_marketplace_buscador_v3 #LocationSearch").on(
"click focus",
function () {
$(this).select();
$(this).select();
}
);
$(".neo_marketplace_buscador_v3 #LocationSearch").on("blur", function (e) {
setTimeout(function () {
if (!locationChoosenClick && $("#LocationSearch").val() === "") {
chooseLocation(
$(".neo_marketplace_buscador_v3 .px-mk-locationitem:visible")[0]
);
} else {
locationChoosenClick = false;
}
}, 200);
});
$(".neo_marketplace_buscador_v3 #LocationSearch").on("focus", function (e) {
var locDropdown = $(".px-mk-locationdropdown");
$(locDropdown).addClass("activeAC");
});
$(".neo_marketplace_buscador_v3 #LocationSearch").on(
"input paste focus",
function (e) {
var defSearch = false;
if (
$.inArray($(this).val(), [
"Buscar en todas las ubicaciones",
"Search in all locations",
"Pesquisar em todos os locais",
]) !== -1 &&
$(this).val()
) {
defSearch = true;
}
console.log(e.keyCode);
var locDropdown = $(".px-mk-locationdropdown");
var searchTerm = $(this).val().toLowerCase();
var resultados = 0;
$(locDropdown)
.children()
.each(function () {
if (
$(this).text().toLowerCase().indexOf(searchTerm) !== -1 ||
defSearch
) {
$(this).show();
resultados++;
} else {
$(this).hide();
}
if ($(this).is(".px-mk-everylocation")) $(this).show();
});
if (resultados > 0) {
$(locDropdown).addClass("activeAC");
} else {
$(locDropdown).removeClass("activeAC");
}
if (window.outerWidth < 650) {
setTimeout(function () {
$(window).scrollTop($("#LocationSearch").offset().top - 60);
}, 100);
}
}
);
$(document).on("click", function (e) {
if (
!$(e.target).parents(".px-mk-locationdropdown").length &&
!$(e.target).is("#LocationSearch")
) {
$(".px-mk-locationdropdown").removeClass("activeAC");
$(".suggestion_hover").removeClass("suggestion_hover");
}
});
function chooseLocation(item) {
var locDropdown = $(".px-mk-locationdropdown");
var locationID = $(item).attr("location-id");
var locationName = $.trim($(item).find(".px-mk-locationtxt").text());
$(".neo_marketplace_buscador_v3 #LocationSearch").val(locationName);
$(".neo_marketplace_buscador_v3 #LocationID").val(locationID);
$(".neo_marketplace_buscador_v3 #Location").val(locationName);
if (!locationID) {
$(".neo_marketplace_buscador_v3 #Location").val("");
}
$(locDropdown).removeClass("activeAC");
locationChoosenClick = true;
}
$(".neo_marketplace_buscador_v3 .px-mk-locationitem").click(function () {
chooseLocation(this);
});
function loadProducts() {
$(".px-mk-generalerror").hide();
var endPoint = $(".neo_marketplace_buscador_v3 #pxmk_searchform").attr(
"px-endpoint"
);
var ReturnUrl = $(
".neo_marketplace_buscador_v3 #MultiListID option:selected"
).attr("px-listurl");
var ListID = $(".neo_marketplace_buscador_v3 #MultiListID").val();
$(".neo_marketplace_buscador_v3 #ReturnUrl").val(ReturnUrl);
$(".neo_marketplace_buscador_v3 #MultiProductID").addClass(
"px-mk-disabled-temp"
);
if (ListID !== "") {
$.ajax(endPoint + "/list/info?id=" + ListID)
.done(function (res) {
let listData = res;
var ownLP =
$(".neo_marketplace_buscador_v3 #MultiProductID").attr("ownlp") ===
"true"
? true
: false;
$(".neo_marketplace_buscador_v3 #MultiProductID")
.children()
.not("[disabled]")
.not("[value='everyproduct']")
.remove();
$(".neo_marketplace_buscador_v3 #ProductID").val("");
$(".neo_marketplace_buscador_v3 #MultiProductID").val("");
$(".neo_marketplace_buscador_v3 #MultiProductID")
.children("[value='everyproduct']")
.attr("listid", ListID);
$(listData.Products).each(function (i, product) {
// transform text to capitalize
product.Product = product.Product.replace("&", "&");
let productName = product.Product.replace(/\w\S*/g, function (txt) {
return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();
});
$(".neo_marketplace_buscador_v3 #MultiProductID").append(
$("