Code refactoring
This commit is contained in:
		
							
								
								
									
										9
									
								
								app.js
									
									
									
									
									
								
							
							
						
						
									
										9
									
								
								app.js
									
									
									
									
									
								
							| @@ -1,4 +1,4 @@ | |||||||
| var domain = require('domain').create(); | var domain = require('domain'); | ||||||
| var express = require('express'); | var express = require('express'); | ||||||
| var fs = require('fs'); | var fs = require('fs'); | ||||||
| var flash = require('connect-flash'); | var flash = require('connect-flash'); | ||||||
| @@ -18,16 +18,17 @@ var config = require('./config/config'); | |||||||
| var passportConf = require('./config/passport'); | var passportConf = require('./config/passport'); | ||||||
|  |  | ||||||
| // Connect to MongoDB on a separate domain | // Connect to MongoDB on a separate domain | ||||||
| domain.run(function() { | var dbDomain = domain.create(); | ||||||
|  | dbDomain.run(function() { | ||||||
|   mongoose.connect(config.db); |   mongoose.connect(config.db); | ||||||
| }); | }); | ||||||
|  |  | ||||||
| // Graceful error handling for MongoDB | // Graceful error handling for MongoDB | ||||||
| domain.on('error', function(err) { | dbDomain.on('error', function(err) { | ||||||
|   console.error(err.message); |   console.error(err.message); | ||||||
|   setTimeout(function() { |   setTimeout(function() { | ||||||
|     mongoose.connect(config.db); |     mongoose.connect(config.db); | ||||||
|   }, 2000); |   }, 1000); | ||||||
| }); | }); | ||||||
|  |  | ||||||
| // Initialize express application | // Initialize express application | ||||||
|   | |||||||
| @@ -29,23 +29,23 @@ exports.getApi = function(req, res) { | |||||||
|  * Foursquare API example |  * Foursquare API example | ||||||
|  */ |  */ | ||||||
| exports.getFoursquare = function(req, res) { | exports.getFoursquare = function(req, res) { | ||||||
|   var foursquareToken = _.findWhere(req.user.tokens, { kind: 'foursquare' }); |   var foursquare = _.findWhere(req.user.tokens, { kind: 'foursquare' }); | ||||||
|   async.parallel({ |   async.parallel({ | ||||||
|     trendingVenues: function(callback) { |     trendingVenues: function(callback) { | ||||||
|       var geo = geoip.lookup('4.17.136.0'); |       var geo = geoip.lookup('4.17.136.0'); | ||||||
|       var lat = geo.ll[0]; |       var lat = geo.ll[0]; | ||||||
|       var lon = geo.ll[1]; |       var lon = geo.ll[1]; | ||||||
|       foursquare.Venues.getTrending(lat, lon, { limit: 50 }, foursquareToken.token, function(err, results) { |       foursquare.Venues.getTrending(lat, lon, { limit: 50 }, foursquare.token, function(err, results) { | ||||||
|         callback(err, results); |         callback(err, results); | ||||||
|       }); |       }); | ||||||
|     }, |     }, | ||||||
|     venueDetail: function(callback) { |     venueDetail: function(callback) { | ||||||
|       foursquare.Venues.getVenue('49da74aef964a5208b5e1fe3', foursquareToken.token, function(err, results) { |       foursquare.Venues.getVenue('49da74aef964a5208b5e1fe3', foursquare.token, function(err, results) { | ||||||
|         callback(err, results); |         callback(err, results); | ||||||
|       }); |       }); | ||||||
|     }, |     }, | ||||||
|     userCheckins: function(callback) { |     userCheckins: function(callback) { | ||||||
|       foursquare.Users.getCheckins('self', null, foursquareToken.token, function(err, results) { |       foursquare.Users.getCheckins('self', null, foursquare.token, function(err, results) { | ||||||
|         callback(err, results); |         callback(err, results); | ||||||
|       }); |       }); | ||||||
|     } |     } | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ exports.getAccount = function(req, res) { | |||||||
| exports.postAccountProfileTab = function(req, res, next) { | exports.postAccountProfileTab = function(req, res, next) { | ||||||
|   User.findById(req.user.id, function(err, user) { |   User.findById(req.user.id, function(err, user) { | ||||||
|     if (err) return next(err); |     if (err) return next(err); | ||||||
|  |  | ||||||
|     user.profile.name = req.body.name || ''; |     user.profile.name = req.body.name || ''; | ||||||
|     user.profile.email = req.body.email || ''; |     user.profile.email = req.body.email || ''; | ||||||
|     user.profile.gender = req.body.gender || ''; |     user.profile.gender = req.body.gender || ''; | ||||||
| @@ -42,6 +43,7 @@ exports.postAccountProfileTab = function(req, res, next) { | |||||||
|  */ |  */ | ||||||
| exports.postAccountSettingsTab = function(req, res) { | exports.postAccountSettingsTab = function(req, res) { | ||||||
|  |  | ||||||
|  |   // TODO: Virtual mongodb | ||||||
|   if (!req.body.password || !req.body.confirm.password) { |   if (!req.body.password || !req.body.confirm.password) { | ||||||
|     req.flash('error', 'Passwords cannot be blank'); |     req.flash('error', 'Passwords cannot be blank'); | ||||||
|     return res.redirect('/account'); |     return res.redirect('/account'); | ||||||
| @@ -125,7 +127,7 @@ exports.getSignup = function(req, res) { | |||||||
| /** | /** | ||||||
|  * POST /signup |  * POST /signup | ||||||
|  */ |  */ | ||||||
| exports.postSignup = function(req, res) { | exports.postSignup = function(req, res, next) { | ||||||
|   // TODO: add mongoose validation on ToS (virtual?) |   // TODO: add mongoose validation on ToS (virtual?) | ||||||
|   // TODO: Mongoose virtual, move logic to model |   // TODO: Mongoose virtual, move logic to model | ||||||
|  |  | ||||||
| @@ -139,7 +141,6 @@ exports.postSignup = function(req, res) { | |||||||
|     return res.redirect('/signup'); |     return res.redirect('/signup'); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |  | ||||||
|   var user = new User({ |   var user = new User({ | ||||||
|     username: req.body.username, |     username: req.body.username, | ||||||
|     password: req.body.password |     password: req.body.password | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user