{"version":3,"sources":["location-finder.js"],"names":["document","addEventListener","event","target","readyState","$","querySelector","getCookie","name","parts","cookie","split","length","pop","shift","fetchLocation","ajaxurl","ajaxData","ajax","type","url","headers","Pragma","cache","data","success","res","result","JSON","parse","code","hasOwnProperty","localStorage","setItem","market_id","each","this","siblings","addClass","hide","removeClass","find","attr","html","on","e","preventDefault","stopPropagation","$lfFinder","setTimeout","form","$button","parent","search","val","match","indexOf","modal","hasClass","async","action","area","honeypot","nonce","wpml_lang","method","dataType","beforeSend","response","errors","location_window_reference","window","open","location","reload","end","error","xhr","ajaxOptions","thrownError","$locationFound","parents","show","next","css","body","$body","off","getUrlParameter","sParam","i","sURLVariables","decodeURIComponent","substring","sParameterName","undefined","franchise_id","market_url","getItem","market_target","market_name","checkIfLocationFound","jQuery"],"mappings":"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","file":"../location-finder.js","sourcesContent":["document.addEventListener(\"readystatechange\", (event) => {\r\n if (event.target.readyState === \"complete\") {\r\n\t\t(function($) {\r\n\r\n\t\t\tif ( document.querySelector('.page-template-tempate-landing-page-august-2017') ) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tconst getCookie = (name) => {\r\n\r\n\t\t\t\tconst value = '; ' + document.cookie;\r\n\t\t\t\tconst parts = value.split('; ' + name + '=');\r\n\r\n\t\t\t\tif ( parts.length == 2 ) {\r\n\t\t\t\t\treturn parts.pop().split(';').shift();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tconst fetchLocation = (ajaxurl, ajaxData) => {\r\n\t\t\t\t$.ajax({\r\n\t\t\t\t\ttype : 'GET',\r\n\t\t\t\t\turl : ajaxurl,\r\n\t\t\t\t\theaders: {\r\n\t\t\t\t\t\t'Cache-control': 'max-age=86400, public',\r\n\t\t\t\t\t\t'Pragma' : 'cache'\r\n\t\t\t\t\t},\r\n\t\t\t\t\tcache : true,\r\n\t\t\t\t\tdata : ajaxData,\r\n\t\t\t\t\tsuccess: function(res) {\r\n\r\n\t\t\t\t\t\tconst result = JSON.parse(res);\r\n\r\n\t\t\t\t\t\tif ( result.code == 200 ) {\r\n\t\t\t\t\t\t\tif( ajaxData.hasOwnProperty('market_id') ){\r\n\t\t\t\t\t\t\t\tlocalStorage.setItem('cc-market-url' + ajaxData.market_id, result.url);\r\n\t\t\t\t\t\t\t\tlocalStorage.setItem('cc-market-target' + ajaxData.market_id, result.target);\r\n\t\t\t\t\t\t\t\tlocalStorage.setItem('cc-market-name' + ajaxData.market_id, result.name);\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t$('.location-found').each(function() {\r\n\r\n\t\t\t\t\t\t\t\t$(this)\r\n\t\t\t\t\t\t\t\t\t.siblings()\r\n\t\t\t\t\t\t\t\t\t.addClass('inactive')\r\n\t\t\t\t\t\t\t\t\t.hide();\r\n\r\n\t\t\t\t\t\t\t\t$(this)\r\n\t\t\t\t\t\t\t\t\t.removeClass('hide')\r\n\t\t\t\t\t\t\t\t\t.find('.market-name')\r\n\t\t\t\t\t\t\t\t\t.attr('href', result.url)\r\n\t\t\t\t\t\t\t\t\t.attr('target', result.target)\r\n\t\t\t\t\t\t\t\t\t.html(result.name);\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\t/* check if a location is set */\r\n\t\t\tconst checkIfLocationFound = () => {\r\n\r\n\t\t\t\tconst ajaxData = {\r\n\t\t\t\t\taction: 'calclosets_location_found'\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst getUrlParameter = (sParam) => {\r\n\r\n\t\t\t\t\tconst sPageURL = decodeURIComponent(window.location.search.substring(1)),\r\n\t\t\t\t\t\tsURLVariables = sPageURL.split('&');\r\n\r\n\t\t\t\t\tlet\ti;\r\n\r\n\t\t\t\t\tfor ( i = 0; i < sURLVariables.length; i++ ) {\r\n\r\n\t\t\t\t\t\tconst sParameterName = sURLVariables[i].split('=');\r\n\r\n\t\t\t\t\t\tif ( sParameterName[0] === sParam ) {\r\n\t\t\t\t\t\t\treturn sParameterName[1] === undefined ? true : sParameterName[1];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\r\n\t\t\t\tif ( getUrlParameter('CC1') ) {\r\n\t\t\t\t\tajaxData.franchise_id = getUrlParameter('CC1');\r\n\r\n\t\t\t\t}\r\n\t\t\t\telse if ( getCookie('STYXKEY_lf_market') ) {\r\n\t\t\t\t\tajaxData.market_id = getCookie('STYXKEY_lf_market');\r\n\r\n\t\t\t\t}\r\n\t\t\t\t//Check for local storage for this market\r\n\t\t\t\tif (ajaxData.hasOwnProperty('market_id') ){\r\n\t\t\t\t\tconst market_url = localStorage.getItem('cc-market-url' + ajaxData.market_id);\r\n\t\t\t\t\tconst market_target = localStorage.getItem('cc-market-target' + ajaxData.market_id);\r\n\t\t\t\t\tconst market_name = localStorage.getItem('cc-market-name' + ajaxData.market_id);\r\n\t\t\t\t\tif( market_url && market_target && market_name){\r\n\t\t\t\t\t\t$('.location-found').each(function() {\r\n\r\n\t\t\t\t\t\t\t$(this)\r\n\t\t\t\t\t\t\t\t.siblings()\r\n\t\t\t\t\t\t\t\t.addClass('inactive')\r\n\t\t\t\t\t\t\t\t.hide();\r\n\t\r\n\t\t\t\t\t\t\t$(this)\r\n\t\t\t\t\t\t\t\t.removeClass('hide')\r\n\t\t\t\t\t\t\t\t.find('.market-name')\r\n\t\t\t\t\t\t\t\t.attr('href', market_url)\r\n\t\t\t\t\t\t\t\t.attr('target', market_target)\r\n\t\t\t\t\t\t\t\t.html(market_name);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}else {\r\n\t\t\t\t\t\tfetchLocation(ajaxurl, ajaxData);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t}else{\r\n\t\t\t\t\tfetchLocation(ajaxurl, ajaxData);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t$('.lf-finder').on('click', function(e) {\r\n\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\te.stopPropagation();\r\n\r\n\t\t\t\tconst $lfFinder = $(this);\r\n\r\n\t\t\t\t$lfFinder.attr('disabled', true);\r\n\r\n\t\t\t\tsetTimeout(function() {\r\n\r\n\t\t\t\t\tconst $button = $lfFinder.parent().parent();\r\n\t\t\t\t\tlet search = $button.find('[name=\"lf\"]').val();\r\n\r\n\t\t\t\t\tif ( search === '' || search === 'false' ) {\r\n\t\t\t\t\t\tsearch = $button.find('.autocomplete').val();\r\n\t\t\t\t\t\t$button.find('[name=\"lf\"]').val(search);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tconst matches = search.match(/\\d+/g);\r\n\r\n\t\t\t\t\tif ( matches == null ) {\r\n\r\n\t\t\t\t\t\tif ( search.indexOf(',') < 0 ) {\r\n\r\n\t\t\t\t\t\t\t$('.not-valid-modal').modal();\r\n\t\t\t\t\t\t\t$lfFinder.attr('disabled', false);\r\n\r\n\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tlet form;\r\n\r\n\t\t\t\t\tif ( $button.hasClass('design-consultant-form') ) {\r\n\t\t\t\t\t\tform = 'our-designers';\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tform = 'default';\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// prevent from pinging the server if the honeypot field is not empty\r\n\t\t\t\t\tif ( $button.find('.hidden-field').val() !== '' ||\r\n\t\t\t\t\t$button.find('[name=\"lf\"]').val() == '' ) {\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t$.ajax({\r\n\t\t\t\t\t\turl : ajaxurl,\r\n\t\t\t\t\t\tasync : false,\r\n\t\t\t\t\t\tdata : {\r\n\t\t\t\t\t\t\taction : 'location-finder',\r\n\t\t\t\t\t\t\tsearch : $button.find('[name=\"lf\"]').val(),\r\n\t\t\t\t\t\t\tarea\t : $button.find('.selected').data('attr'),\r\n\t\t\t\t\t\t\tform\t : form,\r\n\t\t\t\t\t\t\thoneypot : $button.find('.hidden-field').val(),\r\n\t\t\t\t\t\t\t// send the nonce along with the request\r\n\t\t\t\t\t\t\tnonce : $button.find('.nonce').val(),\r\n\t\t\t\t\t\t\twpml_lang: wpml_lang\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tmethod : 'POST',\r\n\t\t\t\t\t\tdataType : 'json',\r\n\t\t\t\t\t\tbeforeSend: function() {\r\n\t\t\t\t\t\t\t$lfFinder.attr('disabled', true);\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tsuccess : function(response) {\r\n\r\n\t\t\t\t\t\t\t$('.mobile-header .mobile-locate-me a').removeClass('active');\r\n\r\n\t\t\t\t\t\t\tif (response.errors == '') {\r\n\r\n\t\t\t\t\t\t\t\tlet location_window_reference = window.open(response.url, response.target);\r\n\r\n\t\t\t\t\t\t\t\tif (response.target !== '_self') {\r\n\t\t\t\t\t\t\t\t\tif (location_window_reference == null) {\r\n\t\t\t\t\t\t\t\t\t\t//console.log('window.open failed. showing modal');\r\n\r\n\t\t\t\t\t\t\t\t\t\t$('.location-found-modal')\r\n\t\t\t\t\t\t\t\t\t\t\t.find('.location-found-link')\r\n\t\t\t\t\t\t\t\t\t\t\t.attr('href', response.url)\r\n\t\t\t\t\t\t\t\t\t\t\t.attr('target', response.target)\r\n\t\t\t\t\t\t\t\t\t\t\t.on('click', function(e) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t// Page reload required to properly show location in case user returns to primary website\r\n\t\t\t\t\t\t\t\t\t\t\t\twindow.setTimeout(function(){\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t//console.log('reloading page - modal link clicked');\r\n\t\t\t\t\t\t\t\t\t\t\t\t\twindow.location.reload();\r\n\t\t\t\t\t\t\t\t\t\t\t\t},1000);\r\n\t\t\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t\t\t\t.end()\r\n\t\t\t\t\t\t\t\t\t\t\t.modal()\r\n\t\t\t\t\t\t\t\t\t\t;\r\n\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\t// Page reload required to properly show location in case user returns to primary website\r\n\t\t\t\t\t\t\t\t\t\tif ( response.target === '_blank' ) {\r\n\t\t\t\t\t\t\t\t\t\t\twindow.setTimeout(function(){\r\n\t\t\t\t\t\t\t\t\t\t\t\t//console.log('reloading page - external tab opened');\r\n\t\t\t\t\t\t\t\t\t\t\t\twindow.location.reload();\r\n\t\t\t\t\t\t\t\t\t\t\t},1000);\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t$lfFinder.attr('disabled', false);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\telse {\r\n\t\t\t\t\t\t\t\t$lfFinder.attr('disabled', false);\r\n\t\t\t\t\t\t\t\t$('.not-found-modal').modal();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\terror: function (xhr, ajaxOptions, thrownError) {\r\n\t\t\t\t\t\t\tconsole.log(xhr.status);\r\n\t\t\t\t\t\t\tconsole.log(thrownError);\r\n\t\t\t\t\t\t\t$lfFinder.attr('disabled', false);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t}, 500);\r\n\r\n\t\t\t\treturn false;\r\n\t\t\t});\r\n\r\n\t\t\t$('body').on('click', '.lf-change', function(e) {\r\n\r\n\t\t\t\te.stopPropagation();\r\n\r\n\t\t\t\tlet $locationFound;\r\n\r\n\t\t\t\tif ( $(this).parent().hasClass('market__links') ) {\r\n\t\t\t\t\t$locationFound = $(this).parents('.location-found');\r\n\t\t\t\t}\r\n\t\t\t\telse if ( $(this).parent().parent().hasClass('showroom-cookie') ) {\r\n\t\t\t\t\t$locationFound = $(this).parent().parent();\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\t$locationFound = $(this).parent();\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$locationFound.hide();\r\n\r\n\t\t\t\t$(this).parent('div').find('.inactive').show();\r\n\r\n\t\t\t\tif ( $locationFound.hasClass('showroom-cookie') ) {\r\n\t\t\t\t\t$locationFound.next().css('display', 'table-cell');\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\t$locationFound.next().show();\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$(document.body).on('click.location-finder', function() {\r\n\r\n\t\t\t\t\tconst $body = $(this);\r\n\r\n\t\t\t\t\t$locationFound.show();\r\n\r\n\t\t\t\t\t$('.lf-form.inactive').hide();\r\n\t\t\t\t\t$('.inactive.mobile-form').hide();\r\n\r\n\t\t\t\t\t$body.off('click.location-finder');\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\t$('.lf-form').on('click', (e) => {\r\n\t\t\t\te.stopPropagation();\r\n\t\t\t});\r\n\r\n\t\t\tcheckIfLocationFound();\r\n\r\n\t\t})(jQuery);\r\n\t}\r\n});\r\n"]}