Legacy change logs are archived here, to ensure the primary readme and PHP files remain minimal and clean Last Edit: 2022-05-30 (All version before 8.1.0) Logs are archived in their PHP format (comments) /* * 8.0.37 :- 2020/12/22 :- Medium priority * Added compatibility notice check for PHP8 users, to prevent fatal errors when switching to PHP 8 (Not currently supported) * * 8.0.36 :- 2020/12/17 :- Medium priority * Fixes issues with marker library not initializing for some users * * 8.0.35 :- 2020/12/10 :- High priority * Tested up to WordPress 5.6 * Added support for jQuery 3 * Fixed bug with map duplicate button * Fixed bug with map trash button * * 8.0.34 :- 2020/07/22 :- Medium priority * Fixed category ID's missing from CSV import * Fixed styling isues - Affects VGM submit button * Fixed missing map priority and linked map column in the categories tab * Fixed WPGMZA is undefined on advanced page * Fixed distance and distance sorting incorrect for ACF markers * Fixed incorrect radius for Earth in distance calculations (now 6,371km instead of 6,381km) * Fixed shapes not appearing on map editor if global settings have never been saved * * 8.0.33 :- 2020/07/10 :- Medium priority * Fixed WPGMZA.XMLCacheConverter is not a constructor * * 8.0.32 :- 2020/07/09 :- Medium priority * Fixed too many GDPR notices when using multiple maps on one page on the front end * Fixed unapproved markers causing issues with marker listing * * 8.0.31 :- 2020/06/12 :- Medium priority * Fixed Google Autocomplete not working due to failed check in minified code * * 8.0.30 :- 2020/06/10 :- Medium priority * Added new Cloud API functionality * Fixed infinite loop when category has parent set to itself * Fixed Advanced Table marker listing sort by distance not working on PHP installations which evaulate string "false" as true * * 8.0.29 :- 2020/05/07 :- Medium priority * Retina support added for OpenLayers markers * Mashup maps now aggregate marker category counts * Prevented quotes being escaped in category name * Fixed OpenLayers markers not visible in some instances * Fixed category table always showing "All Maps" for every category on admin category table * Fixed "All" not showing in category filters * Fixed poor UX with buttons moving on admin map table * Fixed category count showing count for all maps, rather than the current map * Fixed enter not triggering search on Modern style store locator * Fixed custom field and category data not duplicating with maps properly * Fixed IIS failing under certain conditions (+ now URL encoded for IIS servers in compressed path variables) * Fixed incorrect marker icon on newly created / newly edited markers before refreshing * * 8.0.28 :- 2020/04/21 :- Medium priority * Added safeguard for fatal error upon activating Pro on some installations due to marker icon class not loading * Re-added ProMarker.prototype.setIcon for compatibility reasons * Fixed custom marker icons not applied in OpenLayers * Fixed admin map table stuck on Processing... on some installations * Fixed marker saving default icon explicitly, causing category icons to be overwritten * * 8.0.27 :-2020/04/16 :- Medium priority * Optimized Google marker performance by removing redundant labels * Solved "Value must be an instance of WPGMZA.MarkerIcon or icon literal" following last patch * * 8.0.26 :- 2020/04/14 :- Medium priority * Added retina support to map default marker icon * Improved Custom Fields visibility user experience * Marker icon field now supports JSON * Added filter wpgmza_custom_field_filter_controller_query * Added filter wpgmza_custom_field_filter_controller_filtered_marker_ids * Fixed fullscreen lightbox workaround not working for single item galleries * Fixed retina setting not respected for category icons * Fixed cannot trash map containing markers with custom fields or categories * * 8.0.25 :- 2020/03/16 :- Medium priority * Minimum required basic version is now 8.0.20 (for DOMQueryResults and StoreLocator) * Improved OpenLayers gesture handling UX to prevent browser zooming when Ctrl is pressed over map viewport when the gesture notice is visible * Re-factored the category list * Added "replace map data" option to integration importers * "Fit bounds to markers after search" will no longer reset bounds, overriding store locator zoom, when no markers are found * acf_post_id shortcode attribute now opens marker infowindow * Sticky markers now have a high z-index * Developer Mode is now inaccessible * Tested up to WordPress 5.4 * Deprecated wpgmza_get_icon * Fixed notices in class.directions-box-settings-panel.php * Fixed OpenLayers longitude not wrapping properly causing markers to disappear when moving outside -180 to +180 * Fixed UI style setting not changing * Fixed inconsistent links with ACF markers between viewport and marker listing, when using specific permalink settings * Fixed zero opacity store locator not working with modern style * Fixed Cannot use 'in' operator to search for 'x' in undefined when pressing enter on OpenLayers modern style store locator * Fixed ol.Sphere is not a constructor preventing OpenLayers store locator w/legacy radius from working correctly * * 8.0.24 :- 2020/02/12 :- Medium priority * Changed UI style dropdown to radio buttons and added descriptions * Hide default directions options when using modern style, also change according to UI style * Added functionality to support multiple markers in focus attribute * Improved and added new checks to the fitMapBoundsToMarkers function * Changed load to wpgmza_pro_load to fix collision * Made it possible to override category filter widgets * Made ProStoreLocator's categories property configurable * Added new setting useRawJpegCoordinates * Fixed address from picture not working since 8.0.23 optimisation * Fixed trashed maps appearing in Bulk JPEG import map select * * 8.0.23 :- 2020/02/06 :- Medium priority * Optimized marker panel, now only geocodes when the address has been changed * Markers can be edited after manual positioning without re-geocoding address * HTML now allowed in all default style infowindow fields * Database installer now uses WordPress' character set and collation, rather than the databases default * UX improvements in the Map Editor page and Map List page * Improvements to the way we handle Google Maps API Key warnings * Deprecated wpgmza_pro_update_control * Experimental WordPress' category integration for 3rd party integrated markers * Fixed ACF integration not working with new ACF data format * Fixed FeatherLight opening behind map in fullscreen * Fixed JavaScript error preventing OpenLayers InfoWindow from opening correctly * Fixed notice on fresh install in wpgmaps_admin_menu_custom_fields * Fixed issue with adding markers by right click * Fixed cannot change open infowindow by setting * Fixed modern style checkbox filters not clickable * * 8.0.22 :- 2020/01/30 :- Medium priority * Fixed Jump to nearest marker on initialization setting not saving * Optimized category marker count by only fetching counts when the show count setting is on * Set user location marker to always appear above other markers * Fixed no results when combining date / time custom field filtering with other widget types * Fixed greedy gesture handling not respected by OpenLayers * Fixed Jump to nearest marker on initialization not working * Temporarily removed two finger panning for OpenLayers due to inconsistent behaviour across touch devices * * 8.0.21 :- 2020/01/28 :- Medium priority * Added comprehensive warning messages when CSV import line ending conversion fails, allowed fallback when this happens * Added check for recursion in category tree to prevent tree build hitting memory limit * Temporarily removed two finger panning for OpenLayers due to inconsistent behaviour across touch devices * Fixed no results in advanced table after search when using MySQL 8.0 and sort by distance by adding ST_ prefixes for MySQL >= 8 * Fixed JavaScript error when using OpenLayers and modern style infowindows * Fixed raw HTML entities being displayed in new category filter widgets * * 8.0.20 :- 2020/01/23 :- Medium priority * Suppressed warnings from DOMDocument when loading pro-marker-panel.html.php due to wp_editor returning invalid HTML * Hide store locator icon controls when using Auto search area * Fixed fatal error on categories page * Fixed CategoryTree counting markers more than once in ancestral nodes where the marker appears more than once in the child nodes * Fixed greedy gesture handling not respected by OpenLayers * Fixed styling conflict on Map Edit page * * 8.0.19 :- 2020/01/21 :- Medium priority * Added new branding * Removed padding from directions box on all placements * Removed duplicate infowindow link setting in global general settings * Removed Fusion Table field * "Replace map data" is now available when using "Use map ID's specified in the file" * Re-factored category filtering widgets * Fixed external behaviour directions box not populating destination address in native maps app * Fixed CSV importer not importing categories * Fixed modern style popout infowindow not respecting marker disableInfoWindow property * Fixed can't toggle infowindow link setting * Fixed "click" and "hover" not translatable * Fixed bad ID on custom CSS and JS textareas, category logic radio buttons, category filter type, open marker by and marker pull * * 8.0.18 :- 2020/01/16 :- Medium priority * Marker listing will cancel current REST request if reload is called during the request * Modern Directions styling improvements * Fixed JavaScript error in DirectionsBox.getExternalURLParameters * * 8.0.17 :- 2020/01/15 :- Medium priority * Added Gesture Handling (Ctrl + Zoom and Two-finger pan) for OpenLayers * Added "Enable All Interactions" button to map edit page when one or more interactions are disabled * "No Google Maps API key entered" message will no longer obscure map for new users * ACF integration will now pull post title to display as marker title * Fixed error in WPGMZA.DirectionsBox.isUsingAppleMaps * Fixed custom field marker icon not appearing in InfoWindows * Fixed intelligent search not working after resetting the store locator * Fixed issue with store locator not found message * Fixed count issue with dropdown * Fixed Modern style infowindows will only open once * * 8.0.16 :- 2020/01/07 :- Medium priority * Corrected typo in previous changelog * ProDatabase no longer specifies InnoDB as database engine, enabling support for MyISAM * ProDatabase no longer specifies UTF-8 as character set for tables, the default for the database will be used * Scheduled import now assumes JSON in absense of file / URL extension * Issue warning for duplicate custom field names * Added checks for Gold version in marker listings * Fixed table headings in marker description breaking Advanced Table marker listing * Fixed unexpected output during activation * Fixed error when trying to pick marker from Mappity Marker Library * Fixed stack trace displayed when submitting VGM marker * Fixed incorrect marker count on category filter checkboxes when using category count * Fixed custom field filters not resetting correctly * Fixed directions route not working if language is not supported * * 8.0.15 :- 2020/01/02 :- Medium priority * Enhanced failed importer geocode logging and error reporting * ToolSet / WooCommerce integration now labelled "ToolSet" * WPGMZA.EventDispatcher can now unbind all event listeners with off / removeEventListener * Marker Library Dialog strips base64 header from icon data which was causing some servers to block the upload request * Added warning to Developer Mode setting * New function WPGMZA.DirectionsBox.prototype.getExternalURLParameters * New function WPGMZA.DirectionsBox.prototype.getWaypointAddresses * New property WPGMZA.DirectionsBox.prototype.openExternal * Directions box logic now DRYer * "No Global Setting" changed to "Inherit Global Setting" and now uses translatable text * Importer now supports CR newlines * Custom field filter checkbox widget no longer displays empty values * Sort by rating no longer displayed for users running Gold < 5.0.0 (or without Gold) * InfoWindow galleries now floated right * Improved Modern style Store Locator category filtering user experience * Fixed waypoints being ignored by external directions * Fixed redirection loop after entering Google Maps API key into prompt on map edit page * Fixed "Add Marker" button stays disabled when no results are found for the entered address * Fixed "Cannot read property 'markerFilter' of undefined" in modern-store-locator.js * Fixed bottleneck significantly decreasing map editor load time when using DB pull * Fixed OpenLayers HTML marker in wrong position after refreshing and switching tabs during load * Fixed ProMarker writing "categories" to other_data * Fixed classname for sticky marker listing items set as .wpgmza-sticky * Fixed category picker not populating from marker categories array * Fixed marker listing sort by category sorting on numeric category ID's rather than category names * Fixed infowindowclose.wpgmza being dispatched from the map, rather than the infowindow * Fixed category data missing after import on markers created with Pro >= 8 * * 8.0.14 :- 2019/12/13 :- Medium priority * New event on window - ready.wpgmza. This fires when all modules are ready, but maps haven't started loading * WPGMZA.LatLng.fromString is now static * Removed console logging on theme panel when theme data is invalid * Fixed OpenLayers geocoder trying to geocode coordinates resulting in markers added by coordinates moving * * 8.0.13 :- 2019/12/11 :- Medium priority * Added new method applyIntegrationQueryClauses to ProMarkerFilter * Added ProMarker::getIntegratedPermalink() * Added WPGMZA.LatLngBounds.prototype.toLiteral * Enhanced OpenLayers directions, now multilingual * Enhanced ModernDirectionsBox, now inherits DirectionsBox, loads and opens via standard mechanism * Event markerlistingupdated now bubbles up to map * CSV importer now converts UTF-8 special characters to HTML entities * Prevented scrolling when dataTables responsive expand / collapse button is clicked * Moved modern style store locator title search after address * Removed console logging from OLDirectionsService * Fixed modern infowindow custom colours not correctly applied when two or more maps with different colour settings are present * Fixed experimental vector source layer markers firing multiple click events when their icons overlap * Fixed ProStoreLocator.prototype.onFilteringComplete being called twice * Fixed modern marker listing directions button not working * * 8.0.12 :- 2019-11-26 :- Medium priority * Added check for $wpgmza in updater code to prevent fatal error when updater tries to run a check without WP Go Maps installed * Added clear warning and suggestions when server side geocoding fails due to HTTP referrer check failing * Added animated panning effect for OpenLayers infowindows, including a dynamic offset to make infowindows fully visible on click * Added "keep map ID" setting to CSV importer * acf_post_id shortcode attribute now supports "this" as a value * Relaxed handling of bad map ID's from shortcodes to issue a warning rather than throwing an exception * Directions box no longer attempts to initialise on back end * Fixed notice in class.category-tree-node.php * Fixed shortcodes not being rendered in Advanced Table marker listing description field * Fixed modern style directions box opening when directions behaviour is set to external (or intelligent on mobiles) * Fixed fallback marker listing not loading when sort by distance is used on non https:// sites * Fixed pagination widget display not resetting to first page after resetting a store locator search * Fixed modern InfoWindow not reading description from legacy XML format * Fixed infowindow directions link not working with multiple maps on a page * Fixed modern style directions box not displaying step by step directions * Fixed modern style directions box showing two native maps app icons * Fixed default map icon not respected in admin marker table * * 8.0.11 :- 2019-11-12 :- Medium priority * Added "fit map bounds to markers after flitering" * ACF integration module now understands doubles used in new versions of ACF * Fixed polygon fields not initially populated * Fixed duplicating map does not duplicate circles and rectangles * Fixed notices when duplicating * Fixed directions open by default not respecting all interface styles * Fixed directions turned on after updating * Fixed category remapping not working with existing category IDs * Fixed issue with OpenLayers circle colour * * 8.0.10 :- 2019-11-06 :- Medium priority * New directions box setting "Intelligent" * New directions box setting "Force Google Maps mobile app" * Moved heatmap table installation to ProDatabase * Deprecated wpgmaps_handle_db_pro * Integrated markers now use formatted permalinks based on WordPress' settings * Pan to user location no longer applied on map edit page * User location sharing prompt now only appears once per session * Removed duplicate directions code from ProInfoWindow, solves directions always opening externally on mobile devices * Adjusted radio button styling to be circular * Fixed integrated markers not appearing * Fixed category table not being created upon activation * Fixed JSON importer not re-creating categories that have been trashed * Fixed undefined color on OpenLayers circle preventing marker listing from being updated on a store locator search * Fixed "No API key" error showing until the page is refreshed after entering API key in notice * * 8.0.9 :- 2019-11-04 :- Medium priority * Changed category name character limit from 50 to 200 * Fixed ?skip_cache=1 breaking plain permalink REST URLs by detecting when query variables are in use * * 8.0.8 :- 2019-10-28 :- Medium priority * Restored marker edit panel marker icon picker now reverts to default marker icon after saving marker * Fixed notice when clicking "Get Directions" with external behaviour selected * Fixed notice in category tree on map edit page * Fixed "click opens marker link" not working * Fixed missing link button in modern style marker listing * Fixed unexpected behaviour with infowindows when using retina ready markers on mobile devices * Fixed directions box starts open not respected for new UI styles * * 8.0.7 :- 2019-10-22 :- Medium priority * ProMarker icon property is now recalculated after setting category / categories property * Re-added behaviour to center on marker following marker creation in map edit page * Setting global retina dimensions to blank will now cause GoogleProMarker to auto-detect the dimensions * Added a warning when in developer mode stating that marker listing is initialised even though no marker listing style is selected (to still enable support for marker listing category filter with no marker listing) * InfoWindow now tracks open / closed state in this.state * InfoWindow no longer dispatches infowindowclose.wpgmza event if already closed * Fixed icon initially incorrect on map edit page when using category icons on marker * Fixed global retina dimensions not respected * Fixed notice when trying to update gallery items * Fixed notice issued when ProMap tries to reference marker listing element when no marker listing style is present * Fixed directions link not working in default style InfoWindow * Fixed marker icon picker preview not updated after using marker library * * 8.0.6 :- 2019-10-18 :- Medium priority * Fixed default marker icon overriding category icon after editing a marker * Fixed notice due to marker listing attempting to initialise on back end * Fixed "not found" error when attempting to import * * 8.0.5 :- 2019-10-17 :- Medium priority * ACF integration module now ignores posts with empty location data * OwlCarousels 100% image width overriden to fix large icons in carousel * Added vertical margin to carousel marker icons * Fixed description not visible in Modern style marker listing * Fixed link not visible in Modern style marker listing * Fixed invalid element for marker icon picker on category list page * Fixed notice for wpgmza_override_users_location_zoom_levels in legacy-core.php * Fixed directions link not working for mashup markers in marker listings * Fixed can't open modern style infowindows for mashup markers * Fixed marker description not visible in modern style marker listing marker view * Fixed directions link not scrolling down to box in modern style marker listing marker view * Fixed Google / Apple icon not displayed properly in modern style directions box * Fixed [object Object] in directions destination when using modern style infowindows * Fixed description not visible in Modern marker listing marker view * Fixed shortcodes not being rendered in marker listings * Fixed pagination not working for Advanced Table listing since 8.0.3 * Fixed "No results" in advanced table when only one result is present * * 8.0.4 :- 2019-10-15 :- Medium priority * Added workaround for Enfold theme issue with Safari preventing map from loading * Theme parser will now attempt to strip slashes before abandoning parsing * Fixed cannot change marker listing type (wrong selection displayed) * Fixed "cannot read propertly 'thumbnail' of undefined" in modern infowindow when marker has no pictures (fixes fields not displayed in modern infowindow) * * 8.0.3 :- 2019-10-11 :- Medium priority * Fixed can't save empty string in exclude/include API on page settings * Fixed order by distance not respected for Advanced Table marker listing * Fixed can't delete all gallery items * Added "Remove duplicate markers" button to Utilities tab * Added new Utilities tab on Advanced page * * 8.0.2 :- 2019-10-10 :- Medium priority * Fixed category page marker icon picker not working * Fixed dragging a marker also pans map when using OpenLayers * Fixed marker panel marker icon picker not updating when opening a marker for editing * Fixed retina checkbox missing from marker panel * Fixed manually entered retina dimensions not respected for SVG icons * * 8.0.1 :- 2019-10-08 :- Medium priority * Added streetview, bearing and pitch attributes for shortcode * Fixed issue with MarkerRatings class missing (fixes cannot save global settings, markers not displayed on some installations) * Fixed Warning: unserialize() expects parameter 1 to be string, array given * Fixed restructured code preventing marker delete and approve buttons from working * Fixed marker description shortcodes not rendered over REST API * Merged in 7.11.58 * * 8.0.0 :- 2019-10-07 :- Medium priority * Added Advanced Custom Fields integeration * Added WooCommerce / ToolSet integration * Added Sort by Distance for marker listings * Added zoned searching (auto) for store locator * Added settings for directions box behaviour * Added route color, weight and opacity settings for directions * Added start and destination icon pickers for directions * Added text labels for polygons * Added descriptions for polygons * Added support for Directions with OpenLayers through OpenRouteService * Added bulk JPEG upload * Added marker gallery to support multiple images per marker * Added lightbox to expand marker gallery items upon click * Added new Grid style marker listing * Added several new REST API endpoints * Added date and time custom field filtering widgets * Added new theme editor * Added global user interface style setting * Added category sort order setting * Added sticky markers (always on top of marker listing) * Added comprehensive logging, log view and log download for imports and scheduled imports * Significant performance optimizations * * 7.11.57 :- 2019-09-26 :- Medium priority * Added new property isFilterable to markers * Fixed store locator search making separator grouped markers visible when group state was closed, obscuring group placeholder (group would not open) * Fixed hide all markers until a search is performed not working with marker separator * Fixed "zero results" message showing after resetting store locator when hide all markers until a search is performed is enabled * * 7.11.56 :- 2019-09-24 :- Medium priority * Added Astra theme compatibilty module, fixes InfoWindows not opening with Astra theme * Fixed invalid heatmap gradient JSON breaking map edit page * Fixed sort order wrong after initial advanced tables pagination on servers that interpret string "false" as true * * 7.11.55 :- 2019-09-19 :- Medium priority * Fixed create shapes buttons not working in map edit page before Global Settings (engine) have been saved * Fixed Modern Store Locator Radius causing Safari (mobile) to reload page * Fixed Advanced Table sort order not respected after pagination first changed * * 7.11.54 :- 2019-09-13 :- Medium priority * Added markerlistingupdated.wpgmza event to AdvancedTableMarkerListing * Fixed markers not visible in Internet Explorer when using OpenLayers (append is not a method) * Removed try/catch around legacy core marker add code to ease debugging * * 7.11.53 :- 2019-09-10 :- Medium priority * Added more comprehensive logging for CSV imports, including when address empty and no coordinates * Added jQuery dependency for remodal, fixes JS errors in edge cases * Fixed poor desktop user experience with checkbox custom field filter widget * Fixed issue where sort would be ignored with advanced table when overrideListingOrderSettings had been cast to an integer * Removed experimental polygon label function * * * 7.11.52 :- 2019-08-28 :- Medium priority * Added new setting importer_google_maps_api_key * Added additional protocol stripping to WPGMZA.ProMarker.prototype.updateIcon (fixes some icons not loading when migrating to https://) * Adding icons through Marker Library (Mappity.org) now creates media attachments * Changed deprecated references to wpgmza_localized_strings to WPGMZA.localized_strings * WPGMZA.ProInfoWindow now dispatches infowindowopen.wpgmza with modern styles * Fixed all URL imports (except Google Sheets) assumed to be JSON format, now uses extension (will use Content-type in the future) * Fixed mashupIDs not used by ProMarkerFilter * Fixed 0 key custom fields being added to custom field data * * 7.11.51 :- 2019-08-12 :- Medium priority * Fixed $ is undefined in legacy-map-edit-page.js since 7.11.49 on some installations * * 7.11.50 :- 2019-08-09 :- Medium priority * Fixed users below administrator level can't use marker library * Fixed JSON importer not correctly remapping categories * Fixed "hide all markers before a search is done" hiding markers on back end * * 7.11.49 :- 2019-07-31 :- Medium priority * Added nonce check to duplicate map function * Fixed map type setting not "live" in map editor * Fixed map type setting not initially reflected in map editor * * 7.11.48 :- 2019-07-29 :- Medium priority * Fixed store locator not working in OpenLayers since 7.11.47 due to missing nonce * * 7.11.47 :- 2019-07-29 :- Medium priority * REST API security enhanced with additional per-route nonces * getScrollAnimationOffset now accounts for WP admin bar height * removeMarker now closes marker InfoWindow before removing it * Fixed advanced table search having no effect when used in conjunction with a store locator search * Fixed markers not removed from map panel following bulk delete * Fixed notice when entry already exists in category import * * 7.11.46 :- 2019-07-23 :- Medium priority * Fixed marker library not saving icon on category page * Fixed duplicate primary key notice when saving categories * * 7.11.45 :- 2019-07-22 :- Low priority * Added infowindowopen event for Modern style infowindows * Added new filter wpgmza_legacy_localize_polygon_data * Altered wpgmza_get_category_data to respect category priority * Fixed category priority not respected by marker category icon in map panel * * 7.11.44 :- 2019-07-11 :- High priority * Closed potential security vulnerabilities * Added console warning when older version of dataTables is loaded * Fixed category filtering not working with legacy style store locator * Fixed click event for map firing when a marker is clicked * Re-added AJAX fallback for setups with REST API blocking * * 7.11.43 :- 2019-07-05 :- Medium priority * Fixed category filtering not working with modern style store locator * Fixed marker links being stripped of percent encoded characters * * 7.11.42 :- 2019-07-02 :- Low priority * Added admin-ajax fallback for when REST API is blocked * * 7.11.41 :- 2019-06-25 :- Low priority * Mappity (Marker Library) loading deferred until dialog opens * * 7.11.40 :- 2019-06-24 :- Medium priority * Added new event userlocationmarkerplaced.wpgmza * Fixed advanced table marker listing stuck on "Processing..." when no results are found * Fixed "Get directions" in InfoWindow not working * Fixed checkbox category filtering not triggering filter update * Fixed REST API warning persisting after dismissal * * 7.11.39 :- 2019-06-21 :- Medium priority * Fixed marker listing category filter not triggering filtering update since last update * Fixed marker listing directions link not working * * 7.11.38 :- 2019-06-19 :- Medium priority * Fixed store locator category checkboxes triggering marker filter to update before any buttons were pressed * Fixed undefined variable notice in class.pro-admin-marker-table.php * Fixed clicking advanced table marker listing list item not updating map panel * * 7.11.37 :- 2019-06-18 :- Low priority * Added checkbox to disable Autoptimize workaround for setups where the workaround prevents CSS aggregation * Performance for filtering and marker listings significantly improved when using REST caching / CDN and experimental compressed request setting * Fixed issues with Safari and modern style store locator radius, check now added to ProStoreLocator module * * 7.11.36 :- 2019-06-12 :- Low priority * Improved handling of invalid JSON data in custom fields attribute column * Fixed ambiguous column `active` in page.categories.php * Fixed store locator center point icon not respected * * 7.11.35 :- 2019-06-06 :- Low priority * Added experimental setting "Use compressed path variables" to enable CDN's and JSON caching plugins to cache REST responses * Added notice when PHP version is 5.4.45 in which a PHP bug causes localization to fail * Fixed custom field ID's being writable * * 7.11.34 :- 2019-06-03 :- Medium priority * Added nonce to settings form on admin post action * Attempting to set a custom field which does not exist will now create the field * Changed background to background-image in data_table_front.css to allow more flexible control over table headings in Advanced Table marker listing * Fixed error in class.pro-marker-filter.php when Basic has non-standard folder name * * 7.11.33 :- 2019-05-29 :- Medium priority * Added properties category and categories to ProMarker * ProMarker categories can now be set as an array or as a comma separated string through new properties * JSON importer now uses CRUD classes * Fixed lat and lng shortcode attributes not working * Fixed "can't use method return value in write context" on PHP <= 5.4 * Fixed "no results found" not showing when new MarkerFilter returns zero results * * 7.11.32 :- 2019-05-23 :- Medium priority * Tested with WordPress 5.2.1 * Fixed Modern Store locator title search not working * Removed !important from CSS for border on .wpgmza-basic-listing-image-holder img * * 7.11.31 :- 2019-05-21 :- Medium priority * Fixed $ is undefined in legacy-map-edit-page.js * Fixed store locator category filter triggering marker listing category filter update mechanism * Fixed google maps check in core.js * Fixed ProMarkerFilter update not working with hide all * Add support for Google MyMaps KML polygon style (normal/highlight) imports * Add support for Custom Field importing via marker CSV imports * * 7.11.30 :- 2019-05-20 :- Medium priority * Added checks for non-standard basic directory name causing errors in class.pro-map.php * Added new settings WPGMZA.settings.forceNativeDirections * Fixed polygons and polylines not visible when engine is undefined (checks now assume Google by default) * Fixed "Hide all markers until a search is done" revealing all markers when a not found location is entered * Relaxed MIME type checking for JSON in scheduled imports (pending fix on a WordPress issue) * * 7.11.29 :- 2019-05-13 :- Low priority * Tested with WordPress 5.2 * Added more robust error handling for missing files and failed initialisations (when NOT in developer mode) * Added more robust checks for Custom Fields tables in CustomFields::installed() * Fixed notice in legacy-core.php * * 7.11.28 :- 2019-05-08 :- Low priority * Fixed REST API endpoint / map editor not retreving a ProMarker, causing custom fields to be blank in editor * Added the ability to toggle auto night mode as well as a theme * Added a min height to bakend map so that it does not break when height is set to 100% * Added alt attribute to all marker listing styles * Added shift-click range selection to admin marker table * XML URL's are now protocol-less, solving issues when migrating to a secure site * * 7.11.27 :- 2019-04-16 :- Medium priority * Added categories JS module * Fixed incorrect value being interpreted as "yes" for the setting "store_locator_hide_before_search" * Fixed search not working for admin marker DataTable * Re-allowed iframe, input, select, option and img in description for users below administrator * * 7.11.26 :- 2019-04-12 :- Medium priority * Fixed "wpgmaps_localize" is undefined on map edit page when default marker is applied * * 7.11.25 :- 2019-04-10 :- Medium priority * Fixed markers disappearing after adding or editing marker following XML pull fix * Fixed memory leak on map edit page when adding, editing or removing markers * Corrected store locator circle covers polygons making them unclickable * * 7.11.24 :- 2019-04-09 :- Medium priority * Prevented reading $_GET['id'] in map setting overrides, this is now ignored, as it was causing conflicts on some setups * Re-implemented search for string in category and custom field data for admin marker table and Advanced style marker listing * Fixed undefined variable notice in class.category.php * Fixed infowindow displaying incorrect marker data on map edit page when using XML pull method * Fixed country restriction not respected by OpenLayers * Fixed Exporter where the deleted maps shows in the JSON file * Added Automatically Pan to user location setting * * 7.11.23 :- 2019-04-03 :- Medium priority * Re-implemented behaviour to hide all markers on store locator reset when "Hide all markers before a search is done" is selected * Fixed custom field filters not showing following Gutenberg Custom CSS fix (7.11.22) * Fixed wpgmaps-admin.css being enqueued on the front end * * 7.11.22 :- 2019-04-02 :- Low priority * Relaxed importer security restrictions to allow importing PHP over URLs (currently assumes JSON) * Added shortcode attribute classname * Added missing custom fields in modern infowindows feature * Fixed Custom CSS classes in Gutenberg editor not being applied * * 7.11.21 :- 2019-03-28 :- Low priority * Added "Hide points of interest" * Fixed infowindow opening on store locator center marker * Fixed animation and infowindow dropdowns blank when editing marker * Fixed SEO tools reporting 404 on Print Directions link * * 7.11.20 :- 2019-03-20 :- Medium priority * Improved performance on saving markers and maps, rebuildTableFromLegacyField only performs operation on relevant object * Marker description no longer passed through KSES function for administrators * Moved code to initially add markers to clusterer into onMarkersPlaced in ProMap * Fixed "cat" shortcode attribute not being applied when no category filtering UI controls are present * Fixed develoer mode checkbox not reflecting setting when developer mode is enabled * Fixed "hide all markers until a search is done" causing only markers in the first search radius to appear on the map * Fixed clusters appearing before a search is done when "hide all markers until a search is done" is selected * * 7.11.19 :- 2019-03-18 :- Medium priority * Fixed GDPR notice not displayed when it should be, when Google Translate JS API is loaded * Fixed emojis in description field breaking marker add/save mechanism * Fixed incorrect logic causing unapproved markers to appear in marker listing * Fixed store locator marker not cleared after resetting store locator search * Fixed store locator circle not cleared after resetting store locator search * Disabled infowindow on store locator center point marker * * 7.11.18 :- 2019-03-15 :- Medium priority * Prevented iterateOverMarkerData being called more than once per map, fixing filtering and clustering inconsistencies * Performance improved by only allowing iterateOverMarkerData to be called on initialisation * * 7.11.17 :- 2019-03-14 :- Medium priority * Changed isset check to empty check on developer_mode * Fixed developer mode being checked when developer_mode is false in memory * * 7.11.16 :- 2019-03-13 :- Low priority * Fixed markerid URL logic sometimes failing * Fixed mzoom ignored on URL * Fixed Google / Apple / Maps App directions link opening on current location due to lack of GPS coordinates on Modern infowindows * * 7.11.15 :- 2019-03-11 :- Low priority * Added try/catch around legacy core.js marker add code to catch invalid marker data and issue console warning * Fixed "Hide address column" hiding title instead of address for Basic Table style marker listing * Fixed calling setZoom immediately after panTo on OpenLayers map cancelling pan animation * * 7.11.14 :- 2019-03-08 :- Low priority * Fixed modern marker listing marker view not working correctly with mashups * Fixed full width button container on modern marker listing obscuring close buttons * * 7.11.13 :- 2019-03-07 :- Low priority * Fixed store locator search creating duplicate markers * Fixed "Use My Location" button not appearing in Modern style store locator * Re-added "Use my location" button to store locator * * 7.11.12 :- 2019-03-05 :- Medium priority * Changed "Gold is not compatible with OpenLayers" notice to advise useres to update to Gold 4.11 or above to use Gold with OpenLayers * Changed Google Maps API error handler to render in a panel rather than in a modal dialog * Fixed jQuery shorthand in legacy-map-edit-page.js preventing marker edit on some installations * Fixed Circle.createInstance returning OLCircle by default where engine is undefined (the default engine is Google) * Fixed inconsistent behaviour with "Hide fields" settings in Maps -> Settings -> Marker Listings, code is now implemented in MarkerListing::removeHiddenFields * Fixed some columns missing in various marker listing styles * Re-added Link column to Advanced Table * * 7.11.11 :- 2019-03-01 :- Medium priority * Changed pointer cursor to default cursor when hovering a marker with "disable infowindows" set * Improved store locator UX - address and title search no longer cleared by resetting * Stopped markers being removed by InitMap following recent filtering optimizations * Fixed InfoWindow title not displayed in default style infowindow * Fixed global "disable infowindows" not respected * Fixed ProInfoWindow not detecting empty fields correctly and omitting corresponding elements * Fixed buttons missing from modern style infowindows * * 7.11.10 :- 2019-02-28 :- Medium priority * Moved "User location marker" code to ProMarker, ProMap and ProInfoWindow * Moved wpgmaps_lang_my_location from global scope to WPGMZA.localized_strings * Moved check for modern marker listing style above check for native style infowindow, fixing both styles opening * Moved infowindow starts open, click opens link, shortcode to open marker and GET to open marker infowindow to ProMarker module * Re-factored and moved code to build default style infowindow to ProInfoWindow module * Removed "User location marker" code from core.js * Dropped !important from default InfoWindow image max width * Improved JavaScript performance by deferring InfoWindow HTML creation until needed * Non-standard jQuery versions now issue console warning rather than cancelling map initialisation * Fixed "Get directions" from marker listing not populating "To" field in modern style marker listing * Fixed mashups preventing marker listing from being displayed * Fixed Modern style marker listing trying to open on user location marker * Fixed Modern style marker listing trying to open on store locator center marker * Fixed marker filter affecting user location marker * Fixed "undefined" infowindow over user location marker * * 7.11.09 :- 2019-02-25 :- Low priority * Custom field filter reset button now sets dropdowns to their placeholder, as opposed to none / the first item * Fixed both style infowindows opening when map has never been saved * Fixed max infowindow width not being respected for default style infowindows * Fixed infowindow close event firing after infowindow element removed * * 7.11.08 :- 2019-02-22 :- Medium priority * Added try/catch in legacy-map-edit-page.js to catch bad latitude and longitude, issue warning and continue execution * Fixed bad marker ID in ProInfoWindow.open preventing modern style infowindows from opening in some circumstances * * 7.11.07 :- 2019-02-21 :- Medium priority * All marker data is now passed to WPGMZA.Marker.createInstance * Fixed undefined notice wpgmza_marker_list_ouput when using mashups * Fixed filtering not working correctly for mashup maps * * 7.11.06 :- 2019-02-20 :- Medium priority * Improved modern store locator UX by switching reset button back to search button when text is inputted into address field * Moved infowindow open and close code from core.js to Marker and InfoWindow modules * Moved infowindow open code from core.js to Marker Listing module * Added property "style" to WPGMZA.MarkerListing * Added global setting "disable_scroll_on_marker_listing_click" (not yet present on UI) * Added global setting "zoom_level_on_marker_listing_click" (not yet present on UI) * Added global setting "marker_listing_item_click_scroll_offset" (not yet present on UI) * Added event infowindowopen.wpgmza * Added event infowindowclose.wpgmza * Added timeout to prevent multiple control change events firing causing multiple, identical filtering requests to be issued * Added code to abort previous filtering request when controls change * Fixed previously opened infowindow not closing when opening a new default style infowindow * Fixed inconsistencies where different InfoWindow styles were picked in global vs local map settings * Fixed filtering not correctly applied when controls are rapidly changed * Fixed "disable double click zoom" logic flipped * Fixed bulk delete not working due to removed legacy function * Fixed "show user location" only working on last map where multiple maps were present * * 7.11.05 :- 2019-02-15 :- Low priority * Added code to support sort by distance in Pro v8 * Re-added data-wpgmza-datatable-options attribute to datatables * Fixed "infowindow starts open" only working for one map on pages with multiple maps * Fixed clicking a marker on one map closes infowindows on other maps * Fixed undefined variable notice in class.export.php * * 7.11.04 :- 2019-02-13 :- Medium priority * Shortcode attributes are now passed to map element through data-shortcode-attributes * DataTables is no longer enqueued twice on map edit page * DataTables translation re-applied following new AJAX implementation * Fixed undefined variable proper_filename in page.import-export.php * Fixed filtering broken when no custom field filter controller present * Fixed search features broken on some installations where custom field filter tries to initialise before map * Fixed store locator keyword search not working due to malformed query * Fixed category shortcode attribute being ignored * Fixed marker listing not reflecting modern store locator results due to radius not being transmitted * * 7.11.03 :- 2019-02-11 :- Medium priority * Added extra functions to LatLngBounds to support upcoming Gold patch (extendByPixelMargin, contains) * Added Caltopo to tile servers * Replaced $ with jQuery in several points in legacy-map-edit-page.js * Fixed issues editing markers, rectangles or circles on installations where $ is undefined on the map edit page * Fixed custom field dropdown filter widget using * to represent "all", where an empty string should be used instead * * 7.11.02 :- 2019-02-06 :- Medium priority * Moved basic version check out of legacy-core.php * Marker listings now show blank instead of all results when no store locator matches are found * Fixed advanced table stuck on "Processing" when no results are present * Fixed show all marker listing list items breaking advanced table marker listing * Fixed Advanced Table marker listing not respecting initial order settings * * 7.11.01 :- 2019-02-05 :- Medium priority * Added code to attempt to parse improperly escaped map settings JSON * Added code to catch exceptions when parsing map setting data fails, issuing a console warning * Restored old behaviour of Marker Category filter still used when "No Marker Listing" selected * Dropped all redundant listing filtering AJAX calls * Stripped all redundant listing JS and listing filtering JS from core.js * Fixed filter not clearing when no categories are selected * Fixed "Map Type" not being applied * Fixed marker not focusing upon Advanced Table item click * Fixed infowindow not opening upon Advanced Table item click * Fixed native and custom CSS and JS not binding to Advanced Table items due to missing classnames * Fixed filtering not applied to Advanced Table marker listing * Fixed store locator reset not triggering marker listing update * * 7.11.00 :- 2019-01-30 :- Medium priority * Added pagination to all marker listing styles * Added javascript ; to directions links for styling purposes * Added classnames to custom field admin table rows for back end and UGM * Added address geocoder and option to JSON importer * Added WPGMZA.LatLng.prototype.toLatLngLiteral * Removed map edit page 5,000 marker limit * Changed KML JS to use map_id rather than entry * Relaxed importer file type security checks preventing JSON import * Nominatim Cache now records country restriction * Improved robusticity of data-settings attribute handling * Marker listings now use JSON endpoint * Nominatim Cache now records country restriction * Animated scroll disabled on marker list item click when push in map is used * "Push in map" no longer affects Modern style marker listing * XML caches will only be regenerated when setting was DB previously * XML caches are no longer formatted, giving a performance boost * Checks for namespace, DOMDocument and WP REST API added in main file, a warning is issued if these are missing rather than a fatal error * Relaxed OLProMarker.setIcon to issue warning on an invalid icon rather than throwing an error * Fixed all filtering issues with Modern style marker listing * Fixed admin marker table resetting after adding / editing marker * Fixed and re-added link column to advanced table marker listing * Fixed slashes accumulating in map title where apostraphies are used * Fixed apostraphy in map title breaking JSON * Fixed duplicate primary key notice when creating first category in debug mode * Fixed country restriction not respected by OpenLayers * Fixed interaction controls (disable pan, double click zoom and mousewheel) ignored in OpenLayers due to wrong scope * Fixed zoom limits not respected in OpenLayers * Fixed zoom limits incorrectly interpreted by Google * Fixed "minZoom cannot exceed maxZoom" breaking Google maps when settings are reversed * Fixed modern style marker listing not working with mashup maps * Fixed WPGMZA.getCurrentPosition not firing callback until user moves position * * 7.10.60 * Print directions now opens in a new tab * * 7.10.59 :- 2019-01-10 :- Medium priority * Temporarily removed new "link" column from advanced table pending a fix to DataTables error * * 7.10.58 :- 2019-01-09 :- Medium priority * Added universal workaround for non-visible maps not rendering properly when they become visible (tabs, accordions, etc.) * Moved event markersplaced.wpgmza into iterateOverMarkerData * Changed behaviour when map becomes visible to fire resize event, not reset the entire map * Fixed "InfoWindow starts open" not working with XML cache * Fixed "More Details" displayed on marker listing rows with no link * * 7.10.57 :- 2019-01-02 :- Medium priority * Fixed infowindows not opening on second map * Fixed can't close modern style infowindow * Removed CSS causing infowindow content overflowing without scrollbar * * 7.10.56 :- 2018-12-27 :- High priority * Altered real mime type check to prevent image uploads failing * * 7.10.55 :- 2018-12-27 :- Medium priority * Added event markersplaced.wpgmza * Added link field to marker listing options * Added placeholder to custom field inputs * Changed GoogleMap fitBounds to accept a WPGMZA.LatLngBounds * Changed OLMap fitBounds to accept a WPGMZA.LatLngBounds * Removed the requirement to enable "show user location" to use "use my address" on store locator * Fixed WPGMZA.LatLngBounds setting individual coordinates to LatLngs * Fixed WPGMZA.GoogleMap.fitBounds not working with native LatLngBounds * Fixed cannot import marker categories when categories checkbox disabled * Fixed Pro Gutenberg module issuing notice when map ID select in initial state * Fixed modern marker listing marker view retaining fields from last selected marker when new fields are blank * Fixed styling issues with moderm marker listing (buttons overlapping, negative margin on picture, buttons not visible) * Fixed modern directions box not opening * Fixed "Use my location" not working on store locator * * 7.10.54 :- 2018-12-20 :- Medium priority * Show user location now follows user location live * Bumped required basic version from 7.10.00 to 7.10.34 for ScriptLoader::getPluginScripts requirement * Removed closing PHP tag from class.google-pro-maps-loader.php * Fixed Modern Directions Box not opening from Modern style Info Windows * * 7.10.53 :- 2018-12-18 :- Medium priority * Added missing spatial prefixes for marker column, circle and rectangle data functions * Added workaround to import_mimes for WordPress issue https://core.trac.wordpress.org/ticket/45615 causing CSV imports to fail * * 7.10.52 :- 2018-12-14 :- Low priority * Added missing spatial prefix to add marker AJAX callback * Fixed undefined errors when running Elementor * Fixed "Cannot read property 'wpgmza_iw_type' of undefined" preventing infowindow opening * Fixed categories page not respecting category priority * Fixed categories page dispalying categories without parent as child * * 7.10.51 :- 2018-12-12 :- Medium priority * Added XMLCacheConverter to convert XML data into DB method format * XML and DB method now both use the same JavaScript * Fixed Modern Marker Listing not working with XML marker pull method * Removed large section of repeated code for processing XML * * 7.10.50 :- 2018-12-10 :- Medium priority * Removed debug output following infowindow fix * * 7.10.49 :- 2018-12-10 :- Medium priority * Added blank alt attribute to OpenLayers marker img element * Updated WP version supported to 5.0 * Fixed scroll to map code not firing following click on basic list marker listing * Fixed both modern and native infowindows opening when global and local settings differ * Fixed styling not correctly applied to modern infowindows when global and local settings differ * * 7.10.48 :- 2018-12-05 :- Low priority * Improved Gutenberg integration (new buttons added) * * 7.10.47 :- 2018-12-03 :- Medium priority * Custom field values are now passed through translation functions * Added a check for wp.editor in Gutenberg JS module * Fixed category dropdown filter selection not reflecting cat shortcode attribute * Fixed OpenLayers JavaScript broken when checking for Google Maps API, when other google modules are present * Fixed access level always administrator for custom fields page * Fixed access level always administrator for map general settings tab * Fixed WPGMZA.OLMap returning zoom one level too far in (fixes map zooms in one level on save) * * 7.10.46 :- 2018-11-22 :- Low priority * Fixed custom fields outputting blank attributes * Added data-custom-field-id attribute to front end output * InfoWindow description containing element changed from
to