Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Places = new Mongo.Collection('places');
- var loc;
- var pyrmont;
- if (Meteor.isClient) {
- var lookup = [];
- Meteor.startup(function() {
- GoogleMaps.load({key: "AIzaSyACgaDFJrh2pMm-bSta1S40wpKDDSpXO2M"
- , libraries: 'geometry, places'});
- // success callback
- function success(position) {
- Session.set('latitude', position.coords.latitude);
- Session.set('longitude', position.coords.longitude);
- };
- // error callback
- function error(err) {
- console.warn('ERROR(' + err.code + '): ' + err.message);
- };
- // geolocation options
- var options = {
- enableHighAccuracy: true,
- timeout: 5000,
- maximumAge: 0
- };
- // now try to get the user's position
- navigator.geolocation.getCurrentPosition(success, error, options);
- // grab location
- loc = {
- lat: Session.get('latitude'),
- lng: Session.get('longitude')
- };
- console.log("Your lat is: "+loc.lat);
- console.log("Your lng is: "+loc.lng);
- });
- Template.map.onCreated(function() {
- var self = this;
- GoogleMaps.ready('map', function(map) {
- self.autorun(function() {
- getBox();
- var handle = Meteor.subscribe('places', Session.get('box'));
- if (handle.ready()) {
- var places = Places.find().fetch();
- _.each(places, function(place) {
- var lat = place.location.coordinates[0];
- var lng = place.location.coordinates[1];
- if (!_.contains(lookup, lat+','+lng)) {
- var marker = new google.maps.Marker({
- position: new google.maps.LatLng(lat, lng),
- map: GoogleMaps.maps.map.instance
- });
- lookup.push(lat+','+lng);
- }
- });
- }
- });
- google.maps.event.addListener(map.instance, 'dragend', function(e){
- getBox();
- });
- google.maps.event.addListener(map.instance, 'zoom_changed', function(e){
- getBox();
- });
- });
- });
- Template.map.helpers({
- mapOptions: function() {
- if (GoogleMaps.loaded()) {
- var newMap=new google.maps.LatLng(loc.lat, loc.lng);
- var service=new google.maps.places.PlacesService(map);
- return {
- center: newMap,
- zoom: 14
- };
- }
- },
- doThis: function(){
- if(GoogleMaps.loaded()){
- console.log("HERE");
- pyrmont=new google.maps.LatLng(loc.lat,loc.lng);
- map = new google.maps.Map(document.getElementById('map'), {
- center: pyrmont,
- zoom: 15
- });
- service.textSearch(request, callback);
- function callback(results, status) {
- if (status == google.maps.places.PlacesServiceStatus.OK) {
- for (var i = 0; i < results.length; i++) {
- var place = results[i];
- console.log(results[i]);
- }
- }
- }}},
- places: function() {
- return Places.find();
- }
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement