diff options
author | Stefan Giehl <stefan@piwik.org> | 2018-05-04 08:15:12 +0300 |
---|---|---|
committer | Matthieu Aubry <mattab@users.noreply.github.com> | 2018-05-04 08:15:12 +0300 |
commit | 18ad4f7f04d01b90fb9fc1d623585b5033092ed8 (patch) | |
tree | 256d6b3628c3d39b7d911f35698636d331194109 /plugins/GeoIp2/GeoIp2.php | |
parent | 453e3fbdabbf8c72264a3e15e2650cfad99b06b2 (diff) |
GeoIP2 implementation as a plugin (#12699)
* require geoip2/geoip2 composer package
* Determine region name based on Location Provider
* Adds empty GeoIp2 plugin
* move location_region column definition to GeoIp2 plugin
so it's get changed as soon as the plugin is activated
* Adds GeoIP2 location providers
* ignore GeoIP2 mmdb files
* Adds script to generate GeoIP2 test databases
* Adds Command to convert region codes from FIPS to ISO for old log table records
* Adds GeoIP2 AutoUpdater
* Use GeoIP2 in tests
* update test files
* code fixes
* adds tests
* rename old GeoIP providers to Legacy
* Let GeoIP autoupdater UI handle GeoIp2 as well
* convert region codes to ISO in API after switch to GeoIP2
* do not show GeoIP providers if GeoIP2 plugin is enabled an no GeoIP Legacy provider is still in use
* small fixes
* review changes
* Use correct region translations
* Show correct message if no database can be found
* if log tables have been converted, use archive date to check if region codes still need to be converted to iso
* fix tests
* Improves extracting GeoIP2 databases
* Adjust GeoLocation diagnostics
* readds old taiwan fixes
* Assume all third party location providers as 'recommended'
* Download database over HTTPS
* remove outdated comment (see https://github.com/matomo-org/matomo/issues/12411)
* Remove indication that Geoip2 may be slow, since we found it should be quite fast and this should not be an issue in theory
* skip detection if IP is empty & do not try convert IP to IPv4
* remove downloaded file if an error occurs while extracting
* command should be runnable multiple times
* use ISO codes for suggested region codes
* reload after wizard success
* Drop table if exists.
* Fix two translation keys.
* add special region handling for UK
* update system test
* update UI files
* submodule update
* update test files
Diffstat (limited to 'plugins/GeoIp2/GeoIp2.php')
-rw-r--r-- | plugins/GeoIp2/GeoIp2.php | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/plugins/GeoIp2/GeoIp2.php b/plugins/GeoIp2/GeoIp2.php new file mode 100644 index 0000000000..345ca549e8 --- /dev/null +++ b/plugins/GeoIp2/GeoIp2.php @@ -0,0 +1,30 @@ +<?php +/** + * Matomo - free/libre analytics platform + * + * @link https://matomo.org + * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later + * + */ +namespace Piwik\Plugins\GeoIp2; + +use Piwik\Plugins\UserCountry\LocationProvider; + +/** + * + */ +class GeoIp2 extends \Piwik\Plugin +{ + public function isTrackerPlugin() + { + return true; + } + + public function deactivate() + { + // switch to default provider if GeoIP2 provider was in use + if (LocationProvider::getCurrentProvider() instanceof GeoIp2) { + LocationProvider::setCurrentProvider(LocationProvider\DefaultProvider::ID); + } + } +} |