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/UserCountry/angularjs | |
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/UserCountry/angularjs')
-rw-r--r-- | plugins/UserCountry/angularjs/location-provider-updater/location-provider-updater.controller.js | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/plugins/UserCountry/angularjs/location-provider-updater/location-provider-updater.controller.js b/plugins/UserCountry/angularjs/location-provider-updater/location-provider-updater.controller.js index 8c94467ec1..677acec8a3 100644 --- a/plugins/UserCountry/angularjs/location-provider-updater/location-provider-updater.controller.js +++ b/plugins/UserCountry/angularjs/location-provider-updater/location-provider-updater.controller.js @@ -7,9 +7,9 @@ (function () { angular.module('piwikApp').controller('LocationProviderUpdaterController', LocationProviderUpdaterController); - LocationProviderUpdaterController.$inject = ['piwikApi']; + LocationProviderUpdaterController.$inject = ['piwikApi', '$window']; - function LocationProviderUpdaterController(piwikApi) { + function LocationProviderUpdaterController(piwikApi, $window) { // remember to keep controller very simple. Create a service/factory (model) if needed var self = this; @@ -33,7 +33,7 @@ callback(response); } else { // update progress bar - var newProgressVal = Math.ceil((response.current_size / response.expected_file_size) * 100); + var newProgressVal = Math.floor((response.current_size / response.expected_file_size) * 100); self[progressBarId] = Math.min(newProgressVal, 100); // if incomplete, download next chunk, otherwise, show updater manager @@ -66,7 +66,7 @@ $('#geoipdb-update-info').html(response.error); self.geoipDatabaseInstalled = true; } else { - self.showGeoIpUpdateInfo(); + $window.location.reload(); } } ); @@ -136,7 +136,7 @@ piwikApi.post({ period: this.updatePeriod, module: 'UserCountry', - action: 'updateGeoIPLinks', + action: 'updateGeoIPLinks' }, { loc_db: this.locationDbUrl, isp_db: this.ispDbUrl, |