0.1.7 • Published 7 years ago

geotool-detector v0.1.7

Weekly downloads
-
License
ISC
Repository
-
Last release
7 years ago

geotool-detector

Installation

Browserify

Install geotool-detector module:

$ npm install --save geotool-detector

Declare detector class:

var Detector = require('geotool-detector');

In browser

<script src="dist/js/geotool-detector.js" charset="utf-8"></script>

Declare detector class:

var Detector = geotool.Detector;

Detect Geo-location

// create detector instance
var detector = new Detector({
	geoCoders: [{
		url: 'https://nominatim.openstreetmap.org/reverse',
		buildParameters: function(data) {
			return {
				format: 'json',
				lat: data.lat, lon: data.lng,
				zoom: 18, addressdetails: 1
			};
		},
		checkExpectation: function(response) {
			return response.data.address && 
					response.data.address.country_code;
		},
		transformResponse: function(response) {
			return { country_code: response.data.address && 
					response.data.address.country_code }
		}
	}],
	geoipCheckers: [{
		url: 'https://ipinfo.io/',
		checkExpectation: function(response) {
			return response.data && response.data.country;
		},
		transformResponse: function(response) {
			return { country_code: response.data && 
					response.data.country }
		}
	}, {
		url: 'https://freegeoip.net/json/',
		checkExpectation: function(response) {
			return response.data && response.data.country_code;
		},
		transformResponse: function(response) {
			return { country_code: response.data && 
					response.data.country_code }
		}
	}]
});

// request detect() method
geodetector.detect({}, function(error, result) {
	if (error) {
		console.log(" * Console - Error: %s", JSON.stringify(error));
		return;
	}
	console.log(" * Console - Result: %s", JSON.stringify(result));

	var country_code = result && result.country_code;
	if (country_code == 'VN' || country_code == 'vn') {
		// display vietnamese version
	} else {
		// default for the others (english version)
	}
});
0.1.7

7 years ago

0.1.6

7 years ago

0.1.5

7 years ago

0.1.4

7 years ago

0.1.3

7 years ago

0.1.2

7 years ago

0.1.1

7 years ago

0.1.0

7 years ago