function gjm_calculate_distance(e,o,t,i){var n=.017453292519943295,a=Math.cos,s=.5-a((t-e)*n)/2+a(e*n)*a(t*n)*(1-a((i-o)*n))/2;return 12742*Math.asin(Math.sqrt(s))}var GJM_Maps={},GJM_Map=function(e,o){this.id=e,this.prefix=o,this.map_element=o+"-map-"+e,this.main_container=jQuery('.gjm-enabled[data-id="'+e+'"]').closest("div.resumes, div.job_listings"),this.map=!1,this.map_options={},this.map_type="ROADMAP",this.locations=[],this.previous_locations=[],this.markers=[],this.active_info_window=!1,this.user_data=!1,this.user_position=!1,this.user_map_icon="https://maps.google.com/mapfiles/ms/icons/blue-dot.png",this.user_info_window=!1,this.grouping_type="normal",this.info_window_type="info_bubble",this.user_marker=!1,this.clusters=!1,this.spiderfiers=!1,this.bounds=!1,this.active_marker=null,this.clusters_path="https://raw.githubusercontent.com/googlemaps/js-marker-clusterer/gh-pages/images/m",this.polylines=[],this.resize_map_control=!1,this.auto_zoom_level=!1,this.zoom_position=!1,this.init=function(e){var o=this;0==o.map?jQuery("#"+o.prefix+"-map-wrapper-"+o.id).slideDown("fast",function(){o.render_map(e)}):o.update_map(e.locations,e.user_position)}};GJM_Map.prototype.render_map=function(e){var o=this;if(jQuery("#"+o.map_element).length){o.locations=e.locations,o.user_data=e.user_position,o.bounds=new google.maps.LatLngBounds,o.orgArgs=e.args,o.zoom_position=e.args.zoom_position;var t=jQuery("#"+o.map_element).data();o.clusters_path=t.clusters_path,o.grouping_type=t.group_markers,o.user_map_icon=t.user_marker,o.map_options=e.map_options,o.map_options.mapTypeId=t.map_type,o.map_options.scrollwheel=t.scrollwheel,o.map_options.maxZoom=t.max_zoom_level,o.map_options.zoomLevel=t.zoom_level,"auto"==o.map_options.zoomLevel?(o.auto_zoom_level=!0,o.map_options.zoomLevel=13):(o.auto_zoom_level=!1,o.map_options.zoomLevel=parseInt(o.map_options.zoomLevel)),o.map_options.center=new google.maps.LatLng("40.758895","-73.985131"),o.map_options.mapTypeId=google.maps.MapTypeId[o.map_options.mapTypeId],o.map=new google.maps.Map(document.getElementById(o.map_element),o.map_options),google.maps.event.addListenerOnce(o.map,"idle",function(){jQuery("#"+o.prefix+"-map-loader-"+o.id).fadeOut(1e3),o.map_options.resizeMapControl&&0!=jQuery("#"+o.prefix+"-resize-map-toggle-"+o.id).length&&(o.resize_map_control=document.getElementById(o.prefix+"-resize-map-toggle-"+o.id),o.resize_map_control.style.position="absolute",o.map.controls[google.maps.ControlPosition.TOP_RIGHT].push(o.resize_map_control),o.resize_map_control.style.display="block",jQuery("#"+o.prefix+"-resize-map-toggle-"+o.id).on("click",function(){var e=o.map.getCenter();jQuery(this).closest("."+o.prefix+"-map-wrapper").toggleClass("gjm-expanded-map"),jQuery(this).toggleClass("gjm-icon-resize-full").toggleClass("gjm-icon-resize-small"),setTimeout(function(){google.maps.event.trigger(o.map,"resize"),o.map.setCenter(e)},100)}),google.maps.event.addListener(o.map,"click",function(e){o.close_info_window()}),google.maps.event.addDomListener(o.map,"zoom_changed",function(e){o.close_info_window()})),o.clear_markers(),o.remove_user_marker(),o.generate_user_marker(),o.generate_markers()})}},GJM_Map.prototype.clear_markers=function(){for(var e=this,o=0;o'+e.user_data.iw_content+"",google.maps.event.addListener(e.user_marker,"click",function(){e.marker_click_info_bubble(e.user_marker)})))},GJM_Map.prototype.get_previous_locations=function(){var e=this;if(0==e.main_container.data("show_pagination")){if(e.main_container.find(".indeed-enabled").length){var o=[];jQuery.each(e.previous_locations,function(e,t){"undefined"!=typeof t.post_id&&(o[e]=t)}),e.previous_locations=o}0==e.previous_locations?e.previous_locations=e.locations:e.main_container.data("append_results")?(temLoc=jQuery.merge(e.locations,e.previous_locations),e.previous_locations=e.locations,e.locations=temLoc):e.previous_locations=e.locations}},GJM_Map.prototype.generate_markers=function(){var e=this;e.get_previous_locations();var o=e.locations.length;for(i=0;i=0&&1==o.found_jobs||"resumes"==e.target.className&&1==o.found_resumes)if(n.find(".indeed-enabled").length&&n.find(".wp-job-manager-attribution-row.job_listing").length){var l=!1,_=!1,m=jQuery("#"+r+"-map-"+a).length?!0:!1;if("undefined"==typeof t||0==t){l=n.find(".gjm-lat").val(),_=n.find(".gjm-lng").val();var c={lat:!1,lng:!1};"undefined"!=l&&"undefined"!=_&&(c={lat:l,lng:_,iw_content:"You are here",iw_open:!1}),t={args:{},map_options:{},locations:[],user_position:c}}var d=n.find("#"+r+"-orderby").val(),u="imperial"==n.find("#"+r+"-units").val()?"mi":"km",g=(n.find("#"+r+"-radius").val(),n.find("#search_location").val()),f=n.find(".indeed-enabled").data("distance"),h=n.find(".indeed-enabled").data("map_icon"),w=n.find(".wp-job-manager-attribution-row.job_listing"),y=w.length,v=0;w.each(function(){var e=jQuery(this),o=jQuery(this).next(".job_listing").nextUntil(".type-job_listing, .wp-job-manager-attribution-row").addBack(),n=o.length;for(i=0;i'+w+" "+u+""))),m&&(info_window_content="","jobify"==p?(info_window_content+=''+l.title+"",info_window_content+=''+a.find(".job_listing-about .job_listing-location").html()+""):(info_window_content+=''+a.find(".position h3").html()+"",info_window_content+=''+a.find(".location").html()+""),1==f&&0!=w&&(info_window_content+=''+w+" "+u+""),t.locations.push({lat:_,lng:c,map_icon:h,info_window_content:info_window_content})))}else"distance"==d&&0!=w&&o.sort(function(e,o){return+e.dataset.distance-+o.dataset.distance}).insertAfter(e),v++,v==y&&s(t)})}else s(t);else"undefined"!=typeof GJM_Maps[a]&&(GJM_Maps[a].clear_markers(),jQuery("#gjm-map-wrapper-"+a).length&&1!=jQuery("#gjm-map-"+a).data("show_without_locations")&&jQuery("#gjm-map-wrapper-"+a).slideUp());t=!1}})}),jQuery(document).ready(function(e){"undefined"!=typeof gjmMapObjects&&jQuery.each(gjmMapObjects,function(e,o){GJM_Maps[e]=new GJM_Map(e,o.args.prefix),GJM_Maps[e].render_map(o)})});