Version Description
- Added: dismissible notices
- Fixed: incorrect sorting for mashups with 'orderby' clause in query
- Fixed: incorrect CSS in settings screen
- Changed: use gzip only for mashups, not for maps, added checks for PHP libraries
Download this release
Release Info
Developer | chrisvrichardson |
Plugin | MapPress Easy Google Maps |
Version | 2.48.3 |
Comparing to | |
See all releases |
Code changes from version 2.48.2 to 2.48.3
- css/mappress_admin.css +4 -0
- js/mappress.min.js +1 -1
- js/mappress_settings.min.js +1 -1
- languages/mappress-google-maps-for-wordpress.pot +37 -41
- languages/texts.php +2 -3
- mappress.php +47 -19
- mappress_settings.php +4 -12
- readme.txt +7 -1
css/mappress_admin.css
CHANGED
@@ -154,6 +154,10 @@ tr:hover > td > .mapp-m-actions {
|
|
154 |
max-width: 600px;
|
155 |
}
|
156 |
|
|
|
|
|
|
|
|
|
157 |
.mapp-settings-screen label {
|
158 |
margin-right: 10px;
|
159 |
white-space: nowrap;
|
154 |
max-width: 600px;
|
155 |
}
|
156 |
|
157 |
+
.mapp-settings-screen input.button {
|
158 |
+
vertical-align: middle !important;
|
159 |
+
}
|
160 |
+
|
161 |
.mapp-settings-screen label {
|
162 |
margin-right: 10px;
|
163 |
white-space: nowrap;
|
js/mappress.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
var mapp=window.mapp||{};+function(n){mapp.Map=function(t,r){function a(n,t){n=n.split(" ");for(var i=0;i<n.length;i++)google.maps.event.addListener(u,n[i],t)}function y(){var i,t;n("[data-mapp-type]",f.menu).removeClass("mapp-active");n('[data-mapp-type="'+u.getMapTypeId()+'"]',f.menu).addClass("mapp-active");for(layer in s)i=!!s[layer].getMap(),n('[data-mapp-layer="'+layer+'"]',f.menu).toggleClass("mapp-active",i);t=!!(e.center&&e.zoom);n('[data-mapp-action="viewport-set"]',f.menu).toggle(!t);n('[data-mapp-action="viewport-reset"]',f.menu).toggle(t)}function p(){var n=mappl10n.options.styles,i=mappl10n.options.style,r=["roadmap","satellite","terrain","hybrid"],t;if(i&&typeof n[i]!="undefined"&&u.setOptions({styles:n[i]}),e.editable){for(t in n)u.mapTypes.set(t,new google.maps.StyledMapType(n[t],{name:t})),r.push(t);u.setOptions({mapTypeControlOptions:{mapTypeIds:r,position:google.maps.ControlPosition.TOP_RIGHT,style:google.maps.MapTypeControlStyle.DROPDOWN_MENU}})}else typeof n[e.mapTypeId]!="undefined"&&u.setOptions({styles:n[e.mapTypeId]})}function w(){f.controls.children("[data-mapp-position]").each(function(){var t=n(this).attr("data-mapp-position"),i;t=t?google.maps.ControlPosition[t]:google.maps.ControlPosition.TOP_RIGHT;i=n(this);i.get(0).index=0;u.controls[t].push(i.get(0))})}function b(){var f,i,t,r;for(s={traffic:new google.maps.TrafficLayer,bicycling:new google.maps.BicyclingLayer,transit:new google.maps.TransitLayer},f=n.makeArray(e.layers),i=0;i<f.length;i++)t=n.trim(f[i]),r=t.split(".").pop(),s[t]?l(t):r=="kml"||r=="kmz"?s[t]=new google.maps.KmlLayer({map:u,preserveViewport:!0,url:t}):r=="json"&&(s[t]=new google.maps.Data({map:u}).loadGeoJson(t))}function l(t,i){n.each(["traffic","bicycling","transit"],function(n,t){s[t].setMap(null)});t&&(i=typeof i=="undefined"?s[t].getMap()==null:i,s[t].setMap(i?u:null))}function v(t,i){var r=n.inArray(t,["roadmap","satellite","terrain","hybrid"])!=-1;i=typeof i!="undefined"?i:!(u.getMapTypeId()==t);t=e.editable?i&&(r||typeof mappl10n.options.styles[t]!="undefined")?t:"roadmap":r?t:"roadmap";u.setMapTypeId(t)}this.defaults={center:null,editable:null,height:null,initialOpenDirections:null,initialOpenInfo:null,layers:null,mapid:null,mapTypeId:null,metaKey:null,minZoom:null,name:null,pois:null,postid:null,query:null,title:null,width:null,zoom:null};this.iw=null;this.places=null;this.poi=null;this.settings=r?r:{};var e=this,h=null,f={},u=null,s={},o=[],c;_.extend(this,this.defaults,_.pick(t,_.keys(this.defaults)),_.pick(this.settings,_.keys(this.defaults)));this.display=function(){if(f.layout=n("#"+this.name),n.each(["canvas","controls","directions","filters","list","menu","search"],function(t,i){f[i]=n(".mapp-"+i,f.layout)}),!f.canvas.length)return mapp.lib.log("MapPress: Missing map name or container for map: "+this.name);u=new google.maps.Map(f.canvas.get(0),{mapTypeId:"roadmap",zoom:1});var t={backgroundColor:"transparent",clickableIcons:!1,fullscreenControl:!1,keyboardShortcuts:!1,mapTypeControl:!0,mapTypeControlOptions:{position:google.maps.ControlPosition.TOP_RIGHT,style:google.maps.MapTypeControlStyle.DROPDOWN_MENU},minZoom:this.minZoom?parseInt(this.minZoom):0,scaleControl:!0,scrollwheel:!1,streetViewControl:!this.editable&&!this.query};u.setOptions(t);p();w();b();v(this.mapTypeId,!0);this.toggleView("mini",f.layout.width()<450);this.places=new mapp.Places(n(".mapp-places",f.search),{map:e});e.editable||google.maps.event.addListener(this.places,"search",function(n){e.search(n)});f.layout.on("click","[data-mapp-action]",function(t){var i=n(this).attr("data-mapp-action");t.preventDefault();e.action(i,n(this).attr("data-mapp-"+i),n(this))});f.filters.on("change",function(){e.ajaxQuery(u.getBounds())});a("click drag",function(){e.closeInfoWindow()});n("body").on("click",function(t){var i=n(t.target),r=i.attr("data-mapp-action");i==f.filters||r=="filters-toggle"||i.closest(f.filters).length||e.toggleView("filters",!1);i==f.menu||r=="menu-toggle"||i.closest(f.menu).length||e.toggleView("menu",!1)});n(window).resize(_.debounce(function(){e.resize()},500));this.iw=mappl10n.options.iwType=="ib"||this.editable?new mapp.InfoBox(this):new google.maps.InfoWindow;google.maps.event.addListenerOnce(u,"idle",function(){var n=o.length?o[0]:null;e.initialOpenDirections?e.openDirections(null,n):n&&e.initialOpenInfo&&n.open()});mappl10n.options.search&&google.maps.event.addListenerOnce(u,"tilesloaded",function(){google.maps.event.addListenerOnce(u,"idle",function(){a("dragend zoom_changed",function(){e.ajaxQuery(u.getBounds())})})});this.setPois(this.pois);typeof this.center=="string"?this.places.parse(this.center):this.query?this.ajaxQuery():this.recenter()};this.load=function(n){_.extend(this,this.defaults,n,this.settings);v(this.mapTypeId,!0);this.toggleView("menu",!1);l();this.closeInfoWindow();this.setPois(this.pois);this.places.set("");google.maps.event.trigger(this,"load")};this.action=function(t,i,r){switch(t){case"center":this.toggleView("menu",!1);this.closeInfoWindow();this.recenter();break;case"dir":this.openDirections(null,this.poi);break;case"dir-from":this.openDirections(this.poi,null);break;case"filters-reset":f.filters.find(":input").each(function(){this.type=="checkbox"||this.type=="radio"?n(this).prop("checked",!1):n(this).val("")});this.ajaxQuery(u.getBounds());break;case"filters-toggle":this.toggleView("filters");break;case"geolocate":this.places.geolocate(function(n){e.search(n)});break;case"layer":l(i);this.toggleView("menu",!1);break;case"menu-toggle":this.toggleView("menu");break;case"open":var s=r.attr("data-mapp-poi");this.openInfoWindow(o[s]);break;case"show":f.layout.show();this.resize();this.initCenter();break;case"view-map":this.toggleView("list",!1);break;case"view-list":this.toggleView("list",!0);break;case"viewport-set":this.center=u.getCenter().toJSON();this.zoom=u.getZoom();this.toggleView("menu",!1);break;case"viewport-reset":this.center=null;this.zoom=null;this.toggleView("menu",!1);this.recenter();break;default:return!0}};this.search=function(n){var t=n.geometry.location?n.geometry.location:null,i=n.geometry.viewport?n.geometry.viewport:null,r=new google.maps.Circle({center:t,radius:mappl10n.options.radius*1e3}),f=i?i.union(r.getBounds()):r.getBounds();u.fitBounds(f,0);u.setCenter(t);this.query&&this.ajaxQuery(f)};this.dialog=function(t,i){t?(f.canvas.append("<div class='mapp-dialog'>"+t+"<\/div>"),i&&(clearTimeout(this.dialog.fade),this.dialog.fade=setTimeout(function(){e.dialog(null)},3e3))):n(".mapp-dialog",f.canvas).remove()};this.closeInfoWindow=function(){this.iw.close();this.poiSelect(null)};this.openDirections=function(n,t){var i=n?n.getAddress():"",r=t?t.getAddress():"";h||(h=new mapp.Directions(f.directions,e));h.open(i,r)};this.poiSelect=function(t){if(n("[data-mapp-poi]",f.list).removeClass("mapp-selected"),t){var r=n.inArray(t,o),i=n('[data-mapp-poi="'+r+'"]',f.list);i.addClass("mapp-selected");mapp.lib.scrollTo(f.list,i);t.setZIndex(++c)}this.poi=t};this.getMap=function(){return u};this.renderList=function(){this.editable&&(f.list.html(mapp.lib.template("poi-list",{pois:o})),google.maps.event.trigger(this,"render-list"))};this.getPois=function(){return o};this.addPoi=function(n){o.unshift(n);n.setMap(this);e.renderList();this.poiSelect(n)};this.removePoi=function(t){var i=n.inArray(t,o);i!=-1&&(o[i].setMap(null),o.splice(i,1),e.renderList())};this.resetPois=function(){for(i=0;i<o.length;i++)o[i].setMap(null);o=[];c=google.maps.Marker.MAX_ZINDEX};this.setPois=function(n){var t,i;if(this.resetPois(),n){for(t=0;t<n.length;t++)i=new mapp.Poi(n[t]),o.push(i),i.setMap(this),i.setZIndex(c+n.length-1-t);c+=n.length-1}this.renderList()};this.sortPois=function(n){for(var r,t=Array(),i=0;i<n.length;i++){if(r=parseInt(n[i]),isNaN(r))return!1;t.push(o[r])}if(t.length!=o.length)return!1;o=t;this.renderList()};this.openInfoWindow=function(n,t){if(h&&h.close(),this.iw.close(),this.poiSelect(n),mappl10n.options.mashupClick!="poi"&&n.postid&&n.url){window.open(n.url);return}this.toggleView("list",!1);this.editable||this.iw.setContent(n.html);google.maps.event.addListenerOnce(this.iw,"domready",function(){google.maps.event.trigger(e,"poidomready",n)});google.maps.event.trigger(e,"open",n);var i=new google.maps.MVCObject;i.setValues({position:n.getPosition(t),anchorPoint:n.getAnchorPoint(t)});this.iw.open(u,i)};this.togglePois=function(n){n=!!n;for(var t=0;t<o.length;t++)o[t].setVisible(n)};this.toggleView=function(n,t){t=typeof t=="undefined"?!f.layout.hasClass("mapp-view-"+n):t;f.layout.toggleClass("mapp-view-"+n,t);n=="menu"&&t&&y();n=="directions"&&this.resize()};this.resize=function(){var n=u.getCenter();this.toggleView("mini",f.layout.width()<450);google.maps.event.trigger(u,"resize");u.setCenter(n);return};this.recenter=function(){var i=!this.query&&this.center&&this.center.lat&&this.center.lng?new google.maps.LatLng(this.center.lat,this.center.lng):null,n=!this.query&&this.zoom&&parseInt(this.zoom)?parseInt(this.zoom):null,t,r;if(this.center&&this.center.lat==0&&this.center.lng==0&&(i=null),i){u.setCenter(i);u.setZoom(n?n:1);return}if(o.length==0){u.setCenter(new google.maps.LatLng(0,0));u.setZoom(n?n:1);return}if(o.length==1){o[0].center(n);return}for(bounds=new google.maps.LatLngBounds,t=0;t<o.length;t++)r=o[t].getBounds(),bounds=r?bounds.union(r):bounds.extend(o[t].getPosition());u.fitBounds(bounds,0)};this.toJSON=function(){var n;for(this.pois=[],n=0;n<o.length;n++)this.pois.push(o[n].toJSON());return{center:this.center,height:this.height,mapid:this.mapid,mapTypeId:u.getMapTypeId(),metaKey:this.metaKey,pois:this.pois,title:this.title,width:this.width,zoom:this.zoom}};this.ajaxSave=function(n){var t=JSON.stringify(this),i=!this.mapid||!this.postid?mappl10n.options.postid:this.postid;mapp.lib.ajax({type:"POST",data:{action:"mapp_save",map:t,postid:i},callback:function(t){t.status=="OK"&&(e.mapid=t.data.mapid,n(t.data),google.maps.event.trigger(e,"save"))}})}};mapp.Map.ajaxCreate=function(n,t){mapp.lib.ajax({type:"GET",data:{action:"mapp_create"},callback:function(i){if(i.status=="OK"){var r=new mapp.Map(i.data.map,n);t(r)}}})};mapp.Map.ajaxGet=function(n,t,i){mapp.lib.ajax({type:"GET",data:{action:"mapp_get",mapid:n},callback:function(n){if(n.status=="OK"){var r=new mapp.Map(n.data.map,t);i(r)}}})};mapp.Map.ajaxDelete=function(n,t){mapp.lib.ajax({type:"POST",data:{action:"mapp_delete",mapid:n},callback:function(n){n.status=="OK"&&t&&t()}})}}(jQuery);mapp=window.mapp||{};+function(n){mapp.Directions=function(t,i){this.sel=n(t);this.map=i;this.directionsRenderer=null;this.directionsService=null;this.placesService=null;var r=this;this.sel.on("keydown",function(n){n.which==13?(r.getDirections(),n.preventDefault()):n.which==27&&r.close()});this.sel.on("click","[data-mapp-action]",function(t){var f=n(this).attr("data-mapp-action"),i=n(".mapp-dir-daddr",r.sel).val(),u=n(".mapp-dir-saddr",r.sel).val();t.preventDefault();switch(f){case"dir-cancel":r.close();break;case"dir-get":r.getDirections();break;case"dir-google":r.openGoogle(u,i);r.close();break;case"dir-myloc":r.map.places.geolocate(function(t){n(".mapp-dir-saddr",r.sel).val(t.name);r.getDirections()});break;case"dir-swap":n(".mapp-dir-saddr",r.sel).val(i);n(".mapp-dir-daddr",r.sel).val(u);r.getDirections()}});this.open=function(t,i){if(mappl10n.options.directions=="google"){this.openGoogle(t,i);return}this.map.toggleView("directions",!0);n(".mapp-dir-addr",this.sel).removeClass("mapp-error");n(".mapp-dir-saddr",this.sel).val(t);n(".mapp-dir-daddr",this.sel).val(i);n(".mapp-dir-get",this.sel).focus();n(".mapp-dir-saddr",this.sel).focus()};this.close=function(){this.map.toggleView("directions",!1);this.directionsRenderer&&(this.directionsRenderer.setPanel(null),this.directionsRenderer.getMap()&&(this.directionsRenderer.setMap(null),this.map.togglePois(!0)))};this.getDirections=function(){var t;this.map.closeInfoWindow();n(".mapp-spinner",this.sel).css("visibility","visible");this.directionsService=this.directionsService?this.directionsService:new google.maps.DirectionsService;this.directionsRenderer=this.directionsRenderer?this.directionsRenderer:new google.maps.DirectionsRenderer({hideRouteList:!1,draggable:!0});this.placesService=this.placesService?this.placesService:new google.maps.places.PlacesService(this.map.getMap());n(".mapp-dir-renderer",this.sel).empty();t={travelMode:google.maps.DirectionsTravelMode.DRIVING,provideRouteAlternatives:!0,origin:n(".mapp-dir-saddr",this.sel).val(),destination:n(".mapp-dir-daddr",this.sel).val()};this.directionsService.route(t,function(t,i){(n(".mapp-spinner",r.sel).css("visibility","hidden"),n(".mapp-dir-addr",r.sel).removeClass("mapp-error"),n.each(t.geocoded_waypoints,function(t,i){n(".mapp-dir-addr",r.sel).eq(t).toggleClass("mapp-error",i.geocoder_status!="OK");i.place_id&&r.placesService.getDetails({placeId:i.place_id},function(i,u){if(u=="OK"){var f=i.formatted_address.replace(", USA","");f.indexOf(i.name)===-1&&(f=i.name+", "+f);n(".mapp-dir-addr",r.sel).eq(t).val(f)}})}),n(".mapp-dir-addr.mapp-error").length)||(i==google.maps.DirectionsStatus.OK?(r.map.togglePois(!1),r.directionsRenderer.setOptions({directions:t,map:r.map.getMap(),panel:n(".mapp-dir-renderer",r.sel).get(0)})):alert(mappl10n.dir_error+i))})};this.openGoogle=function(n,t){var i=mappl10n.options.directionsServer;i.toLowerCase().indexOf("http")==-1&&(i="https://"+i);i+="?saddr="+encodeURIComponent(n);i+="&daddr="+encodeURIComponent(t);window.open(i)}}}(jQuery);mapp=window.mapp||{};mapp.Geocoder=function(n){function r(n,t){jQuery(n).removeClass("mapp-error");jQuery(t).hide()}function u(n,t,i){jQuery(n).addClass("mapp-error");jQuery(t).html(i);jQuery(t).show()}var t,f,i=this;f=n;this.geocode=function(i,r){typeof i=="string"&&i.substring(0,1)=="("&&(split=i.replace(/\(|\)/g,"").split(","),i=new google.maps.LatLng(split[0],split[1]));var u=i instanceof google.maps.LatLng?{location:i}:{address:i,region:mappl10n.options.country,bounds:n.getBounds()};t||(t=new google.maps.Geocoder);t.geocode(u,function(n,t){if(n){for(var i=0;i<n.length;i++)n[i].formatted_address==""&&n.splice(i,1);r(n[0],t)}else r(null,t)})};this.geolocate=function(n){if(!navigator||!navigator.geolocation)return null;navigator.geolocation.getCurrentPosition(function(t){n(t)},function(){n(null)},{timeout:1e4,enableHighAccuracy:!0,maximumAge:3e4})};this.stringToLatLng=function(n){var t=n.split(",",2),i=Number(t[0]),r=Number(t[1]);return isNaN(i)||isNaN(r)?!1:new google.maps.LatLng(i,r)};this.geocodeField=function(n,t,i){r(n,t);checkAddress(n,t,jQuery(n).val(),function(r){if(!r){u(n,t,mappl10n.no_address);i(null);return}if(r&&r.formatted_address){jQuery(n).val(r.formatted_address);i(r.formatted_address);return}i(r);return})};this.autocompleteField=function(n,t,f,e,o){jQuery(n).keypress(function(i){i.which==13&&(checkAddress(n,t,jQuery(n).val(),o),i.preventDefault())});jQuery(f).click(function(){return checkAddress(n,t,jQuery(n).val(),o),!1});jQuery(e).click(function(){return r(n,t),i.geolocate(function(i){if(i){var r="("+i.coords.latitude+", "+i.coords.longitude+")";jQuery(n).val("");checkAddress(n,t,r,o)}else u(n,t,mappl10n.no_geolocate);return}),!1})};checkAddress=function(n,t,f,e){if(r(n,t),f=jQuery.trim(f),f==""){e(null);return}var o=i.stringToLatLng(f);if(o){e(o);return}if(f.substring(0,4)=="http"){e(f);return}i.geocode(f,function(i,r){if(!i||r!=google.maps.GeocoderStatus.OK){u(n,t,mappl10n.no_address);e(null);return}e(i);return})}};mapp.Geocoder.parseAddress=function(n){return!n||n==""?{firstLine:"",secondLine:""}:(n.lastIndexOf(", USA")>0||n.lastIndexOf(", United States")>0)&&(n.lastIndexOf(", USA")>0&&(n=n.slice(0,n.lastIndexOf(", USA"))),n.lastIndexOf(", United States")>0&&(n=n.slice(0,n.lastIndexOf(", United States"))),n.indexOf(",")==n.lastIndexOf(","))?{firstLine:n,secondLine:""}:n.indexOf(",")==-1?{firstLine:n,secondLine:""}:{firstLine:n.slice(0,n.indexOf(",")),secondLine:n.slice(n.indexOf(", ")+2)}};mapp=window.mapp||{};mapp.Icons={};mapp.Icons.get=function(){return"https://maps.google.com/intl/en_us/mapfiles/ms/micons/red-dot.png"};mapp.Icons.getUrl=function(){return"https://maps.google.com/intl/en_us/mapfiles/ms/micons/red-dot.png"};mapp=window.mapp||{};+function(n){mapp.InfoBox=function(t,i){var f=n.extend({border:20,disableAutoPan:!1},i),u=null,r=null,e=null,o=this;r=n('<div class="mapp-ib" tabindex="0">').appendTo(t.getMap().getDiv());e=n('<div class="mapp-ib-tip">').appendTo(t.getMap().getDiv());jQuery(window).resize(function(){o.close()});r.on("keydown",function(n){n.which==27&&o.close()});r.on("click",".mapp-close",function(){o.close()});this.getContent=function(){return r};this.setContent=function(n){r.empty().append(n)};this.open=function(n,t){u=t;this.setMap(n)};this.onAdd=function(){r.show();e.show();var t=n(":input",r);t.length?t.first().focus():r.focus();google.maps.event.trigger(o,"domready")};this.draw=function(){var l=this.getMap(),c=this.getProjection().fromLatLngToContainerPixel(u.position),t={width:n(l.getDiv()).width(),height:n(l.getDiv()).height()},v=n(".mapp-ib-body",r);if(!f.disableAutoPan){r.css({"max-height":"9999px",left:0,bottom:0,top:"auto",right:"auto"});var s=r.outerWidth(!0),h=r.outerHeight(!0),a=e.outerHeight(!0),i=c.x,o=c.y;i+s/2>t.width&&(i=t.width-s/2);i-s/2<0&&(i=s/2);o-h+u.anchorPoint.y-a<f.border&&(o=h-u.anchorPoint.y+f.border+a);o>t.height&&(o=t.height);l.panBy(c.x-i,c.y-o);h>t.height+u.anchorPoint.y-2*f.border&&(h=t.height+u.anchorPoint.y-2*f.border,r.css({"max-height":h+2}));r.css({left:i-s/2,bottom:t.height-o-u.anchorPoint.y+a});e.css({left:i,bottom:t.height-o-u.anchorPoint.y})}};this.close=function(){r.is(":visible")&&(this.setMap(null),google.maps.event.trigger(this,"closed"))};this.onRemove=function(){r.empty();r.hide();e.hide()}};mapp.InfoBox.prototype=new google.maps.OverlayView}(jQuery);mapp=window.mapp||{};+function(n){if(mapp.lib={ajax:function(t){var r=this,u,i;if(n.extend({type:"GET",cache:!1,data:null,spinner:null,callback:n.noop},t),t.cache)for(typeof mapp.lib.ajax.cache=="undefined"&&(mapp.lib.ajax.cache=[]),u=JSON.stringify(t.data),i=0;i<mapp.lib.ajax.cache.length;i++)if(mapp.lib.ajax.cache[i].hash==u){t.callback(mapp.lib.ajax.cache[i].response);return}return t.spinner&&t.spinner.show(),n.ajax({type:t.type,cache:!1,url:mappl10n.options.ajaxurl,data:t.data,success:function(n,i,u){if(t.spinner&&t.spinner.hide(),n.output){r.alert("AJAX Error\r\n"+n.output);return}if(n.status=="OK"){t.cache&&mapp.lib.ajax.cache.push({hash:JSON.stringify(t.data),response:n});t.callback&&t.callback(n,u);return}var f=typeof n=="object"?n.status:n;r.alert("AJAX ERROR\r\nResponse="+f+" TextStatus="+i+"\r\nResponseText="+u.responseText)},error:function(n,i,u){(t.spinner&&t.spinner.hide(),i!="cancel")&&typeof u!="undefined"&&u!=""&&r.alert("AJAX ERROR\r\nTextStatus="+i+"\r\nError="+u+"\r\nResponseText="+n.responseText)}})},alert:function(n){mappl10n.options.admin||mappl10n.options.debug?alert(n):window.console&&console.error(n)},jqVersionCheck:function(t){if(typeof n=="undefined"||typeof t=="undefined")return!1;for(t=t.split("."),v=n.fn.jquery.split("."),i=0;i<t.length;i++){var r=parseInt(t[i]),u=typeof v[i]!="undefined"?parseInt(v[i]):0;if(u!=r)return u>r}return!0},log:function(n){window.console&&console.error(n)},scrollTo:function(n,t){if(n&&t&&n.length&&t.length){var i=n.scrollTop(),u=n.height(),r=i+t.position().top,f=r+t.outerHeight(!0);r<i?n.scrollTop(r):f>i+u&&n.scrollTop(f-u)}},template:function(t,i){if(mapp.lib.templates=mapp.lib.templates?mapp.lib.templates:{},!mapp.lib.templates[t]){var r=mappl10n.options.templates?mappl10n.options.template[t]:n("#mapp-tmpl-"+t).html();if(r)mapp.lib.templates[t]=_.template(r.replace(/[\n\r\t]/g,""),null,{evaluate:/<#([\s\S]+?)#>/g,interpolate:/\{\{\{([\s\S]+?)\}\}\}/g,escape:/\{\{([^\}]+?)\}\}(?!\})/g});else return""}return mapp.lib.templates[t](i)}},typeof google=="undefined")return mapp.lib.alert("ERROR: Google Maps API not loaded");if(!mappl10n.options.apiKey)return mapp.lib.alert("ERROR: Google Maps API Key missing, please check MapPress settings and FAQ");n(document).ready(function(){n('script[src*="https://maps.googleapis.com/maps/api/js?v=3"]').length>1&&mapp.lib.alert("ERROR: Google Maps API key loaded multiple times, please see MapPress FAQ.")});mapp.lib.jqVersionCheck("1.7")||mapp.lib.alert("jQuery version is too old: "+n.fn.jquery);n("body").on("tabsactivate tabsshow",function(t,i){var r=i.newPanel?i.newPanel:i.panel;r&&n(".mapp-layout",r).each(function(){var i=n(this).attr("id"),t=window[i];t.resize();t.initCenter()})})}(jQuery);mapp=window.mapp||{};+function(n){mapp.Places=function(t,i){var u=this,r;if(this.sel=n(t),this.opts=n.extend({map:null,types:[]},i),r=n('<div style="display:none">').appendTo("body"),this.placesService=new google.maps.places.PlacesService(r.get(0)),this.autocompleteService=new google.maps.places.AutocompleteService,this.sel.length){this.autocomplete=new google.maps.places.Autocomplete(this.sel.get(0),{types:this.opts.types});this.autocomplete.bindTo("bounds",this.opts.map.getMap());this.sel.on("keydown",function(n){n.which==13&&n.preventDefault()});google.maps.event.addListener(this.autocomplete,"place_changed",function(){u.parse(this.getPlace())})}};mapp.Places.prototype={parse:function(t){var u,i=this,r,e,f;if(this.error(!1),r=t&&t.name?n.trim(t.name):n.trim(t),!r)return this.error(!0);if(r=="user"){this.geolocate(function(n){google.maps.event.trigger(i,"search",n)});return}if(r.substring(0,4)=="http"){google.maps.event.trigger(i,"search",r);return}if(t&&t.geometry){t.formatted_address&&this.set(t.formatted_address);google.maps.event.trigger(i,"search",t);return}if(e=this.parseLatLng(t),e){google.maps.event.trigger(i,"search",e);return}f=this.opts.map.getMap().getBounds();f=f?f:new google.maps.LatLngBounds(new google.maps.LatLng(85,-180),new google.maps.LatLng(-85,180));this.autocompleteService.getPlacePredictions({input:r,types:this.opts.types,bounds:f},function(n,t){if(t!="OK"||n==null||n.length==0)return i.error(!0);u=typeof n[0].description!="undefined"?n[0].description:null;i.placesService.getDetails({placeId:n[0].place_id},function(n,t){if(t!="OK"||!n||!n.geometry)return i.error(!0);u=u?u:n.formatted_address;i.set(u);google.maps.event.trigger(i,"search",n)})})},parseLatLng:function(t){var i,u,r;return t instanceof google.maps.LatLng?i=t:t&&t.lat&&t.lng?i=new google.maps.LatLng(t.lat,t.lng):(u=t&&t.name?n.trim(t.name):n.trim(t),r=u.split(","),r.length!=2||isNaN(r[0])||isNaN(r[1])||(i=new google.maps.LatLng(r[0],r[1]))),i?{name:i.toUrlValue(),geometry:{location:i}}:null},geolocate:function(n){var t=this;if(!navigator||!navigator.geolocation){alert(mappl10n.no_geolocate);return}navigator.geolocation.getCurrentPosition(function(i){t.set("");var r=new google.maps.LatLng(i.coords.latitude,i.coords.longitude);n({name:r.toUrlValue(),geometry:{location:r}})},function(n){var t=n&&n.message?" : "+n.message:"";alert(mappl10n.no_geolocate+t)},{timeout:15e3,enableHighAccuracy:!0,maximumAge:3e4})},set:function(n){n=n.replace(", United States of America","").replace(", USA","").replace(", United States","");this.sel.val(n);this.error(!1)},get:function(){return n.trim(this.sel.val())},focus:function(){this.sel.focus()},error:function(n){this.sel.toggleClass("mapp-error",!!n)},destroy:function(){this.autocomplete.unbindAll();google.maps.event.clearInstanceListeners(this.sel.get(0))}}}(jQuery);mapp=window.mapp||{};+function(n){mapp.Poi=function(t){var f,e,r,s,i,u,h,o;if(this.defaults={address:null,body:null,html:null,iconid:null,kml:null,map:null,overlay:null,postid:null,title:"",url:null,type:null,viewport:null},n.extend(this,this.defaults,t),t&&t.correctedAddress&&(this.address=t.correctedAddress),t.viewport&&t.viewport.sw&&t.viewport.ne&&(f=new google.maps.LatLng(t.viewport.sw.lat,t.viewport.sw.lng),e=new google.maps.LatLng(t.viewport.ne.lat,t.viewport.ne.lng),this.viewport=f.lat()==0&&f.lng()==0&&e.lat()==0&&e.lng()==0?null:new google.maps.LatLngBounds(f,e)),r=[],s=[],!t.overlay)switch(this.type){case"polygon":if(t.poly&&t.poly.paths)for(i=0;i<t.poly.paths.length;i++){for(r=[],u=0;u<t.poly.paths[i].length;u++)r.push(new google.maps.LatLng(t.poly.paths[i][u].lat,t.poly.paths[i][u].lng));s.push(new google.maps.MVCArray(r))}this.overlay=new google.maps.Polygon({paths:new google.maps.MVCArray(s)});this.setColors(t.poly);break;case"polyline":if(t.poly&&t.poly.path)for(i=0;i<t.poly.path.length;i++)r.push(new google.maps.LatLng(t.poly.path[i].lat,t.poly.path[i].lng));this.overlay=new google.maps.Polyline({path:new google.maps.MVCArray(r)});this.setColors(t.poly);break;case"circle":o=new google.maps.LatLng(t.point.lat,t.point.lng);this.overlay=new google.maps.Circle({center:o,radius:parseFloat(t.poly.radius)});this.setColors(t.poly);break;case"rectangle":this.overlay=new google.maps.Rectangle({bounds:this.viewport});this.setColors(t.poly);break;case"kml":h=t.kml&&t.kml.url?t.kml.url:"";this.overlay=new google.maps.KmlLayer(h,{preserveViewport:!0,suppressInfoWindows:!0});break;case"":default:o=new google.maps.LatLng(t.point.lat,t.point.lng);this.overlay=new google.maps.Marker({position:o})}};mapp.Poi.prototype={toJSON:function(){var n={address:this.address,body:this.body,correctedAddress:this.address,iconid:this.iconid,point:null,poly:null,title:this.title,type:this.type,viewport:null},r=this.getPosition(),t,i;if(n.point={lat:r.lat(),lng:r.lng()},t=this.viewport?this.viewport:this.getBounds(),t&&(n.viewport={sw:{lat:t.getSouthWest().lat(),lng:t.getSouthWest().lng()},ne:{lat:t.getNorthEast().lat(),lng:t.getNorthEast().lng()}}),this.type=="kml"&&(n.kml={url:this.overlay.getUrl()}),this.isPoly()){n.poly=this.getColors();switch(this.type){case"circle":n.poly.radius=this.overlay.getRadius();break;case"polyline":n.poly.path=[];this.overlay.getPath().forEach(function(t){n.poly.path.push({lat:t.lat(),lng:t.lng()})});break;case"polygon":n.poly.paths=[];this.overlay.getPaths().forEach(function(t){var i=[];t.forEach(function(n){i.push({lat:n.lat(),lng:n.lng()})});n.poly.paths.push(i)});break;case"rectangle":i=this.overlay.getBounds();n.viewport={sw:{lat:i.getSouthWest().lat(),lng:i.getSouthWest().lng()},ne:{lat:i.getNorthEast().lat(),lng:i.getNorthEast().lng()}}}}return n},setMap:function(t){var i=this;if(google.maps.event.clearInstanceListeners(this.overlay),t==null){this.overlay.setMap(null);return}this.type=="kml"&&(google.maps.event.addListener(this.overlay,"defaultviewport_changed",function(){i.viewport=i.overlay.getDefaultViewport()}),google.maps.event.addListener(this.overlay,"status_changed",function(){var n=i.overlay.getStatus();n!="OK"&&mappl10n.ajaxErrors&&alert(mappl10n.kml_error+":"+n)}));this.map=t;this.overlay.setMap(t.getMap());this.setEditable(this.map.editable);this.setIcon(this.iconid);this.type||this.overlay.setTitle(n("<div>").html(this.title).text());google.maps.event.addListener(this.overlay,"click",function(n){i.open(n)})},setEditable:function(n){var t=this;this.type!="kml"&&(this.overlay.setDraggable(n),this.isPoly()&&this.overlay.setEditable(n),google.maps.event.clearListeners(this.overlay,"rightclick"),google.maps.event.clearListeners(this.overlay,"dragstart"),n&&(google.maps.event.addListener(this.overlay,"dragstart",function(){t.viewport=null;t.map.closeInfoWindow()}),(this.type=="polygon"||this.type=="polyline")&&google.maps.event.addListener(this.overlay,"rightclick",function(n){n.vertex!=null&&t.overlay.getPath().getLength()>2&&t.overlay.getPath().removeAt(n.vertex)})))},setZIndex:function(n){this.overlay.set("zIndex",n)},select:function(){},setIcon:function(n){this.type||typeof mapp.Icons=="undefined"||(this.overlay.setIcon(null),this.overlay.setIcon(mapp.Icons.get(n)),this.iconid=n)},setVisible:function(n){typeof this.overlay.setVisible!="undefined"&&this.overlay.setVisible(n)},setColors:function(n){var i={};for(var t in{strokeColor:"",strokeOpacity:"",strokeWeight:"",fillColor:"",fillOpacity:""})n&&typeof n[t]!="undefined"&&(i[t]=n[t]);this.overlay.setOptions(i)},getColors:function(){var t={};for(var n in{strokeColor:"",strokeOpacity:"",strokeWeight:"",fillColor:"",fillOpacity:""})typeof this.overlay[n]!="undefined"&&(t[n]=this.overlay[n]);return t},center:function(t){var i=this.map.getMap(),u=this.getBounds(),r,t;if(typeof t=="number"){i.setCenter(this.getPosition());i.setZoom(t);return}if(!u){i.setCenter(this.getPosition());i.setZoom(parseInt(mappl10n.options.poiZoom));return}r=u.getNorthEast().lng()-u.getSouthWest().lng();r<0&&(r+=360);t=Math.round(Math.log(n(i.getDiv()).width()*360/r/256)/Math.LN2);i.setCenter(this.getPosition());i.setZoom(t)},open:function(n){this.map.openInfoWindow(this,n)},isPoly:function(){return jQuery.inArray(this.type,["polyline","polygon","circle","rectangle"])!=-1},getBounds:function(){var n;switch(this.type){case"polyline":n=new google.maps.LatLngBounds;this.overlay.getPath().forEach(function(t){n.extend(t)});break;case"polygon":n=new google.maps.LatLngBounds;this.overlay.getPaths().forEach(function(t){t.forEach(function(t){n.extend(t)})});break;case"rectangle":case"circle":n=this.overlay.getBounds();break;case"kml":n=this.overlay.getDefaultViewport();n=n?n:this.viewport;break;default:return this.viewport}return n},getPosition:function(n){if(!this.type)return this.overlay.getPosition();if(this.type=="kml"&&n&&n.latLng)return n.latLng;var t=this.getBounds();return t?t.getCenter():new google.maps.LatLng(0,0)},click:function(){google.maps.event.trigger(this.overlay,"click")},getAddress:function(){return this.address?this.address:this.type=="kml"?this.kml.url:this.getPosition().toUrlValue()},getAnchorPoint:function(n){return this.type=="kml"?n&&n.pixelOffset?new google.maps.Point(n.pixelOffset.width,n.pixelOffset.height):new google.maps.Point(0,0):this.type?new google.maps.Point(0,0):typeof this.overlay.anchorPoint!="undefined"?this.overlay.anchorPoint:new google.maps.Point(0,-32)}}}(jQuery);mapp=window.mapp||{};mapp.widgets={};+function(){mapp.load=function(){if(typeof mapp!="undefined"&&mapp.data)while(mapp.data.length){var n=mapp.data.pop();window[n.name]=new mapp.Map(n);window[n.name].display()}}}(jQuery);typeof mapp.Media!="undefined"?window.mappEditor=new mapp.Media:mapp.load()
|
1 |
+
var mapp=window.mapp||{};+function(n){mapp.Map=function(t,r){function a(n,t){n=n.split(" ");for(var i=0;i<n.length;i++)google.maps.event.addListener(u,n[i],t)}function y(){var i,t;n("[data-mapp-type]",f.menu).removeClass("mapp-active");n('[data-mapp-type="'+u.getMapTypeId()+'"]',f.menu).addClass("mapp-active");for(layer in s)i=!!s[layer].getMap(),n('[data-mapp-layer="'+layer+'"]',f.menu).toggleClass("mapp-active",i);t=!!(e.center&&e.zoom);n('[data-mapp-action="viewport-set"]',f.menu).toggle(!t);n('[data-mapp-action="viewport-reset"]',f.menu).toggle(t)}function p(){var n=mappl10n.options.styles,i=mappl10n.options.style,r=["roadmap","satellite","terrain","hybrid"],t;if(i&&typeof n[i]!="undefined"&&u.setOptions({styles:n[i]}),e.editable){for(t in n)u.mapTypes.set(t,new google.maps.StyledMapType(n[t],{name:t})),r.push(t);u.setOptions({mapTypeControlOptions:{mapTypeIds:r,position:google.maps.ControlPosition.TOP_RIGHT,style:google.maps.MapTypeControlStyle.DROPDOWN_MENU}})}else typeof n[e.mapTypeId]!="undefined"&&u.setOptions({styles:n[e.mapTypeId]})}function w(){f.controls.children("[data-mapp-position]").each(function(){var t=n(this).attr("data-mapp-position"),i;t=t?google.maps.ControlPosition[t]:google.maps.ControlPosition.TOP_RIGHT;i=n(this);i.get(0).index=0;u.controls[t].push(i.get(0))})}function b(){var f,i,t,r;for(s={traffic:new google.maps.TrafficLayer,bicycling:new google.maps.BicyclingLayer,transit:new google.maps.TransitLayer},f=n.makeArray(e.layers),i=0;i<f.length;i++)t=n.trim(f[i]),r=t.split(".").pop(),s[t]?l(t):r=="kml"||r=="kmz"?s[t]=new google.maps.KmlLayer({map:u,preserveViewport:!0,url:t}):r=="json"&&(s[t]=new google.maps.Data({map:u}).loadGeoJson(t))}function l(t,i){n.each(["traffic","bicycling","transit"],function(n,t){s[t].setMap(null)});t&&(i=typeof i=="undefined"?s[t].getMap()==null:i,s[t].setMap(i?u:null))}function v(t,i){var r=n.inArray(t,["roadmap","satellite","terrain","hybrid"])!=-1;i=typeof i!="undefined"?i:!(u.getMapTypeId()==t);t=e.editable?i&&(r||typeof mappl10n.options.styles[t]!="undefined")?t:"roadmap":r?t:"roadmap";u.setMapTypeId(t)}this.defaults={center:null,editable:null,height:null,initialOpenDirections:null,initialOpenInfo:null,layers:null,mapid:null,mapTypeId:null,metaKey:null,minZoom:null,name:null,pois:null,postid:null,query:null,title:null,width:null,zoom:null};this.iw=null;this.places=null;this.poi=null;this.settings=r?r:{};var e=this,h=null,f={},u=null,s={},o=[],c;_.extend(this,this.defaults,_.pick(t,_.keys(this.defaults)),_.pick(this.settings,_.keys(this.defaults)));this.display=function(){if(f.layout=n("#"+this.name),n.each(["canvas","controls","directions","filters","list","menu","search"],function(t,i){f[i]=n(".mapp-"+i,f.layout)}),!f.canvas.length)return mapp.lib.log("MapPress: Missing map name or container for map: "+this.name);u=new google.maps.Map(f.canvas.get(0),{mapTypeId:"roadmap",zoom:1});var t={backgroundColor:"transparent",clickableIcons:!1,fullscreenControl:!1,keyboardShortcuts:!1,mapTypeControl:!0,mapTypeControlOptions:{position:google.maps.ControlPosition.TOP_RIGHT,style:google.maps.MapTypeControlStyle.DROPDOWN_MENU},minZoom:this.minZoom?parseInt(this.minZoom):0,scaleControl:!0,scrollwheel:!1,streetViewControl:!this.editable&&!this.query};u.setOptions(t);p();w();b();v(this.mapTypeId,!0);this.toggleView("mini",f.layout.width()<450);this.places=new mapp.Places(n(".mapp-places",f.search),{map:e});e.editable||google.maps.event.addListener(this.places,"search",function(n){e.search(n)});f.layout.on("click","[data-mapp-action]",function(t){var i=n(this).attr("data-mapp-action");t.preventDefault();e.action(i,n(this).attr("data-mapp-"+i),n(this))});f.filters.on("change",function(){e.ajaxQuery(u.getBounds())});a("click drag",function(){e.closeInfoWindow()});n("body").on("click",function(t){var i=n(t.target),r=i.attr("data-mapp-action");i==f.filters||r=="filters-toggle"||i.closest(f.filters).length||e.toggleView("filters",!1);i==f.menu||r=="menu-toggle"||i.closest(f.menu).length||e.toggleView("menu",!1)});n(window).resize(_.debounce(function(){e.resize()},500));this.iw=mappl10n.options.iwType=="ib"||this.editable?new mapp.InfoBox(this):new google.maps.InfoWindow;google.maps.event.addListenerOnce(u,"idle",function(){var n=o.length?o[0]:null;e.initialOpenDirections?e.openDirections(null,n):n&&e.initialOpenInfo&&n.open()});mappl10n.options.search&&google.maps.event.addListenerOnce(u,"tilesloaded",function(){google.maps.event.addListenerOnce(u,"idle",function(){a("dragend zoom_changed",function(){e.ajaxQuery(u.getBounds())})})});this.setPois(this.pois);typeof this.center=="string"?this.places.parse(this.center):this.query?this.ajaxQuery():this.recenter()};this.load=function(n){_.extend(this,this.defaults,n,this.settings);v(this.mapTypeId,!0);this.toggleView("menu",!1);l();this.closeInfoWindow();this.setPois(this.pois);this.places.set("");google.maps.event.trigger(this,"load")};this.action=function(t,i,r){switch(t){case"center":this.toggleView("menu",!1);this.closeInfoWindow();this.recenter();break;case"dir":this.openDirections(null,this.poi);break;case"dir-from":this.openDirections(this.poi,null);break;case"filters-reset":f.filters.find(":input").each(function(){this.type=="checkbox"||this.type=="radio"?n(this).prop("checked",!1):n(this).val("")});this.ajaxQuery(u.getBounds());break;case"filters-toggle":this.toggleView("filters");break;case"geolocate":this.places.geolocate(function(n){e.search(n)});break;case"layer":l(i);this.toggleView("menu",!1);break;case"menu-toggle":this.toggleView("menu");break;case"open":var s=r.attr("data-mapp-poi");this.openInfoWindow(o[s]);break;case"show":f.layout.show();this.resize();this.initCenter();break;case"view-map":this.toggleView("list",!1);break;case"view-list":this.toggleView("list",!0);break;case"viewport-set":this.center=u.getCenter().toJSON();this.zoom=u.getZoom();this.toggleView("menu",!1);break;case"viewport-reset":this.center=null;this.zoom=null;this.toggleView("menu",!1);this.recenter();break;default:return!0}};this.search=function(n){var t=n.geometry.location?n.geometry.location:null,i=n.geometry.viewport?n.geometry.viewport:null,r=new google.maps.Circle({center:t,radius:mappl10n.options.radius*1e3}),f=i?i.union(r.getBounds()):r.getBounds();u.fitBounds(f,0);u.setCenter(t);this.query&&this.ajaxQuery(f)};this.dialog=function(t,i){t?(f.canvas.append("<div class='mapp-dialog'>"+t+"<\/div>"),i&&(clearTimeout(this.dialog.fade),this.dialog.fade=setTimeout(function(){e.dialog(null)},3e3))):n(".mapp-dialog",f.canvas).remove()};this.closeInfoWindow=function(){this.iw.close();this.poiSelect(null)};this.openDirections=function(n,t){var i=n?n.getAddress():"",r=t?t.getAddress():"";h||(h=new mapp.Directions(f.directions,e));h.open(i,r)};this.poiSelect=function(t){if(n("[data-mapp-poi]",f.list).removeClass("mapp-selected"),t){var r=n.inArray(t,o),i=n('[data-mapp-poi="'+r+'"]',f.list);i.addClass("mapp-selected");mapp.lib.scrollTo(f.list,i);t.setZIndex(++c)}this.poi=t};this.getMap=function(){return u};this.renderList=function(){this.editable&&(f.list.html(mapp.lib.template("poi-list",{pois:o})),google.maps.event.trigger(this,"render-list"))};this.getPois=function(){return o};this.addPoi=function(n){o.unshift(n);n.setMap(this);e.renderList();this.poiSelect(n)};this.removePoi=function(t){var i=n.inArray(t,o);i!=-1&&(o[i].setMap(null),o.splice(i,1),e.renderList())};this.resetPois=function(){for(i=0;i<o.length;i++)o[i].setMap(null);o=[];c=google.maps.Marker.MAX_ZINDEX};this.setPois=function(n){var t,i;if(this.resetPois(),n){for(t=0;t<n.length;t++)i=new mapp.Poi(n[t]),o.push(i),i.setMap(this),i.setZIndex(c+n.length-1-t);c+=n.length-1}this.renderList()};this.sortPois=function(n){for(var r,t=Array(),i=0;i<n.length;i++){if(r=parseInt(n[i]),isNaN(r))return!1;t.push(o[r])}if(t.length!=o.length)return!1;o=t;this.renderList()};this.openInfoWindow=function(n,t){if(h&&h.close(),this.iw.close(),this.poiSelect(n),mappl10n.options.mashupClick!="poi"&&n.postid&&n.url){window.open(n.url);return}this.toggleView("list",!1);this.editable||this.iw.setContent(n.html);google.maps.event.addListenerOnce(this.iw,"domready",function(){google.maps.event.trigger(e,"poidomready",n)});google.maps.event.trigger(e,"open",n);var i=new google.maps.MVCObject;i.setValues({position:n.getPosition(t),anchorPoint:n.getAnchorPoint(t)});this.iw.open(u,i)};this.togglePois=function(n){n=!!n;for(var t=0;t<o.length;t++)o[t].setVisible(n)};this.toggleView=function(n,t){t=typeof t=="undefined"?!f.layout.hasClass("mapp-view-"+n):t;f.layout.toggleClass("mapp-view-"+n,t);n=="menu"&&t&&y();n=="directions"&&this.resize()};this.resize=function(){var n=u.getCenter();this.toggleView("mini",f.layout.width()<450);google.maps.event.trigger(u,"resize");u.setCenter(n);return};this.recenter=function(){var i=!this.query&&this.center&&this.center.lat&&this.center.lng?new google.maps.LatLng(this.center.lat,this.center.lng):null,n=!this.query&&this.zoom&&parseInt(this.zoom)?parseInt(this.zoom):null,t,r;if(this.center&&this.center.lat==0&&this.center.lng==0&&(i=null),i){u.setCenter(i);u.setZoom(n?n:1);return}if(o.length==0){u.setCenter(new google.maps.LatLng(0,0));u.setZoom(n?n:1);return}if(o.length==1){o[0].center(n);return}for(bounds=new google.maps.LatLngBounds,t=0;t<o.length;t++)r=o[t].getBounds(),bounds=r?bounds.union(r):bounds.extend(o[t].getPosition());u.fitBounds(bounds,0)};this.toJSON=function(){var n;for(this.pois=[],n=0;n<o.length;n++)this.pois.push(o[n].toJSON());return{center:this.center,height:this.height,mapid:this.mapid,mapTypeId:u.getMapTypeId(),metaKey:this.metaKey,pois:this.pois,title:this.title,width:this.width,zoom:this.zoom}};this.ajaxSave=function(n){var t=JSON.stringify(this),i=!this.mapid||!this.postid?mappl10n.options.postid:this.postid;mapp.lib.ajax({type:"POST",data:{action:"mapp_save",map:t,postid:i},callback:function(t){t.status=="OK"&&(e.mapid=t.data.mapid,n(t.data),google.maps.event.trigger(e,"save"))}})}};mapp.Map.ajaxCreate=function(n,t){mapp.lib.ajax({type:"GET",data:{action:"mapp_create"},callback:function(i){if(i.status=="OK"){var r=new mapp.Map(i.data.map,n);t(r)}}})};mapp.Map.ajaxGet=function(n,t,i){mapp.lib.ajax({type:"GET",data:{action:"mapp_get",mapid:n},callback:function(n){if(n.status=="OK"){var r=new mapp.Map(n.data.map,t);i(r)}}})};mapp.Map.ajaxDelete=function(n,t){mapp.lib.ajax({type:"POST",data:{action:"mapp_delete",mapid:n},callback:function(n){n.status=="OK"&&t&&t()}})}}(jQuery);mapp=window.mapp||{};+function(n){mapp.Directions=function(t,i){this.sel=n(t);this.map=i;this.directionsRenderer=null;this.directionsService=null;this.placesService=null;var r=this;this.sel.on("keydown",function(n){n.which==13?(r.getDirections(),n.preventDefault()):n.which==27&&r.close()});this.sel.on("click","[data-mapp-action]",function(t){var f=n(this).attr("data-mapp-action"),i=n(".mapp-dir-daddr",r.sel).val(),u=n(".mapp-dir-saddr",r.sel).val();t.preventDefault();switch(f){case"dir-cancel":r.close();break;case"dir-get":r.getDirections();break;case"dir-google":r.openGoogle(u,i);r.close();break;case"dir-myloc":r.map.places.geolocate(function(t){n(".mapp-dir-saddr",r.sel).val(t.name);r.getDirections()});break;case"dir-swap":n(".mapp-dir-saddr",r.sel).val(i);n(".mapp-dir-daddr",r.sel).val(u);r.getDirections()}});this.open=function(t,i){if(mappl10n.options.directions=="google"){this.openGoogle(t,i);return}this.map.toggleView("directions",!0);n(".mapp-dir-addr",this.sel).removeClass("mapp-error");n(".mapp-dir-saddr",this.sel).val(t);n(".mapp-dir-daddr",this.sel).val(i);n(".mapp-dir-get",this.sel).focus();n(".mapp-dir-saddr",this.sel).focus()};this.close=function(){this.map.toggleView("directions",!1);this.directionsRenderer&&(this.directionsRenderer.setPanel(null),this.directionsRenderer.getMap()&&(this.directionsRenderer.setMap(null),this.map.togglePois(!0)))};this.getDirections=function(){var t;this.map.closeInfoWindow();n(".mapp-spinner",this.sel).css("visibility","visible");this.directionsService=this.directionsService?this.directionsService:new google.maps.DirectionsService;this.directionsRenderer=this.directionsRenderer?this.directionsRenderer:new google.maps.DirectionsRenderer({hideRouteList:!1,draggable:!0});this.placesService=this.placesService?this.placesService:new google.maps.places.PlacesService(this.map.getMap());n(".mapp-dir-renderer",this.sel).empty();t={travelMode:google.maps.DirectionsTravelMode.DRIVING,provideRouteAlternatives:!0,origin:n(".mapp-dir-saddr",this.sel).val(),destination:n(".mapp-dir-daddr",this.sel).val()};this.directionsService.route(t,function(t,i){(n(".mapp-spinner",r.sel).css("visibility","hidden"),n(".mapp-dir-addr",r.sel).removeClass("mapp-error"),n.each(t.geocoded_waypoints,function(t,i){n(".mapp-dir-addr",r.sel).eq(t).toggleClass("mapp-error",i.geocoder_status!="OK");i.place_id&&r.placesService.getDetails({placeId:i.place_id},function(i,u){if(u=="OK"){var f=i.formatted_address.replace(", USA","");f.indexOf(i.name)===-1&&(f=i.name+", "+f);n(".mapp-dir-addr",r.sel).eq(t).val(f)}})}),n(".mapp-dir-addr.mapp-error").length)||(i==google.maps.DirectionsStatus.OK?(r.map.togglePois(!1),r.directionsRenderer.setOptions({directions:t,map:r.map.getMap(),panel:n(".mapp-dir-renderer",r.sel).get(0)})):alert(mappl10n.dir_error+i))})};this.openGoogle=function(n,t){var i=mappl10n.options.directionsServer;i.toLowerCase().indexOf("http")==-1&&(i="https://"+i);i+="?saddr="+encodeURIComponent(n);i+="&daddr="+encodeURIComponent(t);window.open(i)}}}(jQuery);mapp=window.mapp||{};mapp.Geocoder=function(n){function r(n,t){jQuery(n).removeClass("mapp-error");jQuery(t).hide()}function u(n,t,i){jQuery(n).addClass("mapp-error");jQuery(t).html(i);jQuery(t).show()}var t,f,i=this;f=n;this.geocode=function(i,r){typeof i=="string"&&i.substring(0,1)=="("&&(split=i.replace(/\(|\)/g,"").split(","),i=new google.maps.LatLng(split[0],split[1]));var u=i instanceof google.maps.LatLng?{location:i}:{address:i,region:mappl10n.options.country,bounds:n.getBounds()};t||(t=new google.maps.Geocoder);t.geocode(u,function(n,t){if(n){for(var i=0;i<n.length;i++)n[i].formatted_address==""&&n.splice(i,1);r(n[0],t)}else r(null,t)})};this.geolocate=function(n){if(!navigator||!navigator.geolocation)return null;navigator.geolocation.getCurrentPosition(function(t){n(t)},function(){n(null)},{timeout:1e4,enableHighAccuracy:!0,maximumAge:3e4})};this.stringToLatLng=function(n){var t=n.split(",",2),i=Number(t[0]),r=Number(t[1]);return isNaN(i)||isNaN(r)?!1:new google.maps.LatLng(i,r)};this.geocodeField=function(n,t,i){r(n,t);checkAddress(n,t,jQuery(n).val(),function(r){if(!r){u(n,t,mappl10n.no_address);i(null);return}if(r&&r.formatted_address){jQuery(n).val(r.formatted_address);i(r.formatted_address);return}i(r);return})};this.autocompleteField=function(n,t,f,e,o){jQuery(n).keypress(function(i){i.which==13&&(checkAddress(n,t,jQuery(n).val(),o),i.preventDefault())});jQuery(f).click(function(){return checkAddress(n,t,jQuery(n).val(),o),!1});jQuery(e).click(function(){return r(n,t),i.geolocate(function(i){if(i){var r="("+i.coords.latitude+", "+i.coords.longitude+")";jQuery(n).val("");checkAddress(n,t,r,o)}else u(n,t,mappl10n.no_geolocate);return}),!1})};checkAddress=function(n,t,f,e){if(r(n,t),f=jQuery.trim(f),f==""){e(null);return}var o=i.stringToLatLng(f);if(o){e(o);return}if(f.substring(0,4)=="http"){e(f);return}i.geocode(f,function(i,r){if(!i||r!=google.maps.GeocoderStatus.OK){u(n,t,mappl10n.no_address);e(null);return}e(i);return})}};mapp.Geocoder.parseAddress=function(n){return!n||n==""?{firstLine:"",secondLine:""}:(n.lastIndexOf(", USA")>0||n.lastIndexOf(", United States")>0)&&(n.lastIndexOf(", USA")>0&&(n=n.slice(0,n.lastIndexOf(", USA"))),n.lastIndexOf(", United States")>0&&(n=n.slice(0,n.lastIndexOf(", United States"))),n.indexOf(",")==n.lastIndexOf(","))?{firstLine:n,secondLine:""}:n.indexOf(",")==-1?{firstLine:n,secondLine:""}:{firstLine:n.slice(0,n.indexOf(",")),secondLine:n.slice(n.indexOf(", ")+2)}};mapp=window.mapp||{};mapp.Icons={};mapp.Icons.get=function(){return"https://maps.google.com/intl/en_us/mapfiles/ms/micons/red-dot.png"};mapp.Icons.getUrl=function(){return"https://maps.google.com/intl/en_us/mapfiles/ms/micons/red-dot.png"};mapp=window.mapp||{};+function(n){mapp.InfoBox=function(t,i){var f=n.extend({border:20,disableAutoPan:!1},i),u=null,r=null,e=null,o=this;r=n('<div class="mapp-ib" tabindex="0">').appendTo(t.getMap().getDiv());e=n('<div class="mapp-ib-tip">').appendTo(t.getMap().getDiv());jQuery(window).resize(function(){o.close()});r.on("keydown",function(n){n.which==27&&o.close()});r.on("click",".mapp-close",function(){o.close()});this.getContent=function(){return r};this.setContent=function(n){r.empty().append(n)};this.open=function(n,t){u=t;this.setMap(n)};this.onAdd=function(){r.show();e.show();var t=n(":input",r);t.length?t.first().focus():r.focus();google.maps.event.trigger(o,"domready")};this.draw=function(){var l=this.getMap(),c=this.getProjection().fromLatLngToContainerPixel(u.position),t={width:n(l.getDiv()).width(),height:n(l.getDiv()).height()},v=n(".mapp-ib-body",r);if(!f.disableAutoPan){r.css({"max-height":"9999px",left:0,bottom:0,top:"auto",right:"auto"});var s=r.outerWidth(!0),h=r.outerHeight(!0),a=e.outerHeight(!0),i=c.x,o=c.y;i+s/2>t.width&&(i=t.width-s/2);i-s/2<0&&(i=s/2);o-h+u.anchorPoint.y-a<f.border&&(o=h-u.anchorPoint.y+f.border+a);o>t.height&&(o=t.height);l.panBy(c.x-i,c.y-o);h>t.height+u.anchorPoint.y-2*f.border&&(h=t.height+u.anchorPoint.y-2*f.border,r.css({"max-height":h+2}));r.css({left:i-s/2,bottom:t.height-o-u.anchorPoint.y+a});e.css({left:i,bottom:t.height-o-u.anchorPoint.y})}};this.close=function(){r.is(":visible")&&(this.setMap(null),google.maps.event.trigger(this,"closed"))};this.onRemove=function(){r.empty();r.hide();e.hide()}};mapp.InfoBox.prototype=new google.maps.OverlayView}(jQuery);mapp=window.mapp||{};+function(n){if(mapp.lib={ajax:function(t){var r=this,u,i;if(n.extend({type:"GET",cache:!1,data:null,spinner:null,callback:n.noop},t),t.cache)for(typeof mapp.lib.ajax.cache=="undefined"&&(mapp.lib.ajax.cache=[]),u=JSON.stringify(t.data),i=0;i<mapp.lib.ajax.cache.length;i++)if(mapp.lib.ajax.cache[i].hash==u){t.callback(mapp.lib.ajax.cache[i].response);return}return t.spinner&&t.spinner.show(),n.ajax({type:t.type,cache:!1,url:mappl10n.options.ajaxurl,data:t.data,success:function(n,i,u){if(t.spinner&&t.spinner.hide(),n.output){r.alert("AJAX Error\r\n"+n.output);return}if(n.status=="OK"){t.cache&&mapp.lib.ajax.cache.push({hash:JSON.stringify(t.data),response:n});t.callback&&t.callback(n,u);return}var f=typeof n=="object"?n.status:n;r.alert("AJAX ERROR\r\nResponse="+f+" TextStatus="+i+"\r\nResponseText="+u.responseText)},error:function(n,i,u){(t.spinner&&t.spinner.hide(),i!="cancel")&&typeof u!="undefined"&&u!=""&&r.alert("AJAX ERROR\r\nTextStatus="+i+"\r\nError="+u+"\r\nResponseText="+n.responseText)}})},alert:function(n){mappl10n.options.admin||mappl10n.options.debug?alert(n):window.console&&console.error(n)},jqVersionCheck:function(t){if(typeof n=="undefined"||typeof t=="undefined")return!1;for(t=t.split("."),v=n.fn.jquery.split("."),i=0;i<t.length;i++){var r=parseInt(t[i]),u=typeof v[i]!="undefined"?parseInt(v[i]):0;if(u!=r)return u>r}return!0},log:function(n){window.console&&console.error(n)},scrollTo:function(n,t){if(n&&t&&n.length&&t.length){var i=n.scrollTop(),u=n.height(),r=i+t.position().top,f=r+t.outerHeight(!0);r<i?n.scrollTop(r):f>i+u&&n.scrollTop(f-u)}},template:function(t,i){if(mapp.lib.templates=mapp.lib.templates?mapp.lib.templates:{},!mapp.lib.templates[t]){var r=mappl10n.options.templates?mappl10n.options.template[t]:n("#mapp-tmpl-"+t).html();if(r)mapp.lib.templates[t]=_.template(r.replace(/[\n\r\t]/g,""),null,{evaluate:/<#([\s\S]+?)#>/g,interpolate:/\{\{\{([\s\S]+?)\}\}\}/g,escape:/\{\{([^\}]+?)\}\}(?!\})/g});else return""}return mapp.lib.templates[t](i)}},typeof google=="undefined")return mapp.lib.alert("ERROR: Google Maps API not loaded");if(!mappl10n.options.apiKey)return mapp.lib.alert("ERROR: Google Maps API Key missing, please check MapPress settings and FAQ");n(document).ready(function(){n('script[src*="https://maps.googleapis.com/maps/api/js?v=3"]').length>1&&mapp.lib.alert("ERROR: Google Maps API key loaded multiple times, please see MapPress FAQ.")});mapp.lib.jqVersionCheck("1.7")||mapp.lib.alert("jQuery version is too old: "+n.fn.jquery);n("body").on("tabsactivate tabsshow",function(t,i){var r=i.newPanel?i.newPanel:i.panel;r&&n(".mapp-layout",r).each(function(){var i=n(this).attr("id"),t=window[i];t.resize();t.initCenter()})})}(jQuery);mapp=window.mapp||{};+function(n){mapp.Places=function(t,i){var u=this,r;if(this.sel=n(t),this.opts=n.extend({map:null,types:[]},i),r=n('<div style="display:none">').appendTo("body"),this.placesService=new google.maps.places.PlacesService(r.get(0)),this.autocompleteService=new google.maps.places.AutocompleteService,this.sel.length){this.autocomplete=new google.maps.places.Autocomplete(this.sel.get(0),{types:this.opts.types});this.autocomplete.bindTo("bounds",this.opts.map.getMap());this.sel.on("keydown",function(n){n.which==13&&n.preventDefault()});google.maps.event.addListener(this.autocomplete,"place_changed",function(){u.parse(this.getPlace())})}};mapp.Places.prototype={parse:function(t){var u,i=this,r,e,f;if(this.error(!1),r=t&&t.name?n.trim(t.name):n.trim(t),!r)return this.error(!0);if(r=="user"){this.geolocate(function(n){google.maps.event.trigger(i,"search",n)});return}if(r.substring(0,4)=="http"){google.maps.event.trigger(i,"search",r);return}if(t&&t.geometry){t.formatted_address&&this.set(t.formatted_address);google.maps.event.trigger(i,"search",t);return}if(e=this.parseLatLng(t),e){google.maps.event.trigger(i,"search",e);return}f=this.opts.map.getMap().getBounds();f=f?f:new google.maps.LatLngBounds(new google.maps.LatLng(85,-180),new google.maps.LatLng(-85,180));this.autocompleteService.getPlacePredictions({input:r,types:this.opts.types,bounds:f},function(n,t){if(t!="OK"||n==null||n.length==0)return i.error(!0);u=typeof n[0].description!="undefined"?n[0].description:null;i.placesService.getDetails({placeId:n[0].place_id},function(n,t){if(t!="OK"||!n||!n.geometry)return i.error(!0);u=u?u:n.formatted_address;i.set(u);google.maps.event.trigger(i,"search",n)})})},parseLatLng:function(t){var i,u,r;return t instanceof google.maps.LatLng?i=t:t&&t.lat&&t.lng?i=new google.maps.LatLng(t.lat,t.lng):(u=t&&t.name?n.trim(t.name):n.trim(t),r=u.split(","),r.length!=2||isNaN(r[0])||isNaN(r[1])||(i=new google.maps.LatLng(r[0],r[1]))),i?{name:i.toUrlValue(),geometry:{location:i}}:null},geolocate:function(n){var t=this;if(!navigator||!navigator.geolocation){alert(mappl10n.no_geolocate);return}navigator.geolocation.getCurrentPosition(function(i){t.set("");var r=new google.maps.LatLng(i.coords.latitude,i.coords.longitude);n({name:r.toUrlValue(),geometry:{location:r}})},function(n){var t=n&&n.message?" : "+n.message:"";alert(mappl10n.no_geolocate+t)},{timeout:15e3,enableHighAccuracy:!0,maximumAge:3e4})},set:function(n){n=n.replace(", United States of America","").replace(", USA","").replace(", United States","");this.sel.val(n);this.error(!1)},get:function(){return n.trim(this.sel.val())},focus:function(){this.sel.focus()},error:function(n){this.sel.toggleClass("mapp-error",!!n)},destroy:function(){this.autocomplete.unbindAll();google.maps.event.clearInstanceListeners(this.sel.get(0))}}}(jQuery);mapp=window.mapp||{};+function(n){mapp.Poi=function(t){var f,e,r,s,i,u,h,o;if(this.defaults={address:null,body:null,html:null,iconid:null,kml:null,map:null,overlay:null,postid:null,title:"",url:null,type:null,viewport:null},n.extend(this,this.defaults,t),t&&t.correctedAddress&&(this.address=t.correctedAddress),t.viewport&&t.viewport.sw&&t.viewport.ne&&(f=new google.maps.LatLng(t.viewport.sw.lat,t.viewport.sw.lng),e=new google.maps.LatLng(t.viewport.ne.lat,t.viewport.ne.lng),this.viewport=f.lat()==0&&f.lng()==0&&e.lat()==0&&e.lng()==0?null:new google.maps.LatLngBounds(f,e)),r=[],s=[],!t.overlay)switch(this.type){case"polygon":if(t.poly&&t.poly.paths)for(i=0;i<t.poly.paths.length;i++){for(r=[],u=0;u<t.poly.paths[i].length;u++)r.push(new google.maps.LatLng(t.poly.paths[i][u].lat,t.poly.paths[i][u].lng));s.push(new google.maps.MVCArray(r))}this.overlay=new google.maps.Polygon({paths:new google.maps.MVCArray(s)});this.setColors(t.poly);break;case"polyline":if(t.poly&&t.poly.path)for(i=0;i<t.poly.path.length;i++)r.push(new google.maps.LatLng(t.poly.path[i].lat,t.poly.path[i].lng));this.overlay=new google.maps.Polyline({path:new google.maps.MVCArray(r)});this.setColors(t.poly);break;case"circle":o=new google.maps.LatLng(t.point.lat,t.point.lng);this.overlay=new google.maps.Circle({center:o,radius:parseFloat(t.poly.radius)});this.setColors(t.poly);break;case"rectangle":this.overlay=new google.maps.Rectangle({bounds:this.viewport});this.setColors(t.poly);break;case"kml":h=t.kml&&t.kml.url?t.kml.url:"";this.overlay=new google.maps.KmlLayer(h,{preserveViewport:!0,suppressInfoWindows:!0});break;case"":default:o=new google.maps.LatLng(t.point.lat,t.point.lng);this.overlay=new google.maps.Marker({position:o})}};mapp.Poi.prototype={toJSON:function(){var n={address:this.address,body:this.body,correctedAddress:this.address,iconid:this.iconid,point:null,poly:null,title:this.title,type:this.type,viewport:null},r=this.getPosition(),t,i;if(n.point={lat:r.lat(),lng:r.lng()},t=this.viewport?this.viewport:this.getBounds(),t&&(n.viewport={sw:{lat:t.getSouthWest().lat(),lng:t.getSouthWest().lng()},ne:{lat:t.getNorthEast().lat(),lng:t.getNorthEast().lng()}}),this.type=="kml"&&(n.kml={url:this.overlay.getUrl()}),this.isPoly()){n.poly=this.getColors();switch(this.type){case"circle":n.poly.radius=this.overlay.getRadius();break;case"polyline":n.poly.path=[];this.overlay.getPath().forEach(function(t){n.poly.path.push({lat:t.lat(),lng:t.lng()})});break;case"polygon":n.poly.paths=[];this.overlay.getPaths().forEach(function(t){var i=[];t.forEach(function(n){i.push({lat:n.lat(),lng:n.lng()})});n.poly.paths.push(i)});break;case"rectangle":i=this.overlay.getBounds();n.viewport={sw:{lat:i.getSouthWest().lat(),lng:i.getSouthWest().lng()},ne:{lat:i.getNorthEast().lat(),lng:i.getNorthEast().lng()}}}}return n},setMap:function(t){var i=this;if(google.maps.event.clearInstanceListeners(this.overlay),t==null){this.overlay.setMap(null);return}this.type=="kml"&&(google.maps.event.addListener(this.overlay,"defaultviewport_changed",function(){i.viewport=i.overlay.getDefaultViewport()}),google.maps.event.addListener(this.overlay,"status_changed",function(){var n=i.overlay.getStatus();n!="OK"&&mappl10n.ajaxErrors&&alert(mappl10n.kml_error+":"+n)}));this.map=t;this.overlay.setMap(t.getMap());this.setEditable(this.map.editable);this.setIcon(this.iconid);this.type||this.overlay.setTitle(n("<div>").html(this.title).text());google.maps.event.addListener(this.overlay,"click",function(n){i.open(n)})},setEditable:function(n){var t=this;this.type!="kml"&&(this.overlay.setDraggable(n),this.isPoly()&&this.overlay.setEditable(n),google.maps.event.clearListeners(this.overlay,"rightclick"),google.maps.event.clearListeners(this.overlay,"dragstart"),n&&(google.maps.event.addListener(this.overlay,"dragstart",function(){t.viewport=null;t.map.closeInfoWindow()}),(this.type=="polygon"||this.type=="polyline")&&google.maps.event.addListener(this.overlay,"rightclick",function(n){n.vertex!=null&&t.overlay.getPath().getLength()>2&&t.overlay.getPath().removeAt(n.vertex)})))},setZIndex:function(n){this.overlay.set("zIndex",n)},select:function(){},setIcon:function(n){this.type||typeof mapp.Icons=="undefined"||(this.overlay.setIcon(null),this.overlay.setIcon(mapp.Icons.get(n)),this.iconid=n)},setVisible:function(n){typeof this.overlay.setVisible!="undefined"&&this.overlay.setVisible(n)},setColors:function(n){var i={};for(var t in{strokeColor:"",strokeOpacity:"",strokeWeight:"",fillColor:"",fillOpacity:""})n&&typeof n[t]!="undefined"&&(i[t]=n[t]);this.overlay.setOptions(i)},getColors:function(){var t={};for(var n in{strokeColor:"",strokeOpacity:"",strokeWeight:"",fillColor:"",fillOpacity:""})typeof this.overlay[n]!="undefined"&&(t[n]=this.overlay[n]);return t},center:function(t){var i=this.map.getMap(),u=this.getBounds(),r,t;if(typeof t=="number"){i.setCenter(this.getPosition());i.setZoom(t);return}if(!u){i.setCenter(this.getPosition());i.setZoom(parseInt(mappl10n.options.poiZoom));return}r=u.getNorthEast().lng()-u.getSouthWest().lng();r<0&&(r+=360);t=Math.round(Math.log(n(i.getDiv()).width()*360/r/256)/Math.LN2);i.setCenter(this.getPosition());i.setZoom(t)},open:function(n){this.map.openInfoWindow(this,n)},isPoly:function(){return jQuery.inArray(this.type,["polyline","polygon","circle","rectangle"])!=-1},getBounds:function(){var n;switch(this.type){case"polyline":n=new google.maps.LatLngBounds;this.overlay.getPath().forEach(function(t){n.extend(t)});break;case"polygon":n=new google.maps.LatLngBounds;this.overlay.getPaths().forEach(function(t){t.forEach(function(t){n.extend(t)})});break;case"rectangle":case"circle":n=this.overlay.getBounds();break;case"kml":n=this.overlay.getDefaultViewport();n=n?n:this.viewport;break;default:return this.viewport}return n},getPosition:function(n){if(!this.type)return this.overlay.getPosition();if(this.type=="kml"&&n&&n.latLng)return n.latLng;var t=this.getBounds();return t?t.getCenter():new google.maps.LatLng(0,0)},click:function(){google.maps.event.trigger(this.overlay,"click")},getAddress:function(){return this.address?this.address:this.type=="kml"?this.kml.url:this.getPosition().toUrlValue()},getAnchorPoint:function(n){return this.type=="kml"?n&&n.pixelOffset?new google.maps.Point(n.pixelOffset.width,n.pixelOffset.height):new google.maps.Point(0,0):this.type?new google.maps.Point(0,0):typeof this.overlay.anchorPoint!="undefined"?this.overlay.anchorPoint:new google.maps.Point(0,-32)}}}(jQuery);mapp=window.mapp||{};mapp.widgets={};+function(n){mapp.widgets.Grid=function(t,i){this.el=n(t);this.options=jQuery.extend({action:null,sortable:!1},i);var r=this;this.table=n("table",this.el);this.template=n("script",this.el).html().replace(new RegExp("'","g"),'"');this.el.on("click",function(t){var u=n(t.target),i=u.attr("data-mapp-action");i&&(r[i](t),t.preventDefault())})};mapp.widgets.Grid.prototype={add:function(){this.table.show();var t=n(this.template).appendTo(this.table);n(":input:eq(0)",t).focus()},remove:function(t){var i=n(t.target).closest("tr").remove();n("tbody > tr",this.table).length||this.table.hide()}}}(jQuery);+function(n){mapp.widgets.Popup=function(t,i){this.options=n.extend({destroy:!1,fullscreen:!1,modal:!1,position:null,toggle:null},i);this.activeToggle=null;var r=this;this.el=n('<div class="mapp-popup" tabindex="-1">').appendTo("body").hide();this.setContent(t);this.el.on("focusout",function(t){n.contains(r.el.get(0),t.relatedTarget)||r.el.get(0)==t.relatedTarget||r.close()});if(this.options.toggle)n(document).on("click",this.options.toggle,function(t){r.activeToggle=n(this);r.open();t.stopPropagation()});this.el.on("click",".mapp-close",function(){r.close()});this.el.on("keydown",function(n){n.which==27&&r.close()});return this};mapp.widgets.Popup.prototype={close:function(){this.el.is(":visible")&&(this.backdrop&&this.backdrop.remove(),n("body").removeClass("mapp-popup-open"),this.el.hide(),this.activeToggle.focus(),this.el.trigger("closed.mapp.popup"))},destroy:function(){this.el.remove();n(document).off("click.mapp.popup",function(){me.close()})},open:function(){var i=this,t;n(document).trigger("click.mapp.popup");this.el.trigger("open.mapp.popup");this.el.show();this.options.modal||this.el.position(n.extend({my:"center bottom",at:"center top-5",of:this.activeToggle,collision:"flipfit"},this.options.position));t=n(":input",this.el);t.length?t.first().focus():this.el.focus();this.options.modal&&(this.backdrop=n('<div class="mapp-backdrop"><\/div>'),this.el.after(this.backdrop),n("body").addClass("mapp-popup-open"))},setContent:function(n){this.el.empty();this.el.append('<span class="mapp-close">');this.el.append(n)},toggle:function(){this.el.is(":visible")?this.close():this.open()}}}(jQuery);+function(){mapp.load=function(){if(typeof mapp!="undefined"&&mapp.data)while(mapp.data.length){var n=mapp.data.pop();window[n.name]=new mapp.Map(n);window[n.name].display()}}}(jQuery);typeof mapp.Media!="undefined"?window.mappEditor=new mapp.Media:mapp.load()
|
js/mappress_settings.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
+function(n){function t(i){i=i?i:0;i==0&&n(".mapp-log").empty();mapp.lib.ajax({data:{action:"mapp_import"},callback:function(i){n(".mapp-log").append(i.data.log.join("<br/>"),"<br/>");i.data.start>=0?t(i.data.start):n(".mapp-spinner").hide()}})}n(document).ready(function(){n(document).on("focus",".mapp-expand",function(){n(this).parent().width("100%");n(this).attr("rows",20)});n(document).on("blur",".mapp-expand",function(){n(this).parent().width("auto");n(this).attr("rows",1)});n(".mapp-autoicons").on("change","#mapp-autoicons-key",function(){mapp.lib.ajax({data:{action:"mapp_autoicons_form",key:n(this).val()},callback:function(t){n(".mapp-autoicons").html(t.data);new mapp.widgets.Grid(n("[data-mapp-grid]",".mapp-autoicons"))}})});
|
1 |
+
+function(n){function t(i){i=i?i:0;i==0&&n(".mapp-log").empty();mapp.lib.ajax({data:{action:"mapp_import"},callback:function(i){n(".mapp-log").append(i.data.log.join("<br/>"),"<br/>");i.data.start>=0?t(i.data.start):n(".mapp-spinner").hide()}})}n(document).ready(function(){n("[data-mapp-grid]").each(function(n,t){new mapp.widgets.Grid(t)});n(document).on("focus",".mapp-expand",function(){n(this).parent().width("100%");n(this).attr("rows",20)});n(document).on("blur",".mapp-expand",function(){n(this).parent().width("auto");n(this).attr("rows",1)});n(".mapp-autoicons").on("change","#mapp-autoicons-key",function(){mapp.lib.ajax({data:{action:"mapp_autoicons_form",key:n(this).val()},callback:function(t){n(".mapp-autoicons").html(t.data);new mapp.widgets.Grid(n("[data-mapp-grid]",".mapp-autoicons"))}})});n("#mapp-filters tbody").sortable({handle:".mapp-handle"});n(".mapp-confirm").on("change",function(){var t=n(".mapp-confirm").is(":checked");n(".mapp-import").prop("disabled",!t)});n(".mapp-import").on("click",function(){n(".mapp-confirm, .mapp-import").prop("disabled",!0);t()})})}(jQuery)
|
languages/mappress-google-maps-for-wordpress.pot
CHANGED
@@ -2,9 +2,9 @@
|
|
2 |
# This file is distributed under the same license as the MapPress Easy Google Maps package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: MapPress Easy Google Maps 2.48.
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/mappress-google-maps-for-wordpress\n"
|
7 |
-
"POT-Creation-Date: 2018-03-
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -57,7 +57,7 @@ msgstr ""
|
|
57 |
msgid "Map Title"
|
58 |
msgstr ""
|
59 |
|
60 |
-
#: forms/map_media.php:20 languages/texts.php:51 mappress.php:
|
61 |
#: mappress_map.php:591
|
62 |
msgid "Untitled"
|
63 |
msgstr ""
|
@@ -98,43 +98,43 @@ msgstr ""
|
|
98 |
msgid "Size"
|
99 |
msgstr ""
|
100 |
|
101 |
-
#: languages/texts.php:20 mappress.php:
|
102 |
msgid "Version"
|
103 |
msgstr ""
|
104 |
|
105 |
-
#: languages/texts.php:21 mappress.php:
|
106 |
msgid "Documentation"
|
107 |
msgstr ""
|
108 |
|
109 |
-
#: languages/texts.php:22 mappress.php:
|
110 |
msgid "Support"
|
111 |
msgstr ""
|
112 |
|
113 |
-
#: languages/texts.php:23 mappress.php:
|
114 |
msgid "Upgrade to MapPress Pro"
|
115 |
msgstr ""
|
116 |
|
117 |
-
#: languages/texts.php:24 mappress.php:
|
118 |
msgid "MapPress database tables are missing. Please deactivate the plugin and activate it again to fix this."
|
119 |
msgstr ""
|
120 |
|
121 |
-
#: languages/texts.php:25 mappress.php:
|
122 |
msgid "WARNING: MapPress now requires WordPress 3.2 or higher. Please upgrade before using MapPress."
|
123 |
msgstr ""
|
124 |
|
125 |
-
#: languages/texts.php:26 mappress.php:
|
126 |
msgid "WARNING: MapPress is not compfatible with the WP-Geo plugin. Please deactivate or uninstall WP-Geo before using MapPress."
|
127 |
msgstr ""
|
128 |
|
129 |
-
#: languages/texts.php:27 mappress.php:
|
130 |
msgid "A Google Maps API key is required"
|
131 |
msgstr ""
|
132 |
|
133 |
-
#: languages/texts.php:28 mappress.php:
|
134 |
msgid "Please update your"
|
135 |
msgstr ""
|
136 |
|
137 |
-
#: languages/texts.php:29 mappress.php:
|
138 |
msgid "MapPress Settings"
|
139 |
msgstr ""
|
140 |
|
@@ -150,7 +150,7 @@ msgstr ""
|
|
150 |
msgid "One of the addresses could not be found."
|
151 |
msgstr ""
|
152 |
|
153 |
-
#: languages/texts.php:33 mappress.php:
|
154 |
msgid "Google cannot return directions between those addresses. There is no route between them or the routing information is not available."
|
155 |
msgstr ""
|
156 |
|
@@ -162,7 +162,7 @@ msgstr ""
|
|
162 |
msgid "Directions"
|
163 |
msgstr ""
|
164 |
|
165 |
-
#: languages/texts.php:36 mappress.php:
|
166 |
msgid "Error reading KML file"
|
167 |
msgstr ""
|
168 |
|
@@ -170,11 +170,11 @@ msgstr ""
|
|
170 |
msgid "Loading..."
|
171 |
msgstr ""
|
172 |
|
173 |
-
#: languages/texts.php:38 mappress.php:
|
174 |
msgid "No matching address"
|
175 |
msgstr ""
|
176 |
|
177 |
-
#: languages/texts.php:39 mappress.php:
|
178 |
msgid "Unable to get your location"
|
179 |
msgstr ""
|
180 |
|
@@ -203,11 +203,11 @@ msgstr ""
|
|
203 |
msgid "Click to change"
|
204 |
msgstr ""
|
205 |
|
206 |
-
#: languages/texts.php:47
|
207 |
msgid "Delete this POI?"
|
208 |
msgstr ""
|
209 |
|
210 |
-
#: languages/texts.php:48 mappress.php:
|
211 |
msgid "Delete this map?"
|
212 |
msgstr ""
|
213 |
|
@@ -215,7 +215,7 @@ msgstr ""
|
|
215 |
msgid "Please save the map first"
|
216 |
msgstr ""
|
217 |
|
218 |
-
#: languages/texts.php:50 mappress.php:
|
219 |
msgid "Shape"
|
220 |
msgstr ""
|
221 |
|
@@ -255,7 +255,7 @@ msgstr ""
|
|
255 |
msgid "Directions from"
|
256 |
msgstr ""
|
257 |
|
258 |
-
#: languages/texts.php:61 mappress_settings.php:
|
259 |
msgid "Basic Settings"
|
260 |
msgstr ""
|
261 |
|
@@ -628,11 +628,11 @@ msgstr ""
|
|
628 |
msgid "%s on WordPress.org"
|
629 |
msgstr ""
|
630 |
|
631 |
-
#: languages/texts.php:154
|
632 |
msgid "Thanks for your support!"
|
633 |
msgstr ""
|
634 |
|
635 |
-
#: languages/texts.php:155 mappress_settings.php:
|
636 |
msgid "Easy Google Maps"
|
637 |
msgstr ""
|
638 |
|
@@ -640,19 +640,19 @@ msgstr ""
|
|
640 |
msgid "Like this plugin?"
|
641 |
msgstr ""
|
642 |
|
643 |
-
#: languages/texts.php:157 mappress_settings.php:
|
644 |
msgid "Sample Map"
|
645 |
msgstr ""
|
646 |
|
647 |
-
#: languages/texts.php:158 mappress_settings.php:
|
648 |
msgid "Save Changes"
|
649 |
msgstr ""
|
650 |
|
651 |
-
#: languages/texts.php:159 mappress_settings.php:
|
652 |
msgid "Reset Defaults"
|
653 |
msgstr ""
|
654 |
|
655 |
-
#: languages/texts.php:160 mappress.php:
|
656 |
msgid "Settings"
|
657 |
msgstr ""
|
658 |
|
@@ -1024,15 +1024,19 @@ msgstr ""
|
|
1024 |
msgid "Chris Richardson"
|
1025 |
msgstr ""
|
1026 |
|
1027 |
-
#: mappress.php:
|
1028 |
msgid "Loading"
|
1029 |
msgstr ""
|
1030 |
|
1031 |
-
#: mappress.php:
|
1032 |
msgid "%d results shown. Zoom in to see more."
|
1033 |
msgstr ""
|
1034 |
|
1035 |
-
#:
|
|
|
|
|
|
|
|
|
1036 |
msgid "MapPress"
|
1037 |
msgstr ""
|
1038 |
|
@@ -1044,12 +1048,12 @@ msgstr ""
|
|
1044 |
msgid "List"
|
1045 |
msgstr ""
|
1046 |
|
1047 |
-
#: mappress_settings.php:
|
1048 |
-
msgid "
|
1049 |
msgstr ""
|
1050 |
|
1051 |
#: mappress_settings.php:84
|
1052 |
-
msgid "
|
1053 |
msgstr ""
|
1054 |
|
1055 |
#: mappress_settings.php:88
|
@@ -1092,14 +1096,6 @@ msgstr ""
|
|
1092 |
msgid "Height (px)"
|
1093 |
msgstr ""
|
1094 |
|
1095 |
-
#: mappress_settings.php:278
|
1096 |
-
msgid "rate it 5 Stars"
|
1097 |
-
msgstr ""
|
1098 |
-
|
1099 |
-
#: mappress_settings.php:280
|
1100 |
-
msgid "Please %s on WordPress.org."
|
1101 |
-
msgstr ""
|
1102 |
-
|
1103 |
#: pro/mappress_filter.php:118
|
1104 |
msgid "Taxonomy"
|
1105 |
msgstr ""
|
2 |
# This file is distributed under the same license as the MapPress Easy Google Maps package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: MapPress Easy Google Maps 2.48.3\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/mappress-google-maps-for-wordpress\n"
|
7 |
+
"POT-Creation-Date: 2018-03-16 23:13:04+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
57 |
msgid "Map Title"
|
58 |
msgstr ""
|
59 |
|
60 |
+
#: forms/map_media.php:20 languages/texts.php:51 mappress.php:611
|
61 |
#: mappress_map.php:591
|
62 |
msgid "Untitled"
|
63 |
msgstr ""
|
98 |
msgid "Size"
|
99 |
msgstr ""
|
100 |
|
101 |
+
#: languages/texts.php:20 mappress.php:159
|
102 |
msgid "Version"
|
103 |
msgstr ""
|
104 |
|
105 |
+
#: languages/texts.php:21 mappress.php:167
|
106 |
msgid "Documentation"
|
107 |
msgstr ""
|
108 |
|
109 |
+
#: languages/texts.php:22 mappress.php:168
|
110 |
msgid "Support"
|
111 |
msgstr ""
|
112 |
|
113 |
+
#: languages/texts.php:23 mappress.php:170
|
114 |
msgid "Upgrade to MapPress Pro"
|
115 |
msgstr ""
|
116 |
|
117 |
+
#: languages/texts.php:24 mappress.php:449
|
118 |
msgid "MapPress database tables are missing. Please deactivate the plugin and activate it again to fix this."
|
119 |
msgstr ""
|
120 |
|
121 |
+
#: languages/texts.php:25 mappress.php:454
|
122 |
msgid "WARNING: MapPress now requires WordPress 3.2 or higher. Please upgrade before using MapPress."
|
123 |
msgstr ""
|
124 |
|
125 |
+
#: languages/texts.php:26 mappress.php:459
|
126 |
msgid "WARNING: MapPress is not compfatible with the WP-Geo plugin. Please deactivate or uninstall WP-Geo before using MapPress."
|
127 |
msgstr ""
|
128 |
|
129 |
+
#: languages/texts.php:27 mappress.php:464
|
130 |
msgid "A Google Maps API key is required"
|
131 |
msgstr ""
|
132 |
|
133 |
+
#: languages/texts.php:28 mappress.php:464
|
134 |
msgid "Please update your"
|
135 |
msgstr ""
|
136 |
|
137 |
+
#: languages/texts.php:29 mappress.php:464
|
138 |
msgid "MapPress Settings"
|
139 |
msgstr ""
|
140 |
|
150 |
msgid "One of the addresses could not be found."
|
151 |
msgstr ""
|
152 |
|
153 |
+
#: languages/texts.php:33 mappress.php:602
|
154 |
msgid "Google cannot return directions between those addresses. There is no route between them or the routing information is not available."
|
155 |
msgstr ""
|
156 |
|
162 |
msgid "Directions"
|
163 |
msgstr ""
|
164 |
|
165 |
+
#: languages/texts.php:36 mappress.php:603
|
166 |
msgid "Error reading KML file"
|
167 |
msgstr ""
|
168 |
|
170 |
msgid "Loading..."
|
171 |
msgstr ""
|
172 |
|
173 |
+
#: languages/texts.php:38 mappress.php:606
|
174 |
msgid "No matching address"
|
175 |
msgstr ""
|
176 |
|
177 |
+
#: languages/texts.php:39 mappress.php:607
|
178 |
msgid "Unable to get your location"
|
179 |
msgstr ""
|
180 |
|
203 |
msgid "Click to change"
|
204 |
msgstr ""
|
205 |
|
206 |
+
#: languages/texts.php:47
|
207 |
msgid "Delete this POI?"
|
208 |
msgstr ""
|
209 |
|
210 |
+
#: languages/texts.php:48 mappress.php:609
|
211 |
msgid "Delete this map?"
|
212 |
msgstr ""
|
213 |
|
215 |
msgid "Please save the map first"
|
216 |
msgstr ""
|
217 |
|
218 |
+
#: languages/texts.php:50 mappress.php:610
|
219 |
msgid "Shape"
|
220 |
msgstr ""
|
221 |
|
255 |
msgid "Directions from"
|
256 |
msgstr ""
|
257 |
|
258 |
+
#: languages/texts.php:61 mappress_settings.php:79
|
259 |
msgid "Basic Settings"
|
260 |
msgstr ""
|
261 |
|
628 |
msgid "%s on WordPress.org"
|
629 |
msgstr ""
|
630 |
|
631 |
+
#: languages/texts.php:154
|
632 |
msgid "Thanks for your support!"
|
633 |
msgstr ""
|
634 |
|
635 |
+
#: languages/texts.php:155 mappress_settings.php:280
|
636 |
msgid "Easy Google Maps"
|
637 |
msgstr ""
|
638 |
|
640 |
msgid "Like this plugin?"
|
641 |
msgstr ""
|
642 |
|
643 |
+
#: languages/texts.php:157 mappress_settings.php:292
|
644 |
msgid "Sample Map"
|
645 |
msgstr ""
|
646 |
|
647 |
+
#: languages/texts.php:158 mappress_settings.php:314
|
648 |
msgid "Save Changes"
|
649 |
msgstr ""
|
650 |
|
651 |
+
#: languages/texts.php:159 mappress_settings.php:315
|
652 |
msgid "Reset Defaults"
|
653 |
msgstr ""
|
654 |
|
655 |
+
#: languages/texts.php:160 mappress.php:153
|
656 |
msgid "Settings"
|
657 |
msgstr ""
|
658 |
|
1024 |
msgid "Chris Richardson"
|
1025 |
msgstr ""
|
1026 |
|
1027 |
+
#: mappress.php:604
|
1028 |
msgid "Loading"
|
1029 |
msgstr ""
|
1030 |
|
1031 |
+
#: mappress.php:605
|
1032 |
msgid "%d results shown. Zoom in to see more."
|
1033 |
msgstr ""
|
1034 |
|
1035 |
+
#: mappress.php:608
|
1036 |
+
msgid "Are you sure you want to delete?"
|
1037 |
+
msgstr ""
|
1038 |
+
|
1039 |
+
#: mappress_map.php:93 mappress_settings.php:297
|
1040 |
msgid "MapPress"
|
1041 |
msgstr ""
|
1042 |
|
1048 |
msgid "List"
|
1049 |
msgstr ""
|
1050 |
|
1051 |
+
#: mappress_settings.php:80
|
1052 |
+
msgid "Google API key"
|
1053 |
msgstr ""
|
1054 |
|
1055 |
#: mappress_settings.php:84
|
1056 |
+
msgid "License"
|
1057 |
msgstr ""
|
1058 |
|
1059 |
#: mappress_settings.php:88
|
1096 |
msgid "Height (px)"
|
1097 |
msgstr ""
|
1098 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1099 |
#: pro/mappress_filter.php:118
|
1100 |
msgid "Taxonomy"
|
1101 |
msgstr ""
|
languages/texts.php
CHANGED
@@ -252,11 +252,12 @@ __("MapPress makes it easy to insert Google Maps in WordPress posts and pages.")
|
|
252 |
__("Chris Richardson");
|
253 |
__("Loading");
|
254 |
__("%d results shown. Zoom in to see more.");
|
|
|
255 |
__("MapPress");
|
256 |
__("Filter");
|
257 |
__("List");
|
258 |
-
__("License");
|
259 |
__("Google API key");
|
|
|
260 |
__("Automatic display");
|
261 |
__("Compatiblity");
|
262 |
__("Country code");
|
@@ -267,8 +268,6 @@ __("disable if maps are output using AJAX");
|
|
267 |
__("%s for map controls");
|
268 |
__("Width (px or %)");
|
269 |
__("Height (px)");
|
270 |
-
__("rate it 5 Stars");
|
271 |
-
__("Please %s on WordPress.org.");
|
272 |
__("Taxonomy");
|
273 |
__("Post field");
|
274 |
__("MapPress license key");
|
252 |
__("Chris Richardson");
|
253 |
__("Loading");
|
254 |
__("%d results shown. Zoom in to see more.");
|
255 |
+
__("Are you sure you want to delete?");
|
256 |
__("MapPress");
|
257 |
__("Filter");
|
258 |
__("List");
|
|
|
259 |
__("Google API key");
|
260 |
+
__("License");
|
261 |
__("Automatic display");
|
262 |
__("Compatiblity");
|
263 |
__("Country code");
|
268 |
__("%s for map controls");
|
269 |
__("Width (px or %)");
|
270 |
__("Height (px)");
|
|
|
|
|
271 |
__("Taxonomy");
|
272 |
__("Post field");
|
273 |
__("MapPress license key");
|
mappress.php
CHANGED
@@ -4,7 +4,7 @@ Plugin Name: MapPress Easy Google Maps
|
|
4 |
Plugin URI: http://www.wphostreviews.com/mappress
|
5 |
Author URI: http://www.wphostreviews.com/mappress
|
6 |
Description: MapPress makes it easy to insert Google Maps in WordPress posts and pages.
|
7 |
-
Version: 2.48.
|
8 |
Author: Chris Richardson
|
9 |
Text Domain: mappress-google-maps-for-wordpress
|
10 |
Thanks to all the translators and to Matthias Stasiak for his wonderful icons (http://code.google.com/p/google-maps-icons/)
|
@@ -34,7 +34,7 @@ if (is_dir(dirname( __FILE__ ) . '/pro')) {
|
|
34 |
}
|
35 |
|
36 |
class Mappress {
|
37 |
-
const VERSION = '2.48.
|
38 |
|
39 |
static
|
40 |
$baseurl,
|
@@ -42,6 +42,7 @@ class Mappress {
|
|
42 |
$basedir,
|
43 |
$debug,
|
44 |
$loaded,
|
|
|
45 |
$options,
|
46 |
$pages,
|
47 |
$pro,
|
@@ -92,6 +93,9 @@ class Mappress {
|
|
92 |
add_action('wp_print_scripts', array(__CLASS__, 'deregister'), -1);
|
93 |
}
|
94 |
|
|
|
|
|
|
|
95 |
// Slow heartbeat
|
96 |
if (self::$debug)
|
97 |
add_filter( 'heartbeat_settings', array(__CLASS__, 'heartbeat_settings'));
|
@@ -168,10 +172,15 @@ class Mappress {
|
|
168 |
echo $html;
|
169 |
}
|
170 |
|
171 |
-
static function ajax_response($status, $data=null) {
|
172 |
$output = trim(ob_get_clean()); // Ignore whitespace, any other output is an error
|
173 |
header( "Content-Type: application/json" );
|
174 |
-
|
|
|
|
|
|
|
|
|
|
|
175 |
$response = json_encode(array('status' => $status, 'output' => $output, 'data' => $data));
|
176 |
die ($response);
|
177 |
}
|
@@ -364,8 +373,11 @@ class Mappress {
|
|
364 |
$editing = in_array($hook, array('edit.php', 'post.php', 'post-new.php'));
|
365 |
|
366 |
// Settings scripts
|
367 |
-
if ($hook == self::$pages[0])
|
368 |
self::load('settings');
|
|
|
|
|
|
|
369 |
|
370 |
// CSS
|
371 |
if (in_array($hook, self::$pages) || $editing) {
|
@@ -428,39 +440,55 @@ class Mappress {
|
|
428 |
// Sanity checks via notices
|
429 |
static function admin_notices() {
|
430 |
global $wpdb;
|
431 |
-
$error = "<div
|
432 |
|
433 |
$map_table = $wpdb->prefix . "mappress_maps";
|
434 |
$exists = $wpdb->get_var("show tables like '$map_table'");
|
435 |
|
436 |
if (!$exists) {
|
437 |
-
|
438 |
return;
|
439 |
}
|
440 |
|
441 |
if (get_bloginfo('version') < "3.2") {
|
442 |
-
|
443 |
return;
|
444 |
}
|
445 |
|
446 |
if (class_exists('WPGeo')) {
|
447 |
-
|
448 |
return;
|
449 |
}
|
450 |
|
451 |
-
// Dismissible notices
|
452 |
-
$notices = array();
|
453 |
if (!self::get_api_keys()->browser)
|
454 |
-
$
|
455 |
-
|
456 |
-
|
457 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
458 |
}
|
459 |
|
460 |
-
static function
|
461 |
-
$
|
|
|
|
|
|
|
462 |
$dismissed = (is_array($dismissed)) ? $dismissed : array();
|
463 |
$dismissed[$key] = true;
|
|
|
|
|
464 |
}
|
465 |
|
466 |
/**
|
@@ -555,7 +583,7 @@ class Mappress {
|
|
555 |
|
556 |
static function footer() {
|
557 |
$infinite = class_exists( 'Jetpack' ) && Jetpack::is_module_active( 'infinite-scroll' );
|
558 |
-
return (is_admin()
|
559 |
}
|
560 |
|
561 |
static function dev() {
|
@@ -577,7 +605,7 @@ class Mappress {
|
|
577 |
'more' => __('%d results shown. Zoom in to see more.', 'mappress-google-maps-for-wordpress'),
|
578 |
'no_address' => __('No matching address', 'mappress-google-maps-for-wordpress'),
|
579 |
'no_geolocate' => __('Unable to get your location', 'mappress-google-maps-for-wordpress'),
|
580 |
-
'delete_prompt' => __('
|
581 |
'delete_map_prompt' => __('Delete this map?', 'mappress-google-maps-for-wordpress'),
|
582 |
'shape' => __('Shape', 'mappress-google-maps-for-wordpress'),
|
583 |
'untitled' => __('Untitled', 'mappress-google-maps-for-wordpress')
|
4 |
Plugin URI: http://www.wphostreviews.com/mappress
|
5 |
Author URI: http://www.wphostreviews.com/mappress
|
6 |
Description: MapPress makes it easy to insert Google Maps in WordPress posts and pages.
|
7 |
+
Version: 2.48.3
|
8 |
Author: Chris Richardson
|
9 |
Text Domain: mappress-google-maps-for-wordpress
|
10 |
Thanks to all the translators and to Matthias Stasiak for his wonderful icons (http://code.google.com/p/google-maps-icons/)
|
34 |
}
|
35 |
|
36 |
class Mappress {
|
37 |
+
const VERSION = '2.48.3';
|
38 |
|
39 |
static
|
40 |
$baseurl,
|
42 |
$basedir,
|
43 |
$debug,
|
44 |
$loaded,
|
45 |
+
$notices,
|
46 |
$options,
|
47 |
$pages,
|
48 |
$pro,
|
93 |
add_action('wp_print_scripts', array(__CLASS__, 'deregister'), -1);
|
94 |
}
|
95 |
|
96 |
+
// Dismissible notices
|
97 |
+
add_action('wp_ajax_mapp_dismiss', array( __CLASS__, 'ajax_dismiss' ));
|
98 |
+
|
99 |
// Slow heartbeat
|
100 |
if (self::$debug)
|
101 |
add_filter( 'heartbeat_settings', array(__CLASS__, 'heartbeat_settings'));
|
172 |
echo $html;
|
173 |
}
|
174 |
|
175 |
+
static function ajax_response($status, $data=null, $gzip = false) {
|
176 |
$output = trim(ob_get_clean()); // Ignore whitespace, any other output is an error
|
177 |
header( "Content-Type: application/json" );
|
178 |
+
|
179 |
+
if ($gzip && (!ini_get('zlib.output_compression')) && (!in_array('ob_gzhandler', ob_list_handlers())) && function_exists('ob_gzhandler'))
|
180 |
+
ob_start('ob_gzhandler');
|
181 |
+
else
|
182 |
+
ob_start();
|
183 |
+
|
184 |
$response = json_encode(array('status' => $status, 'output' => $output, 'data' => $data));
|
185 |
die ($response);
|
186 |
}
|
373 |
$editing = in_array($hook, array('edit.php', 'post.php', 'post-new.php'));
|
374 |
|
375 |
// Settings scripts
|
376 |
+
if ($hook == self::$pages[0]) {
|
377 |
self::load('settings');
|
378 |
+
if (function_exists('wp_enqueue_code_editor'))
|
379 |
+
wp_enqueue_code_editor(array( 'type' => 'php' ));
|
380 |
+
}
|
381 |
|
382 |
// CSS
|
383 |
if (in_array($hook, self::$pages) || $editing) {
|
440 |
// Sanity checks via notices
|
441 |
static function admin_notices() {
|
442 |
global $wpdb;
|
443 |
+
$error = "<div class='notice error'><p>%s</p></div>";
|
444 |
|
445 |
$map_table = $wpdb->prefix . "mappress_maps";
|
446 |
$exists = $wpdb->get_var("show tables like '$map_table'");
|
447 |
|
448 |
if (!$exists) {
|
449 |
+
printf($error, __("MapPress database tables are missing. Please deactivate the plugin and activate it again to fix this.", 'mappress-google-maps-for-wordpress'));
|
450 |
return;
|
451 |
}
|
452 |
|
453 |
if (get_bloginfo('version') < "3.2") {
|
454 |
+
printf($error, __("WARNING: MapPress now requires WordPress 3.2 or higher. Please upgrade before using MapPress.", 'mappress-google-maps-for-wordpress'));
|
455 |
return;
|
456 |
}
|
457 |
|
458 |
if (class_exists('WPGeo')) {
|
459 |
+
printf($error, __("WARNING: MapPress is not compfatible with the WP-Geo plugin. Please deactivate or uninstall WP-Geo before using MapPress.", 'mappress-google-maps-for-wordpress'));
|
460 |
return;
|
461 |
}
|
462 |
|
|
|
|
|
463 |
if (!self::get_api_keys()->browser)
|
464 |
+
printf($error, sprintf("%s. %s <a href='%s'>%s</a>.", __("A Google Maps API key is required", 'mappress-google-maps-for-wordpress'), __("Please update your", 'mappress-google-maps-for-wordpress'), admin_url('admin.php?page=mappress'), __('MapPress Settings', 'mappress-google-maps-for-wordpress')));
|
465 |
+
|
466 |
+
// Dismissible notices - only for admins
|
467 |
+
if (is_super_admin()) {
|
468 |
+
$notices = array();
|
469 |
+
$dismissed = get_user_meta(get_current_user_id(), 'mappress-notices', true);
|
470 |
+
$dismissed = (is_array($dismissed)) ? $dismissed : array();
|
471 |
+
$notices = array_diff_key($notices, $dismissed);
|
472 |
+
foreach($notices as $key => $msg)
|
473 |
+
echo "<div class='notice error is-dismissible' data-mapp-dismiss='$key'><p>$msg</p></div>";
|
474 |
+
|
475 |
+
if ($notices) {
|
476 |
+
echo Mappress::script("jQuery(document).on('click', '[data-mapp-dismiss]', function() {
|
477 |
+
jQuery.post(ajaxurl, { action : 'mapp_dismiss', key : jQuery(this).attr('data-mapp-dismiss') });
|
478 |
+
});");
|
479 |
+
}
|
480 |
+
}
|
481 |
}
|
482 |
|
483 |
+
static function ajax_dismiss() {
|
484 |
+
$key = (isset($_POST['key'])) ? $_POST['key'] : null;
|
485 |
+
if ($key) {
|
486 |
+
$user_id = get_current_user_id();
|
487 |
+
$dismissed = get_user_meta($user_id, 'mappress-notices', true);
|
488 |
$dismissed = (is_array($dismissed)) ? $dismissed : array();
|
489 |
$dismissed[$key] = true;
|
490 |
+
update_user_meta($user_id, 'mappress-notices', $dismissed);
|
491 |
+
}
|
492 |
}
|
493 |
|
494 |
/**
|
583 |
|
584 |
static function footer() {
|
585 |
$infinite = class_exists( 'Jetpack' ) && Jetpack::is_module_active( 'infinite-scroll' );
|
586 |
+
return (!is_admin() && self::$options->footer && !$infinite);
|
587 |
}
|
588 |
|
589 |
static function dev() {
|
605 |
'more' => __('%d results shown. Zoom in to see more.', 'mappress-google-maps-for-wordpress'),
|
606 |
'no_address' => __('No matching address', 'mappress-google-maps-for-wordpress'),
|
607 |
'no_geolocate' => __('Unable to get your location', 'mappress-google-maps-for-wordpress'),
|
608 |
+
'delete_prompt' => __('Are you sure you want to delete?', 'mappress-google-maps-for-wordpress'),
|
609 |
'delete_map_prompt' => __('Delete this map?', 'mappress-google-maps-for-wordpress'),
|
610 |
'shape' => __('Shape', 'mappress-google-maps-for-wordpress'),
|
611 |
'untitled' => __('Untitled', 'mappress-google-maps-for-wordpress')
|
mappress_settings.php
CHANGED
@@ -76,13 +76,13 @@ class Mappress_Settings {
|
|
76 |
function admin_init() {
|
77 |
register_setting('mappress', self::$basename, array($this, 'validate'));
|
78 |
|
|
|
|
|
|
|
79 |
// License: single blogs, or main blog on multisite
|
80 |
if (Mappress::$pro && $this->options->autoupdate && (!is_multisite() || (is_super_admin() && is_main_site())) )
|
81 |
$this->add_section('license', __('License', 'mappress-google-maps-for-wordpress'));
|
82 |
|
83 |
-
$this->add_section('basic', __('Basic Settings', 'mappress-google-maps-for-wordpress'));
|
84 |
-
$this->add_field('apiKey', __('Google API key', 'mappress-google-maps-for-wordpress'), 'basic');
|
85 |
-
|
86 |
$this->add_section('maps', __('Map Settings', 'mappress-google-maps-for-wordpress'));
|
87 |
$this->add_field('postTypes', __('Post types', 'mappress-google-maps-for-wordpress'), 'maps');
|
88 |
$this->add_field('autodisplay', __('Automatic display', 'mappress-google-maps-for-wordpress'), 'maps');
|
@@ -274,14 +274,6 @@ class Mappress_Settings {
|
|
274 |
}
|
275 |
|
276 |
function metabox_preview($object, $metabox) {
|
277 |
-
if (!Mappress::$pro) {
|
278 |
-
$link = "<a href='https://wordpress.org/plugins/mappress-google-maps-for-wordpress/'>" . __('rate it 5 Stars', 'mappress-google-maps-for-wordpress') . "</a>";
|
279 |
-
echo "<div class='mappress-like' style='float:right; font-size: 14px; width: 45%'><h3>Like this plugin?</h3>";
|
280 |
-
echo sprintf(__('Please %s on WordPress.org.', 'mappress-google-maps-for-wordpress'), $link);
|
281 |
-
echo "<br/><hr/>" . __('Thanks for your support!', 'mappress-google-maps-for-wordpress');
|
282 |
-
echo "</div>";
|
283 |
-
}
|
284 |
-
|
285 |
$poi = new Mappress_Poi(array(
|
286 |
'correctedAddress' => 'San Francisco, CA',
|
287 |
"title" => "MapPress",
|
@@ -289,7 +281,7 @@ class Mappress_Settings {
|
|
289 |
"point" => array('lat' => 37.774095, 'lng' => -122.418731)
|
290 |
));
|
291 |
$pois = array($poi);
|
292 |
-
$map = new Mappress_Map(array('alignment' => 'default', 'width' => '
|
293 |
echo $map->display();
|
294 |
}
|
295 |
|
76 |
function admin_init() {
|
77 |
register_setting('mappress', self::$basename, array($this, 'validate'));
|
78 |
|
79 |
+
$this->add_section('basic', __('Basic Settings', 'mappress-google-maps-for-wordpress'));
|
80 |
+
$this->add_field('apiKey', __('Google API key', 'mappress-google-maps-for-wordpress'), 'basic');
|
81 |
+
|
82 |
// License: single blogs, or main blog on multisite
|
83 |
if (Mappress::$pro && $this->options->autoupdate && (!is_multisite() || (is_super_admin() && is_main_site())) )
|
84 |
$this->add_section('license', __('License', 'mappress-google-maps-for-wordpress'));
|
85 |
|
|
|
|
|
|
|
86 |
$this->add_section('maps', __('Map Settings', 'mappress-google-maps-for-wordpress'));
|
87 |
$this->add_field('postTypes', __('Post types', 'mappress-google-maps-for-wordpress'), 'maps');
|
88 |
$this->add_field('autodisplay', __('Automatic display', 'mappress-google-maps-for-wordpress'), 'maps');
|
274 |
}
|
275 |
|
276 |
function metabox_preview($object, $metabox) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
277 |
$poi = new Mappress_Poi(array(
|
278 |
'correctedAddress' => 'San Francisco, CA',
|
279 |
"title" => "MapPress",
|
281 |
"point" => array('lat' => 37.774095, 'lng' => -122.418731)
|
282 |
));
|
283 |
$pois = array($poi);
|
284 |
+
$map = new Mappress_Map(array('alignment' => 'default', 'width' => '95%', 'height' => 200, 'pois' => $pois, 'zoom' => 4));
|
285 |
echo $map->display();
|
286 |
}
|
287 |
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_i
|
|
4 |
Tags: google maps,google,map,maps,easy,poi,mapping,mapper,gps,lat,lon,latitude,longitude,geocoder,geocoding,georss,geo rss,geo,v3,marker,mashup,mash,api,v3,buddypress,mashup,geo,wp-geo,geo mashup,simplemap,simple,wpml
|
5 |
Requires at least: 3.5
|
6 |
Tested up to: 4.9
|
7 |
-
Stable tag: 2.48.
|
8 |
|
9 |
MapPress is the most popular and easiest way to create great-looking Google Maps and driving directions in your blog.
|
10 |
|
@@ -86,6 +86,12 @@ Please see the plugin documentation pages:
|
|
86 |
|
87 |
== Changelog ==
|
88 |
|
|
|
|
|
|
|
|
|
|
|
|
|
89 |
= 2.48.2 =
|
90 |
* Fixed: POI list was being hidden on small maps with 'inline' vertical layout
|
91 |
* Fixed: empty 'ghost' link if post thumbnail is absent
|
4 |
Tags: google maps,google,map,maps,easy,poi,mapping,mapper,gps,lat,lon,latitude,longitude,geocoder,geocoding,georss,geo rss,geo,v3,marker,mashup,mash,api,v3,buddypress,mashup,geo,wp-geo,geo mashup,simplemap,simple,wpml
|
5 |
Requires at least: 3.5
|
6 |
Tested up to: 4.9
|
7 |
+
Stable tag: 2.48.3
|
8 |
|
9 |
MapPress is the most popular and easiest way to create great-looking Google Maps and driving directions in your blog.
|
10 |
|
86 |
|
87 |
== Changelog ==
|
88 |
|
89 |
+
= 2.48.3 =
|
90 |
+
* Added: dismissible notices
|
91 |
+
* Fixed: incorrect sorting for mashups with 'orderby' clause in query
|
92 |
+
* Fixed: incorrect CSS in settings screen
|
93 |
+
* Changed: use gzip only for mashups, not for maps, added checks for PHP libraries
|
94 |
+
|
95 |
= 2.48.2 =
|
96 |
* Fixed: POI list was being hidden on small maps with 'inline' vertical layout
|
97 |
* Fixed: empty 'ghost' link if post thumbnail is absent
|