diff --git a/CHANGELOG.md b/CHANGELOG.md index 69d35b7..d68fa61 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [Unreleased] +## [1.0.0] - 2026-06-23 ### Added - Admin `LocationController` (FormController) for single-record save/cancel/apply diff --git a/README.md b/README.md index e9616fc..7f5ac08 100644 --- a/README.md +++ b/README.md @@ -31,11 +31,14 @@ A Joomla 4/5 package providing a store locator listing component with coordinati - **Schema.org** — LocalBusiness structured data markup on all frontend templates - **SEF URLs** — router with menu, standard, and nomenu rules - **Menu items** — "All Locations" list and single "Location Detail" picker +- **Interactive map** — Leaflet.js with OpenStreetMap tiles, markers with popups, auto-fit bounds +- **Location search** — city dropdown, radius filter, and browser geolocation ("Use My Location") ### Planned -- Interactive map display (OpenStreetMap/Leaflet or Google Maps) -- Location search by city, postcode, or radius with geolocation +- Proximity search (Haversine distance filtering) +- Marker clustering for dense location areas - Multi-category support with custom map markers +- ACL permissions and SQL upgrade schema - REST API via Joomla Web Services plugin - MokoSuiteShop integration for multi-store ecommerce diff --git a/source/script.php b/source/script.php new file mode 100644 index 0000000..3061830 --- /dev/null +++ b/source/script.php @@ -0,0 +1,101 @@ +minimumPhp, '<')) + { + Log::add( + 'MokoSuiteStoreLocator requires PHP ' . $this->minimumPhp . ' or later.', + Log::WARNING, + 'jerror' + ); + + return false; + } + + if (version_compare(JVERSION, $this->minimumJoomla, '<')) + { + Log::add( + 'MokoSuiteStoreLocator requires Joomla ' . $this->minimumJoomla . ' or later.', + Log::WARNING, + 'jerror' + ); + + return false; + } + + return true; + } + + /** + * Called after installation. + * + * @param string $type Installation type. + * @param InstallerAdapter $parent The parent installer object. + * + * @return boolean True on success. + * + * @since 1.0.0 + */ + public function postflight($type, $parent) + { + return true; + } + + /** + * Called on uninstallation. + * + * @param InstallerAdapter $parent The parent installer object. + * + * @return void + * + * @since 1.0.0 + */ + public function uninstall($parent) + { + } +}