diff --git a/.meteor/packages b/.meteor/packages index 25a2c43..68b09c3 100644 --- a/.meteor/packages +++ b/.meteor/packages @@ -40,3 +40,4 @@ gadicc:blaze-react-component # Add braze to react mixmax:smart-disconnect # Disconnect on lost focus flowkey:raven # js errors davidsichau:piwik # Stats +thebakery:ipgeocoder diff --git a/.meteor/versions b/.meteor/versions index a407c72..12600a7 100644 --- a/.meteor/versions +++ b/.meteor/versions @@ -102,6 +102,7 @@ templating@1.3.2 templating-compiler@1.3.3 templating-runtime@1.3.2 templating-tools@1.1.2 +thebakery:ipgeocoder@0.1.2 themeteorchef:bert@2.1.3 tmeasday:check-npm-versions@0.3.1 tracker@1.1.3 diff --git a/imports/startup/server/geolocation.js b/imports/startup/server/geolocation.js new file mode 100644 index 0000000..d279953 --- /dev/null +++ b/imports/startup/server/geolocation.js @@ -0,0 +1,17 @@ +import { Meteor } from 'meteor/meteor'; + +// https://atmospherejs.com/thebakery/ipgeocoder +Meteor.startup(function(){ + IPGeocoder.load(); +}); + +Meteor.methods({ + geo: function() { + // https://stackoverflow.com/questions/14843232/how-to-get-the-user-ip-address-in-meteor-server/22657421#22657421 + clientIP = this.connection.clientAddress; + console.log(clientIP); + var geoData = IPGeocoder.geocode('82.124.236.10'); + console.log(JSON.stringify(geoData)); + return geoData; + } +}); diff --git a/imports/startup/server/index.js b/imports/startup/server/index.js index 09fb6b3..6c4282c 100644 --- a/imports/startup/server/index.js +++ b/imports/startup/server/index.js @@ -2,3 +2,4 @@ import './accounts'; import './api'; import './fixtures'; import './email'; +import './geolocation';