{"version":3,"file":"TEKsystems.SitecoreXP.Location.js","names":["define","$","Common","Location","Coordinate","Init","scope","each","index","searchbox","$searchbox","Location_SearchPageUrl","attr","Location_CurrentPositionText","find","click","address","val","radius","GetCurrentPosition","LocateByAddress","on","e","which","preventDefault","text","this","rad","Radius","ParseSelected","google","maps","Geocoder","geocode","results","status","GeocoderStatus","OK","latlong","geometry","location","ReloadUrlWithLatlong","url","Parsing","IsNullOrEmpty","window","href","URL","UpdateQueryStringParameter","replace","Location_Radius","navigator","geolocation","getCurrentPosition","SuccessOnGetPosition","ErrorOnGetPosition","timeout","alert","position","coords","latitude","longitude","PositionError","code","args"],"sources":["site/TEKsystems.SitecoreXP.Location.js"],"mappings":"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","sourcesContent":["define(['jquery', \"site/TEKsystems.SitecoreXP.Common\"],\r\n function ($, Common) {\r\n\r\n\t\tvar Location = {\r\n\r\n\t\t\tCoordinate: {\r\n\r\n\t\t\t\tInit: function (scope) {\r\n\t\t\t\t\t$('.tek-location-searchbox', scope).each(function (index, searchbox) {\r\n\t\t\t\t\t\tvar $searchbox = $(searchbox);\r\n\r\n\t\t\t\t\t\tLocation.Coordinate.Location_SearchPageUrl = $searchbox.attr('data-url');\r\n\t\t\t\t\t\tLocation.Coordinate.Location_CurrentPositionText = $searchbox.attr('data-current-position-text');\r\n\r\n\t\t\t\t\t\t$searchbox.find(\".location-search\").click(function () {\r\n\t\t\t\t\t\t\tvar address = $searchbox.find('#LocationQuery').val();\r\n\t\t\t\t\t\t\tvar radius = $searchbox.find(\".dropdown-toggle\").val();\r\n\r\n\t\t\t\t\t\t\tif (Location.Coordinate.Location_CurrentPositionText == address) {\r\n\t\t\t\t\t\t\t\tLocation.Coordinate.GetCurrentPosition(radius);\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\tLocation.Coordinate.LocateByAddress(address, radius);\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t$searchbox.find(\".current-location\").click(function () {\r\n\t\t\t\t\t\t\tvar radius = $searchbox.find(\".dropdown-toggle\").val();\r\n\t\t\t\t\t\t\tLocation.Coordinate.GetCurrentPosition(radius);\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t$searchbox.find('input[type=text]').on('keyup', function (e) {\r\n\t\t\t\t\t\t\tif (e.which == 13) {\r\n\t\t\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t\t\t\tvar address = $searchbox.find('#LocationQuery').val();\r\n\t\t\t\t\t\t\t\tvar radius = $searchbox.find(\".dropdown-toggle\").val();\r\n\t\t\t\t\t\t\t\tLocation.Coordinate.LocateByAddress(address, radius);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t$searchbox.find(\".dropdown-menu li a\").click(function () {\r\n\t\t\t\t\t\t\t$searchbox.find(\".dropdown-toggle\").text($(this).text());\r\n\t\t\t\t\t\t\tvar rad = Location.Radius.ParseSelected($(this).text());\r\n\t\t\t\t\t\t\t$searchbox.find(\".dropdown-toggle\").val(rad);\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\tLocateByAddress: function (address, radius) {\r\n\t\t\t\t\tvar geocoder = new google.maps.Geocoder();\r\n\t\t\t\t\tgeocoder.geocode({ 'address': address }, function (results, status) {\r\n\t\t\t\t\t\tif (status == google.maps.GeocoderStatus.OK) {\r\n\t\t\t\t\t\t\tvar latlong = results[0].geometry.location;\r\n\t\t\t\t\t\t\tLocation.Coordinate.ReloadUrlWithLatlong(latlong, address, radius, Location.Coordinate.Location_SearchPageUrl);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse {\r\n\t\t\t\t\t\t\tvar latlong = \"NORESULTS\";\r\n\t\t\t\t\t\t\tLocation.Coordinate.ReloadUrlWithLatlong(latlong, address, radius, Location.Coordinate.Location_SearchPageUrl);\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\tReloadUrlWithLatlong: function (latlong, address, radius, url) {\r\n\r\n\t\t\t\t\tif (Common.Parsing.IsNullOrEmpty(url)) {\r\n\t\t\t\t\t\turl = window.location.href;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\turl = Common.URL.UpdateQueryStringParameter(url, 'LatLong', latlong);\r\n\t\t\t\t\turl = url.replace('(', '');\r\n\t\t\t\t\turl = url.replace(')', '');\r\n\r\n\t\t\t\t\turl = Common.URL.UpdateQueryStringParameter(url, 'Address', address);\r\n\t\t\t\t\turl = Common.URL.UpdateQueryStringParameter(url, 'Radius', radius);\r\n\r\n\t\t\t\t\twindow.location.href = url;\r\n\t\t\t\t},\r\n\r\n\t\t\t\tGetCurrentPosition: function (radius) {\r\n\t\t\t\t\tLocation.Coordinate.Location_Radius = radius;\r\n\t\t\t\t\tif (navigator.geolocation) {\r\n\t\t\t\t\t\tnavigator.geolocation.getCurrentPosition(Location.Coordinate.SuccessOnGetPosition, Location.Coordinate.ErrorOnGetPosition, { timeout: 10000 });\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\talert(\"We could not get your location data\");\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\r\n\t\t\t\tSuccessOnGetPosition: function (position) {\r\n\t\t\t\t\tvar latlong = position.coords.latitude + \",\" + position.coords.longitude;\r\n\t\t\t\t\tLocation.Coordinate.ReloadUrlWithLatlong(latlong, Location.Coordinate.Location_CurrentPositionText, Location.Coordinate.Location_Radius, Location.Coordinate.Location_SearchPageUrl);\r\n\t\t\t\t},\r\n\r\n\t\t\t\tErrorOnGetPosition: function (PositionError) {\r\n\t\t\t\t\tif (PositionError.code == 1) {\r\n\t\t\t\t\t\tvar address = \"PERMISSION_DENIED\";\r\n\t\t\t\t\t\tLocation.Coordinate.ReloadUrlWithLatlong(\"\", address, Location.Coordinate.Location_Radius, Location.Coordinate.Location_SearchPageUrl);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\r\n\t\t\tRadius: {\r\n\t\t\t\tParseSelected: function (radius) {\r\n\t\t\t\t\tradius = radius.replace(\" miles\", \"\").replace(\" Km\", \"\").replace(\" -- \", \"\");\r\n\t\t\t\t\treturn radius;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn function (args) {\r\n\t\t\tLocation.Coordinate.Init(args.scope);\r\n\t\t}\r\n\t}\r\n);\r\n\r\n"]}