{"version":3,"file":"js/commons/layouts/staragent_home-7ebb08b56121a077b793.js","mappings":"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","sources":["webpack://cms-web/./app/assets/javascripts/microsites/staragent/home/blocks/register_form.js","webpack://cms-web/./app/frontend/src/auth0/sso.js","webpack://cms-web/./app/frontend/src/core/horizons_lightbox/horizons_postregister_lightbox.js","webpack://cms-web/./app/frontend/src/core/horizons_lightbox/horizons_postregister_lightbox.analytics.js","webpack://cms-web/./app/frontend/src/utils/ib_session_fancybox.js"],"sourcesContent":["const COUNTRY_OTHERS_OPTION_VALUE = '996'\nconst EMEA_HEADQUARTER = '1'\nconst AME_HEADQUARTER = '2'\n\n;(() => {\n const $registerForm = document.querySelector('.js-agents-register-form')\n\n if (!$registerForm) return\n\n // flag to apply changes only after others selected and not in every selection\n let othersWasLastSelection = false\n\n const caseId = document.querySelector('#case_id')\n if (caseId && caseId.value !== '') {\n EMEAHeadquarterSelected()\n }\n\n function EMEAHeadquarterSelected() {\n document.querySelectorAll('.js-show-only-emea').forEach(element => {\n element.classList.remove('hidden')\n element.querySelectorAll('input, select').forEach(input => {\n input.dataset.parsleyRequired = true\n })\n })\n\n document.querySelectorAll('.js-required-only-ame').forEach(element => {\n element.querySelectorAll('input, select').forEach(input => {\n input.dataset.parsleyRequired = false\n })\n element.querySelectorAll('label').forEach(label => {\n label.classList.remove('required-mark')\n })\n })\n\n document.querySelectorAll('.js-show-only-ame').forEach(element => {\n element.classList.add('hidden')\n element.querySelectorAll('input, select').forEach(input => {\n input.dataset.parsleyRequired = false\n })\n })\n }\n\n function AMEHeadquarterSelected() {\n document.querySelectorAll('.js-show-only-emea').forEach(element => {\n element.classList.add('hidden')\n element.querySelectorAll('input, select').forEach(input => {\n input.dataset.parsleyRequired = false\n })\n })\n\n document.querySelectorAll('.js-required-only-ame').forEach(element => {\n element.querySelectorAll('input, select').forEach(input => {\n input.dataset.parsleyRequired = true\n })\n element.querySelectorAll('label').forEach(label => {\n label.classList.add('required-mark')\n })\n })\n\n document.querySelectorAll('.js-show-only-ame').forEach(element => {\n element.classList.remove('hidden')\n element.querySelectorAll('input, select').forEach(input => {\n input.dataset.parsleyRequired = true\n })\n })\n }\n\n // Updates validations based on selected country\n if ($registerForm.querySelector('.js-country-selector')) {\n $registerForm.querySelector('.js-country-selector').addEventListener('change', function (event) {\n const countrySelector = event.target\n const $locationInputs = $registerForm.querySelectorAll(\n '.js-community-selector, .js-province-selector, .js-city-selector'\n )\n const selectedHeadquarter = countrySelector.options[countrySelector.selectedIndex].dataset.headquarter\n\n if (selectedHeadquarter === EMEA_HEADQUARTER) {\n EMEAHeadquarterSelected()\n } else if (selectedHeadquarter === AME_HEADQUARTER) {\n AMEHeadquarterSelected()\n }\n\n if (countrySelector.value === COUNTRY_OTHERS_OPTION_VALUE) {\n othersWasLastSelection = true\n $locationInputs.forEach($locationInput => {\n // Community, province and city selects are not required anymore\n delete $locationInput.dataset.parsleyRequired\n // are not selectable, so they are hidden\n if ($locationInput.closest('.fz-row')) {\n $locationInput.closest('.fz-row').classList.add('is-hidden')\n }\n })\n } else if (othersWasLastSelection) {\n othersWasLastSelection = false\n $locationInputs.forEach($locationInput => {\n // Community, province and city selects are required\n $locationInput.dataset.parsleyRequired = true\n // are selectable, so restore visibility\n if ($locationInput.closest('.fz-row')) {\n $locationInput.closest('.fz-row').classList.remove('is-hidden')\n }\n })\n }\n\n $($registerForm).parsley().refresh()\n })\n }\n\n IB.forms.register_form.init()\n})()\n","import cookieCheck from '3rd-cookie-check'\nimport auth0 from 'auth0-js'\n\nimport horizons_postregister_lightbox from '../core/horizons_lightbox/horizons_postregister_lightbox.js'\nimport { readCookie, setCookie } from '../utils/cookie_manager'\nimport on from '../utils/events_delegation'\n\n// Variables to be sent to the Auth0 login view\nconst extraMetrics = [\n 'campaign_content',\n 'campaign_cp_origin',\n 'campaign_cp',\n 'campaign_medium',\n 'campaign_name',\n 'campaign_source',\n 'campaign_term',\n 'cookies_consent', //\n 'device_type',\n 'hotel_headquarter_final',\n 'hotel_headquarter_origin',\n 'page_language',\n 'page_platform',\n 'promo_is_miiberostar',\n 'promo_is_resident',\n 'user_id_horizons', //\n 'user_id',\n 'user_level',\n 'visitor_country_code',\n 'visitor_country',\n 'visitor_depth', //\n 'visitor_has_reservation',\n 'visitor_headquarter_market',\n 'visitor_id', //\n 'visitor_internal_market',\n 'visitor_is_buyer',\n 'visitor_is_logged', //\n 'visitor_is_repeater',\n 'visitor_personalized_tratement',\n 'visitor_recive_advertising',\n 'visitor_recurrence',\n 'visitor_session_count',\n 'visitor_session_id',\n 'visitor_type',\n]\n\nfunction extractProperties(obj, keys) {\n const newObject = {}\n keys.forEach(function (key) {\n if (obj.hasOwnProperty(key)) {\n newObject[key] = obj[key]\n }\n })\n return newObject\n}\n\nfunction getCurrentLocale() {\n let locale = readCookie('locale')\n if (!locale) {\n const languajeSelectorLinks = document.querySelector('ul.js-language-selector-links li.active a')\n locale = languajeSelectorLinks !== null ? languajeSelectorLinks.getAttribute('data-locale') : null\n }\n return locale\n}\n\nexport function auth0Login(register = false) {\n setCookie('prelogin_url', window.location.href)\n\n const webAuth = new auth0.WebAuth({\n domain: AUTH0_CONFIG.custom_domain,\n clientID: AUTH0_CONFIG.clientId,\n redirectUri: AUTH0_CONFIG.redirectUri,\n audience: AUTH0_CONFIG.audience,\n responseType: 'token id_token',\n scope: 'openid profile user_metadata',\n })\n\n let environment = document.querySelector('#environment')?.value\n if (document.querySelector('#environment')?.value === 'development') {\n environment = AUTH0_CONFIG.connection === 'STAGING' ? 'uat' : AUTH0_CONFIG.connection.toLowerCase()\n }\n\n const microsite = document.querySelector('#microsite')?.value\n const backUrl = window.location.href\n .replaceAll(/([\\?&])open=[^&$]+&?/g, '$1') // We replace the open=login parameters to avoid redirection loops\n .replaceAll(/[\\?&]$/g, '') // And then replace & at the end\n const locale = getCurrentLocale()\n\n webAuth.authorize({\n ui_locales: locale,\n application: 'CMS',\n back: backUrl,\n register: register ? '1' : '0',\n environment,\n microsite,\n update_metadata: `${document.location.origin}/update_app_metadata`,\n responseType: 'code',\n extraMetric: extractProperties(window.utag_data, extraMetrics),\n })\n}\n\nexport function auth0UpdateMetadata(locale, microsite, environment) {\n const csrfToken = document.querySelector('[name=csrf-token]').content\n fetch('/update_app_metadata', {\n method: 'POST',\n body: JSON.stringify({ locale, microsite, environment }),\n headers: { 'Content-type': 'application/json; charset=UTF-8', 'X-CSRF-Token': csrfToken },\n })\n .then(r => r.json())\n .catch(error => {\n console.error(`Update metadata error: ${error}`)\n })\n}\n\nfunction checkConfig() {\n return (\n AUTH0_CONFIG.domain.length > 1 &&\n AUTH0_CONFIG.clientId.length > 1 &&\n AUTH0_CONFIG.redirectUri.length > 1 &&\n AUTH0_CONFIG.audience.length > 1\n )\n}\n\nfunction thirdPartyCookieCheck() {\n const loggedMessagesCookie = readCookie('logged_messages')\n const currentUser = loggedMessagesCookie?.includes('true') ? true : false\n const confirmUser = readCookie('auth0_login') !== 'true'\n const microsite = document.querySelector('#microsite')?.value || 'iberostar'\n\n const clientAuth0 = new auth0.WebAuth({\n domain: AUTH0_CONFIG.domain,\n clientID: AUTH0_CONFIG.clientId,\n redirectUri: AUTH0_CONFIG.redirectUri,\n audience: AUTH0_CONFIG.audience,\n connection: AUTH0_CONFIG.connection,\n responseType: 'token id_token',\n scope: 'openid profile user_metadata',\n })\n\n cookieCheck({\n timeout: 3000,\n iframeSrc: 'https://viglesias.github.io/3rdCookieChecker/index.html',\n }).then(function (resultCookieCheck) {\n // Verificamos si viene de APP para no aplicar el checkSession\n const is_app = readCookie('in_app') === 'true'\n const is_simulated = readCookie('simulated_account') === 'true'\n\n if (currentUser && !is_app && !is_simulated && resultCookieCheck.supported) {\n clientAuth0.checkSession(\n {\n audience: AUTH0_CONFIG.audience,\n scope: 'read:current_user',\n },\n function (err) {\n if (err) {\n console.error(`Error checkSession auth0: ${err.description}`)\n // Forzamos el cierre de sesión (este caso pretende forzar el cierre por ejemplo si el usuario ha cerrado sesión en CRS de fomra que vayan acompasados)\n const logout_url = `${window.location.protocol}//${window.location.host}/auth/logout`\n IB.cookieManager.deleteCookies(['logged_messages'])\n window.location.href = logout_url\n }\n }\n )\n } else if (\n (!currentUser || !confirmUser) &&\n microsite !== 'star_agents' &&\n checkConfig() &&\n resultCookieCheck.supported\n ) {\n // Si no hay sesión de rails\n clientAuth0.checkSession({}, function (err, authResult) {\n if (err) {\n console.error(`Error checkSession auth0 (init_session): ${err.description}`)\n IB.cookieManager.deleteCookies(['logged_messages'])\n } else if (authResult) {\n const csrfToken = document.querySelector('[name=csrf-token]').content\n // Si no tiene currentUser, no va a mostrar el formulario de postregisto document.cookie['user_metadata'] y obtiene valores de auth0 authResult\n fetch('/sso_or_postregister', {\n method: 'POST',\n body: JSON.stringify(authResult),\n headers: { 'Content-type': 'application/json; charset=UTF-8', 'X-CSRF-Token': csrfToken },\n })\n .then(r => r.json())\n .then(data => {\n if (data.postregister_form === true) {\n if (document.getElementById('session-tab-registration') === null) {\n horizons_postregister_lightbox()\n }\n } else if (data.redirect_url !== undefined && data.redirect_url !== null) {\n location.href = data.redirect_url\n } else if (data.reload === true) {\n location.reload()\n }\n })\n .catch(error => {\n console.error(`SSO error: ${error}`)\n })\n }\n })\n }\n })\n}\n\nfunction initSSO() {\n setTimeout(() => {\n thirdPartyCookieCheck()\n }, 100)\n // Login - Añadimos la función on incluso en elementos que aún no se han cargado en la carga inicial.\n on({\n eventName: 'click',\n selector: `.js-login-link`,\n handler(e) {\n e.preventDefault()\n auth0Login(false)\n },\n })\n\n document.querySelectorAll('.js-register-link').forEach(link => {\n link.addEventListener('click', function (e) {\n e.preventDefault()\n auth0Login(true)\n })\n })\n\n // Login tras expiración del token\n if (document.querySelector('#auth0_expired_token')?.value === 'true') {\n auth0Login(false)\n }\n\n document.querySelector('#change_password')?.addEventListener('click', function (e) {\n e.preventDefault()\n const webAuth = new auth0.WebAuth({\n domain: AUTH0_CONFIG.custom_domain,\n clientID: AUTH0_CONFIG.clientId,\n redirectUri: AUTH0_CONFIG.redirectUri,\n audience: AUTH0_CONFIG.audience,\n responseType: 'token id_token',\n scope: 'openid profile user_metadata',\n })\n\n const locale = getCurrentLocale()\n const microsite = document.querySelector('#microsite')?.value || 'iberostar'\n const environment = document.querySelector('#environment')?.value\n\n auth0UpdateMetadata(locale, microsite, environment)\n\n let email = document.querySelector('.current-email').innerText\n\n if (\n document.documentElement.dataset.inMicrosite === 'star_agents' &&\n document.querySelector('.edit-user-content #agent_current_code')\n ) {\n email = document.querySelector('.edit-user-content #agent_current_code').value\n }\n // STA - StarAgents\n if (!email) email = document.querySelector('.current-email').value\n\n webAuth.changePassword(\n {\n ui_locales: locale,\n application: 'CMS',\n connection: AUTH0_CONFIG.connection,\n environment,\n microsite,\n email,\n },\n function (err) {\n var text = err ? '#change-password-error' : '#change-password-success'\n\n Modal.showHtml({\n html: document.querySelector(text).outerHTML,\n modalClass: 'multi-modal-full-container',\n onShow: () => {\n ScrollLock.on()\n },\n onClose: () => {\n ScrollLock.off()\n },\n awaitCloseAnimation: true,\n })\n }\n )\n })\n\n // Parameter added to utag_data\n window.utag_data['cookies_consent'] = readCookie('cookies_consent') ? readCookie('cookies_consent') : ''\n\n // Here we check for the open parameter and redirect to auth0 login page\n const TYPE_LIGHTBOX = IB.urlParser.getParam('open')\n const isLogged = IB?.browsing_sessions?.isUserLogged()\n\n if (!isLogged) {\n // Capture microsite value to avoid if registration goes to SSO view\n const microsite = document.querySelector('#microsite')?.value\n\n if (microsite === 'star_agents') return\n\n if (TYPE_LIGHTBOX === 'login') {\n setCookie('prelogin_url', window.location.href)\n auth0Login(false)\n } else if (TYPE_LIGHTBOX === 'register') {\n if (microsite !== 'star_agents') {\n setCookie('prelogin_url', window.location.href)\n auth0Login(true)\n }\n }\n }\n}\n\ndocument.addEventListener('DOMContentLoaded', initSSO)\n","import { getPrefix } from '../../core/utils/locale.js'\nimport { deleteCookies, readCookie } from '../../utils/cookie_manager'\nimport { getLazyData } from '../../utils/get_lazy_data'\nimport { openSessionFancybox } from '../../utils/ib_session_fancybox'\n\nimport { initializeUtagEvents } from './horizons_postregister_lightbox.analytics.js'\n\nfunction cleanSymbols(value) {\n if (/[+%&]/.test(value)) {\n value = value.replace(/[+%&]/g, ' ')\n }\n return value\n}\n\nconst openPostregistrationForm = function postregistration_form() {\n const auth0_postregister_form = readCookie('auth0_postregister_form')\n const user_metadata = readCookie('user_metadata')\n\n if (auth0_postregister_form !== 'true' && user_metadata === null) return\n\n try {\n const prelead_type = cleanSymbols(readCookie('prelead_type'))\n\n if (prelead_type && prelead_type !== null) {\n initializeUtagEvents(prelead_type)\n }\n\n const metadata = readCookie('user_metadata')\n\n // Asegúrate de que metadata no sea nulo antes de parsear\n if (metadata) {\n const metadataAsObject = JSON.parse(decodeURIComponent(metadata))\n let metadataAsUrl = ''\n for (const key in metadataAsObject) {\n metadataAsUrl += `&${key}=${metadataAsObject[key]}`\n }\n const URL_LIGHTBOX = `${getPrefix()}/ajax_contents/lightbox_for_block/?lightbox_type=registration&postregistration=true${metadataAsUrl}`\n\n getLazyData(URL_LIGHTBOX, function (fancyboxHtml) {\n openSessionFancybox(fancyboxHtml, '.register form', {}, true)\n\n // Delete cookie when user cancels post-registration window\n const cancelPostRegister = document.querySelector('.cancel-register')\n cancelPostRegister?.addEventListener('click', () => {\n deleteCookies(['prelead_type'])\n })\n })\n }\n } catch (e) {\n console.log(`Error horizons_postregister_lightbox.js: ${e}`)\n }\n}\n\nexport default openPostregistrationForm\n","import { sendUtagEvent } from '../../core/analytics/utag_events'\nimport { getCleanedString } from '../../utils/utilities'\n\nexport function initializeUtagEvents(eventLabel) {\n sendUtagEvent({\n data: {\n event_name: 'pre_lead',\n event_cat: 'lead',\n event_act: 'pre lead',\n event_lbl: getCleanedString(eventLabel),\n event_purpose: 'loyalty',\n event_structure: 'impression',\n },\n })\n}\n","import { checkloadComponentStyles } from '../../src/lazy_wrappers/lazy_block_lightbox'\n\nexport function openSessionFancybox(fancyboxHtml, formSelector, userData, onlyRegister) {\n $.fancybox.open(fancyboxHtml, {\n trapFocus: false,\n afterShow: () => {\n IB.deviceDetector.loadDeviceDataToForm()\n checkloadComponentStyles()\n },\n })\n if (formSelector === '.login form') {\n document.querySelector('[data-tab=\".js-tab-wrapper#session-tab-login\"]').classList.add('active')\n document.querySelector('[data-tab=\".js-tab-wrapper#session-tab-registration\"]').classList.remove('active')\n if (document.getElementById('session-tab-login')) {\n document.getElementById('session-tab-login').classList.add('active')\n }\n document.getElementById('session-tab-registration').classList.remove('active')\n IB.forms.initValidation($(formSelector))\n } else {\n if (document.querySelector('[data-tab=\".js-tab-wrapper#session-tab-login\"]')) {\n document.querySelector('[data-tab=\".js-tab-wrapper#session-tab-login\"]').classList.remove('active')\n }\n if (document.querySelector('[data-tab=\".js-tab-wrapper#session-tab-registration\"]')) {\n document.querySelector('[data-tab=\".js-tab-wrapper#session-tab-registration\"]').classList.add('active')\n }\n if (document.getElementById('session-tab-login')) {\n document.getElementById('session-tab-login').classList.remove('active')\n }\n if (document.getElementById('session-tab-registration')) {\n document.getElementById('session-tab-registration').classList.add('active')\n }\n IB.forms.initValidation($(formSelector))\n }\n\n if (onlyRegister) {\n if (document.getElementsByClassName('cabecera').length > 0) {\n document.getElementsByClassName('cabecera')[0].remove()\n }\n if (document.getElementById('session-tab-login')) {\n document.getElementById('session-tab-login').remove()\n }\n }\n\n IB.forms.register_form.init()\n IB.formUtagEvents.init()\n const $form = $('.js-login-form form')\n const $required_fields = $form.find('[data-parsley-required]:not([data-parsley-errors-container])')\n const parsley_config = {\n errorsContainer: pe => {\n const $err = pe.$element.closest('.fz-col').find('.fz-error-container')\n return $err\n },\n }\n\n FORMZ.required_fields.init($required_fields)\n $form.parsley(parsley_config)\n}\n"],"names":["$registerForm","document","querySelector","othersWasLastSelection","caseId","EMEAHeadquarterSelected","querySelectorAll","forEach","element","classList","remove","input","dataset","parsleyRequired","label","add","value","addEventListener","event","countrySelector","target","$locationInputs","selectedHeadquarter","options","selectedIndex","headquarter","$locationInput","closest","$","parsley","refresh","IB","forms","register_form","init","extraMetrics","extractProperties","obj","keys","newObject","key","hasOwnProperty","getCurrentLocale","locale","readCookie","languajeSelectorLinks","getAttribute","auth0Login","register","arguments","length","undefined","setCookie","window","location","href","webAuth","auth0","domain","AUTH0_CONFIG","custom_domain","clientID","clientId","redirectUri","audience","responseType","scope","environment","connection","toLowerCase","microsite","backUrl","replaceAll","authorize","ui_locales","application","back","update_metadata","origin","extraMetric","utag_data","thirdPartyCookieCheck","loggedMessagesCookie","currentUser","includes","confirmUser","clientAuth0","cookieCheck","timeout","iframeSrc","then","resultCookieCheck","is_app","is_simulated","supported","checkSession","err","console","error","description","logout_url","protocol","host","cookieManager","deleteCookies","authResult","csrfToken","content","fetch","method","body","JSON","stringify","headers","r","json","data","postregister_form","getElementById","horizons_postregister_lightbox","redirect_url","reload","catch","setTimeout","on","eventName","selector","handler","e","preventDefault","link","auth0UpdateMetadata","email","innerText","documentElement","inMicrosite","changePassword","text","Modal","showHtml","html","outerHTML","modalClass","onShow","ScrollLock","onClose","off","awaitCloseAnimation","TYPE_LIGHTBOX","urlParser","getParam","isLogged","browsing_sessions","isUserLogged","auth0_postregister_form","user_metadata","eventLabel","prelead_type","test","replace","sendUtagEvent","event_name","event_cat","event_act","event_lbl","getCleanedString","event_purpose","event_structure","metadata","metadataAsObject","parse","decodeURIComponent","metadataAsUrl","URL_LIGHTBOX","getPrefix","getLazyData","fancyboxHtml","formSelector","userData","onlyRegister","fancybox","open","trapFocus","afterShow","deviceDetector","loadDeviceDataToForm","checkloadComponentStyles","initValidation","getElementsByClassName","formUtagEvents","$form","$required_fields","find","FORMZ","required_fields","errorsContainer","pe","$element","openSessionFancybox","cancelPostRegister","log"],"sourceRoot":""}