/*global $,oms,WpstateMarker,wpestate_start_filtering_ajax,control_vars,googlecode_regular_vars,wpestate_custom_search_start_filtering_ajax,ajaxcalls_vars,MarkerClusterer,map,google,OverlappingMarkerSpiderfier,gmarkers, Modernizr , InfoBox,google_map_submit_vars ,mapfunctions_vars, googlecode_home_vars,jQuery,googlecode_property_vars*/ var pin_images=mapfunctions_vars.pin_images; var images = jQuery.parseJSON(pin_images); var ipad_time=0; var infobox_id=0; var shape = { coord: [1, 1, 1, 38, 38, 59, 59 , 1], type: 'poly' }; var mcOptions; var mcluster; var clusterStyles; var pin_hover_storage; var first_time_wpestate_show_inpage_ajax_half=0; var panorama; var infoBox_sh=null; var poi_marker_array=[]; var poi_type=''; var placeCircle=''; var initialGeop=0; var heading=0; var width_browser=null; var infobox_width=null; var wraper_height=null; var info_image=null; var vertical_pan=-190; var vertical_off=150; var curent_gview_lat = jQuery('#gmap_wrapper').attr('data-cur_lat'); var curent_gview_long = jQuery('#gmap_wrapper').attr('data-cur_long'); var bounds_list; var circleLayer=''; function wpestate_agency_map_function(){ "use strict"; var curent_gview_lat = jQuery('#agency_map').attr('data-cur_lat'); var curent_gview_long = jQuery('#agency_map').attr('data-cur_long'); if(mapfunctions_vars.geolocation_type==1){ var mapOptions_intern = { flat:false, noClear:false, zoom: 15, scrollwheel: false, draggable: true, center: new google.maps.LatLng(curent_gview_lat,curent_gview_long ), streetViewControl:false, disableDefaultUI: true, mapTypeId: mapfunctions_vars.type.toLowerCase(), gestureHandling: 'cooperative' }; var map_agency= new google.maps.Map(document.getElementById('agency_map'), mapOptions_intern); if(mapfunctions_vars.map_style !==''){ var styles = JSON.parse ( mapfunctions_vars.map_style ); map_agency.setOptions({styles: styles}); } google.maps.visualRefresh = true; google.maps.event.trigger(map_agency, 'resize'); var myLatLng = new google.maps.LatLng(curent_gview_lat, curent_gview_long); var marker = new google.maps.Marker({ position: myLatLng, map: map_agency, icon: wpesate_custompin_agency(), shape: shape, title: 'we are here', zIndex: 1, infoWindowIndex : 0 }); }else{ wpresidence_agency_dev_map(curent_gview_lat,curent_gview_long,'agency_map'); } } function wpresidence_agency_dev_map(latitude,longitude,map_name){ "use strict"; var mapCenter = L.latLng(latitude, longitude ); var map = L.map( map_name,{ center: mapCenter, zoom:7, }); var tileLayer = wpresidence_open_stret_tile_details(); map.addLayer( tileLayer ); var markerCenter = L.latLng( latitude, longitude ); var markerImage = { iconUrl: images['single_pin'], iconSize: [44, 50], iconAnchor: [20, 50], popupAnchor: [1, -50] }; var markerOptions = { riseOnHover: true }; markerOptions.icon = L.icon( markerImage ); var propertyMarker = L.marker( markerCenter, markerOptions ); propertyMarker.addTo( map ); } function wpesate_custompin_agency(){ "use strict"; var image = { url: images['single_pin'], size: new google.maps.Size(59, 59), origin: new google.maps.Point(0,0), anchor: new google.maps.Point(16,59 ) }; return image; } function wpestate_map_shortcode_function(){ "use strict"; var selected_id = parseInt( jQuery('#googleMap_shortcode').attr('data-post_id'),10 ); var curent_gview_lat = jQuery('#googleMap_shortcode').attr('data-cur_lat'); var curent_gview_long = jQuery('#googleMap_shortcode').attr('data-cur_long'); var zoom; var map2=''; var gmarkers_sh = []; if (typeof googlecode_property_vars === 'undefined') { zoom=5; heading=0; if(jQuery('#modal_property_maps').length>0){ zoom = jQuery('#googleMap_shortcode').attr('data-prop-zoom'); heading=0; }else{ zoom=5; heading=0; } }else{ zoom = googlecode_property_vars.page_custom_zoom; heading = parseInt(googlecode_property_vars.camera_angle); } var i = 1; var id = selected_id; var lat = curent_gview_lat; var lng = curent_gview_long; var title = decodeURIComponent ( jQuery('#googleMap_shortcode').attr('data-title') ); var pin = jQuery('#googleMap_shortcode').attr('data-pin'); var counter = 1; var image = decodeURIComponent ( jQuery('#googleMap_shortcode').attr('data-thumb' )); var price = decodeURIComponent ( jQuery('#googleMap_shortcode').attr('data-price' )); var single_first_type = decodeURIComponent ( jQuery('#googleMap_shortcode').attr('data-single-first-type') ); var single_first_action = decodeURIComponent ( jQuery('#googleMap_shortcode').attr('data-single-first-action') ); var link = decodeURIComponent ( jQuery('#googleMap_shortcode').attr('data-prop_url' )); var city = ''; var area = ''; var rooms = decodeURIComponent ( jQuery('#googleMap_shortcode').attr('data-rooms')) ; var baths = decodeURIComponent ( jQuery('#googleMap_shortcode').attr('data-bathrooms')) ; var size = decodeURIComponent ( jQuery('#googleMap_shortcode').attr('data-size') ); var single_first_type_name = decodeURIComponent ( jQuery('#googleMap_shortcode').attr('data-single-first-type') ); var single_first_action_name = decodeURIComponent ( jQuery('#googleMap_shortcode').attr('data-single-first-action') ); var agent_id = '' ; var county_state = '' ; var price_pin = decodeURIComponent ( jQuery('#googleMap_shortcode').attr('data-pin_price' )); var cleanprice = decodeURIComponent ( jQuery('#googleMap_shortcode').attr('data-clean_price' )); if (wp_estate_kind_of_map==2){ var mapCenter = L.latLng( curent_gview_lat,curent_gview_long ); map2 = L.map( 'googleMap_shortcode',{ center: mapCenter, zoom: zoom }).on('load', function(e) { jQuery('#gmap-loading').remove(); }); wpresidence_leaflet_initialize_map_common(map2); wpestate_createMarker_sh_leaflet (price_pin,infoBox_sh,gmarkers_sh,map2,county_state, size, i,id,lat,lng,pin,title,counter,image,price,single_first_type,single_first_action,link,city,area,rooms,baths,cleanprice,single_first_type_name, single_first_action_name ); }else{ if( jQuery('#googleMap_shortcode').length > 0){ var mapOptions_intern = { flat:false, noClear:false, zoom: parseInt(zoom), scrollwheel: false, draggable: true, center: new google.maps.LatLng(curent_gview_lat,curent_gview_long ), streetViewControl:false, disableDefaultUI: true, mapTypeId: mapfunctions_vars.type.toLowerCase(), gestureHandling: 'cooperative' }; map2= new google.maps.Map(document.getElementById('googleMap_shortcode'), mapOptions_intern); google.maps.visualRefresh = true; google.maps.event.trigger(map2, 'resize'); width_browser = jQuery(window).width(); infobox_width=700; vertical_pan=-215; if (width_browser<900){ infobox_width=500; } if (width_browser<600){ infobox_width=400; } if (width_browser<400){ infobox_width=200; } var boxText = document.createElement("div"); var myOptions = { content: boxText, disableAutoPan: true, maxWidth: infobox_width, boxClass:"mybox", zIndex: null, closeBoxMargin: "-13px 0px 0px 0px", closeBoxURL: "", infoBoxClearance: new google.maps.Size(1, 1), isHidden: false, pane: "floatPane", enableEventPropagation: true }; infoBox_sh = new InfoBox(myOptions); if(mapfunctions_vars.map_style !==''){ var styles = JSON.parse ( mapfunctions_vars.map_style ); map2.setOptions({styles: styles}); } wpestate_createMarker_sh (price_pin,infoBox_sh,gmarkers_sh,map2,county_state, size, i,id,lat,lng,pin,title,counter,image,price,single_first_type,single_first_action,link,city,area,rooms,baths,cleanprice,single_first_type_name, single_first_action_name ); var viewPlace = new google.maps.LatLng(curent_gview_lat,curent_gview_long); if(typeof (panorama_sh)==='undefined'){ var panorama_sh; } panorama_sh = map2.getStreetView(); panorama_sh.setPosition(viewPlace); panorama_sh.setPov(/** @type {google.maps.StreetViewPov} */({ heading: heading, pitch: 0 })); jQuery('#slider_enable_street_sh').on( 'click', function() { var cur_lat = jQuery('#googleMap_shortcode').attr('data-cur_lat'); var cur_long = jQuery('#googleMap_shortcode').attr('data-cur_long'); var myLatLng = new google.maps.LatLng(cur_lat,cur_long); panorama_sh.setPosition(myLatLng); panorama_sh.setVisible(true); jQuery('#gmapzoomminus_sh,#gmapzoomplus_sh,#slider_enable_street_sh').hide(); }); google.maps.event.addListener(panorama_sh, "closeclick", function() { jQuery('#gmapzoomminus_sh,#gmapzoomplus_sh,#slider_enable_street_sh').show(); }); if( mapfunctions_vars.hidden_map ){ google.maps.event.trigger(gmarkers_sh[0], 'click'); setTimeout(function(){ google.maps.event.trigger(map2, "resize"); map2.setCenter(gmarkers_sh[0].position); }, 300); } wpestate_initialize_poi(map2,2); } } if( document.getElementById('gmapzoomplus_sh') ){ jQuery('#gmapzoomplus_sh').on('click',function(){ "use strict"; var current= parseInt( map2.getZoom(),10); current++; if(current>20){ current=20; } map2.setZoom(current); }); } if( document.getElementById('gmapzoomminus_sh') ){ jQuery('#gmapzoomminus_sh').on('click',function(){ "use strict"; var current= parseInt( map2.getZoom(),10); current--; if(current<0){ current=0; } map2.setZoom(current); }); } if (wp_estate_kind_of_map==2){ setTimeout(function(){ map2.invalidateSize(); }, 1000); }else{ setTimeout(function(){ google.maps.event.trigger(map2, "resize"); }, 1000); } jQuery('.shtabmap,.shacctab').on( 'click', function(event) { if (wp_estate_kind_of_map==2){ setTimeout(function(){ map2.invalidateSize(); }, 100); }else{ setTimeout(function(){ google.maps.event.trigger(map2, "resize"); }, 100); } }); } function wpestate_createMarker_sh_leaflet (pin_price,infoBox_sh,gmarkers_sh,map2,county_state, size, i,id,lat,lng,pin,title,counter,image,price,single_first_type,single_first_action,link,city,area,rooms,baths,cleanprice,single_first_type_name, single_first_action_name ){ "use strict"; var infoboxWrapper = document.createElement( "div" ); infoboxWrapper.className = 'leafinfobox-wrapper'; var infobox = ""; var poss=0; var infobox_class=" price_infobox "; if( mapfunctions_vars.useprice === 'yes' ){ infobox_class =' openstreet_map_price_infobox '; } var info_image=''; if (image === '') { info_image = mapfunctions_vars.path + '/idxdefault.jpg'; } else { info_image = image; } var category = decodeURIComponent(single_first_type.replace(/-/g, ' ')); var action = decodeURIComponent(single_first_action.replace(/-/g, ' ')); var category_name = decodeURIComponent(single_first_type_name.replace(/-/g, ' ')); var action_name = decodeURIComponent(single_first_action_name.replace(/-/g, ' ')); var in_type = mapfunctions_vars.in_text; if (category === '' || action === '') { in_type = " "; } in_type = " / "; var infoguest,inforooms; var infobaths; if(baths!='' && baths!=0 ){ infobaths =''+baths+' '+mapfunctions_vars.ba+''; }else{ infobaths =''; } var inforooms; if(rooms!='' && rooms!=0 ){ inforooms=''+rooms+' '+mapfunctions_vars.bd+''; }else{ inforooms=''; } var infosize; if(size!=''){ infosize =''+size+''; }else{ infosize=''; } var title= title.substr(0, 30); if(title.length > 30){ title=title+"..."; } infobox += wpestate_generate_infobox_leaflet(infobox_class,title,link,info_image,price,cleanprice,infosize,infobaths,inforooms); var markerOptions = { riseOnHover: true }; var markerCenter = L.latLng( lat, lng ); var propertyMarker = ''; if( !mapfunctions_vars.hidden_map ){ propertyMarker = L.circle(markerCenter, { color: '#0073e1', fillColor: '#0073e1', fillOpacity: 0.4, strokeWeight: 0.2, radius: 120 }); }else{ if( mapfunctions_vars.useprice === 'yes' ){ var price_pin_class= 'wpestate_marker openstreet_price_marker '+wpestate_makeSafeForCSS(single_first_type_name.trim() )+' '+wpestate_makeSafeForCSS(single_first_action_name.trim()); var pin_price_marker = '
'; if (typeof(price) !== 'undefined') { if( mapfunctions_vars.use_price_pins_full_price==='no'){ pin_price_marker +='
'+pin_price+'
'; }else{ pin_price_marker +='
'+price+'
'; } } pin_price_marker += '
'; var myIcon = L.divIcon({ className:'someclass', iconSize: new L.Point(0, 0), html: pin_price_marker }); propertyMarker = L.marker( markerCenter, {icon: myIcon} ); }else{ var markerImage = { iconUrl: wprentals_custompin_leaflet(pin), iconSize: [44, 50], iconAnchor: [20, 50], popupAnchor: [1, -50] }; markerOptions.icon = L.icon( markerImage ); propertyMarker = L.marker( markerCenter, markerOptions ); } } propertyMarker.idul = id; propertyMarker.pin = pin; propertyMarker.addTo( map2 ); gmarkers_sh.push(propertyMarker); if (typeof (bounds_list) !== "undefined") { bounds_list.extend(propertyMarker.getLatLng()); }else{ bounds_list = L.latLngBounds( propertyMarker.getLatLng(),propertyMarker.getLatLng() ); } infoboxWrapper.innerHTML = infobox; propertyMarker.bindPopup( infobox ); if( mapfunctions_vars.hidden_map ){ propertyMarker.fire('click').openPopup(); } } function wpestate_createMarker_sh (pin_price,infoBox_sh,gmarkers_sh,map2,county_state, size, i,id,lat,lng,pin,title,counter,image,price,single_first_type,single_first_action,link,city,area,rooms,baths,cleanprice,single_first_type_name, single_first_action_name ){ "use strict"; var new_title = ''; var myLatLng = new google.maps.LatLng(lat,lng); var poss=0; var infobox_class=" price_infobox "; if(mapfunctions_vars.useprice === 'yes' && mapfunctions_vars.hidden_map){ myLatLng = new google.maps.LatLng(lat,lng); var Titlex = jQuery('