From 085538ec47cb5baa29c4214d97c6926b285ab507 Mon Sep 17 00:00:00 2001 From: Kumar Damani Date: Sun, 17 Feb 2019 21:15:36 -0700 Subject: added basic site with basic map --- web/routes/index.js | 44 ++++++++++++++++++++++++++++++++++++++++++++ web/routes/users.js | 9 +++++++++ 2 files changed, 53 insertions(+) create mode 100644 web/routes/index.js create mode 100644 web/routes/users.js (limited to 'web/routes') diff --git a/web/routes/index.js b/web/routes/index.js new file mode 100644 index 0000000..896fdae --- /dev/null +++ b/web/routes/index.js @@ -0,0 +1,44 @@ +var express = require('express'); +var router = express.Router(); + +// Mongoose import +var mongoose = require('mongoose'); + +// Mongoose connection to MongoDB +mongoose.connect('mongodb://localhost:27017/helpthehome', { useNewUrlParser: true }, function (error) { + if (error) { + console.log(error); + } else { + console.log("Connected to mongo!"); + } +}); + +// Mongoose Schema definition +var Schema = mongoose.Schema; +var JsonSchema = new Schema({ + name: String, + type: Schema.Types.Mixed +}); + +// Mongoose Model definition +var Json = mongoose.model('JString', JsonSchema, 'pointcollection'); + +/* GET home page. */ +router.get('/', function(req, res, next) { + // for now just redirect to /map + //res.render('index', { title: 'Welcome' }); + res.redirect('/map'); +}); + +/* GET Map page. */ +router.get('/map', function(req,res) { + // we can use the database to fetch some data, for now just hardcode + Json.find({},{}, function(e,docs){ + res.render('map', { + lat : 43.6529, + lng : -79.3849 + }); + }); +}); + +module.exports = router; diff --git a/web/routes/users.js b/web/routes/users.js new file mode 100644 index 0000000..623e430 --- /dev/null +++ b/web/routes/users.js @@ -0,0 +1,9 @@ +var express = require('express'); +var router = express.Router(); + +/* GET users listing. */ +router.get('/', function(req, res, next) { + res.send('respond with a resource'); +}); + +module.exports = router; -- cgit v1.2.3 From 35818d32e197903bf314fafe6231f948de6149dd Mon Sep 17 00:00:00 2001 From: Kumar Damani Date: Sun, 17 Feb 2019 22:32:21 -0700 Subject: added check for envs and mongo uri, updated readme --- web/routes/index.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'web/routes') diff --git a/web/routes/index.js b/web/routes/index.js index 896fdae..73520b0 100644 --- a/web/routes/index.js +++ b/web/routes/index.js @@ -4,8 +4,18 @@ var router = express.Router(); // Mongoose import var mongoose = require('mongoose'); +var env = process.env.NODE_ENV || 'development'; +var uri; +if (env === 'development') { + uri = 'mongodb://localhost:27017/helpthehome' +} else if (env === 'qa') { + uri = process.env.MONGODB_URI +} else if (env === 'production') { + uri = '' +} + // Mongoose connection to MongoDB -mongoose.connect('mongodb://localhost:27017/helpthehome', { useNewUrlParser: true }, function (error) { +mongoose.connect(uri, { useNewUrlParser: true }, function (error) { if (error) { console.log(error); } else { -- cgit v1.2.3 From 5173673196466206f65ee8e207116839e60fb9d3 Mon Sep 17 00:00:00 2001 From: Kumar Damani Date: Mon, 18 Feb 2019 13:41:32 -0700 Subject: properly using the atlas mongo connection --- web/routes/index.js | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) (limited to 'web/routes') diff --git a/web/routes/index.js b/web/routes/index.js index 73520b0..d0b3d7c 100644 --- a/web/routes/index.js +++ b/web/routes/index.js @@ -8,6 +8,8 @@ var env = process.env.NODE_ENV || 'development'; var uri; if (env === 'development') { uri = 'mongodb://localhost:27017/helpthehome' + // use for small testing only if really necessary + // uri = 'mongodb+srv://development:dreamteam@cluster0-krnr4.mongodb.net/helpthehome?retryWrites=true' } else if (env === 'qa') { uri = process.env.MONGODB_URI } else if (env === 'production') { @@ -19,7 +21,7 @@ mongoose.connect(uri, { useNewUrlParser: true }, function (error) { if (error) { console.log(error); } else { - console.log("Connected to mongo!"); + console.log(`connected to ${uri}`); } }); @@ -27,11 +29,12 @@ mongoose.connect(uri, { useNewUrlParser: true }, function (error) { var Schema = mongoose.Schema; var JsonSchema = new Schema({ name: String, - type: Schema.Types.Mixed + type: Schema.Types.Mixed, + coordinates: Array }); // Mongoose Model definition -var Json = mongoose.model('JString', JsonSchema, 'pointcollection'); +var Json = mongoose.model('Jstring', JsonSchema, 'pointscollection'); /* GET home page. */ router.get('/', function(req, res, next) { @@ -42,11 +45,13 @@ router.get('/', function(req, res, next) { /* GET Map page. */ router.get('/map', function(req,res) { - // we can use the database to fetch some data, for now just hardcode - Json.find({},{}, function(e,docs){ + // we can use the database to fetch a point, SELECT coordinates + Json.findOne({name: "points"}, 'coordinates', function(e,point){ + if (e) return e; + // send the view lat, and long. res.render('map', { - lat : 43.6529, - lng : -79.3849 + lat : point.coordinates[1], + lng : point.coordinates[0] }); }); }); -- cgit v1.2.3 From 58d54b74424e1213c1888f3c3925ab8578d092f3 Mon Sep 17 00:00:00 2001 From: Kumar Damani Date: Mon, 18 Feb 2019 16:55:13 -0700 Subject: added error help for mongo connection --- web/routes/index.js | 2 ++ 1 file changed, 2 insertions(+) (limited to 'web/routes') diff --git a/web/routes/index.js b/web/routes/index.js index d0b3d7c..ffe1c21 100644 --- a/web/routes/index.js +++ b/web/routes/index.js @@ -20,6 +20,8 @@ if (env === 'development') { mongoose.connect(uri, { useNewUrlParser: true }, function (error) { if (error) { console.log(error); + console.log("App was not able to connect to the mongo server!"); + console.log("... double check that the mongo server is running locally"); } else { console.log(`connected to ${uri}`); } -- cgit v1.2.3