Commit b86001458d32bdc932dfc9bcc2e0d08192c7c0e4
1 parent
5b7c47f2
Exists in
master
and in
1 other branch
V. 0.4.0 - Finalizada a autenticação
Showing
14 changed files
with
487 additions
and
75 deletions
Show diff stats
.ssh/known_hosts
1 | bitbucket.org,104.192.143.2 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAubiN81eDcafrgMeLzaFPsw2kNvEcqTKl/VqLat/MaB33pZy0y3rJZtnqwR2qOOvbwKZYKiEO1O6VqNEBxKvJJelCq0dTXWT5pbO2gDXC6h6QDXCaHo6pOHGPUy+YBaGQRGuSusMEASYiWunYN0vCAI8QaXnWMXNMdFP3jHAJH0eDsoiGnLPBlBp4TNm6rYI74nMzgz3B9IikW4WVK+dc8KZJZWYjAuORU3jc1c/NPskD2ASinf8v3xnfXeukU0sJ5N6m5E8VLjObPEO+mN2t/FZTMZLiFqPWc/ALSqnMnnhwrNi2rbfg/rd/IpL8Le3pSBne8+seeFVBoGqzHM9yXw== | 1 | bitbucket.org,104.192.143.2 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAubiN81eDcafrgMeLzaFPsw2kNvEcqTKl/VqLat/MaB33pZy0y3rJZtnqwR2qOOvbwKZYKiEO1O6VqNEBxKvJJelCq0dTXWT5pbO2gDXC6h6QDXCaHo6pOHGPUy+YBaGQRGuSusMEASYiWunYN0vCAI8QaXnWMXNMdFP3jHAJH0eDsoiGnLPBlBp4TNm6rYI74nMzgz3B9IikW4WVK+dc8KZJZWYjAuORU3jc1c/NPskD2ASinf8v3xnfXeukU0sJ5N6m5E8VLjObPEO+mN2t/FZTMZLiFqPWc/ALSqnMnnhwrNi2rbfg/rd/IpL8Le3pSBne8+seeFVBoGqzHM9yXw== |
2 | +github.com,192.30.253.112 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ== |
app.js
1 | -var express = require('express'); | ||
2 | -var path = require('path'); | ||
3 | -var favicon = require('serve-favicon'); | ||
4 | -var logger = require('morgan'); | ||
5 | -var cookieParser = require('cookie-parser'); | ||
6 | -var bodyParser = require('body-parser'); | ||
7 | - | ||
8 | -var index = require('./routes/index'); | 1 | +var express = require("express"); |
2 | +const passport = require("passport"); | ||
3 | +var path = require("path"); | ||
4 | +var favicon = require("serve-favicon"); | ||
5 | +var logger = require("morgan"); | ||
6 | +const cookieSession = require("cookie-session"); | ||
7 | +var cookieParser = require("cookie-parser"); | ||
8 | +var bodyParser = require("body-parser"); | ||
9 | +const keys = require("./config/keys"); | ||
10 | + | ||
11 | +var index = require("./routes/index"); | ||
9 | 12 | ||
10 | var app = express(); | 13 | var app = express(); |
11 | 14 | ||
12 | // view engine setup | 15 | // view engine setup |
13 | -app.set('views', path.join(__dirname, 'views')); | ||
14 | -app.set('view engine', 'jade'); | 16 | +app.set("views", path.join(__dirname, "views")); |
17 | +app.set("view engine", "jade"); | ||
15 | 18 | ||
16 | // uncomment after placing your favicon in /public | 19 | // uncomment after placing your favicon in /public |
17 | -app.use(favicon(path.join(__dirname, 'public', 'favicon.ico'))); | ||
18 | -app.use(logger('dev')); | 20 | +app.use( |
21 | + cookieSession({ | ||
22 | + maxAge: 30 * 24 * 60 * 60 * 1000, // 30 days | ||
23 | + keys: [keys.cookieKey] | ||
24 | + }) | ||
25 | +); | ||
26 | +app.use(favicon(path.join(__dirname, "public", "favicon.ico"))); | ||
27 | +app.use(logger("dev")); | ||
19 | app.use(bodyParser.json()); | 28 | app.use(bodyParser.json()); |
20 | app.use(bodyParser.urlencoded({ extended: false })); | 29 | app.use(bodyParser.urlencoded({ extended: false })); |
21 | app.use(cookieParser()); | 30 | app.use(cookieParser()); |
22 | -app.use(express.static(path.join(__dirname, 'public'))); | 31 | +app.use(express.static(path.join(__dirname, "public"))); |
32 | +app.use(passport.initialize()); | ||
33 | +app.use(passport.session()); | ||
23 | 34 | ||
24 | -app.use('/', index); | 35 | +app.use("/", index); |
25 | 36 | ||
26 | // catch 404 and forward to error handler | 37 | // catch 404 and forward to error handler |
27 | app.use(function(req, res, next) { | 38 | app.use(function(req, res, next) { |
28 | - var err = new Error('Not Found'); | 39 | + var err = new Error("Not Found"); |
29 | err.status = 404; | 40 | err.status = 404; |
30 | next(err); | 41 | next(err); |
31 | }); | 42 | }); |
@@ -34,11 +45,11 @@ app.use(function(req, res, next) { | @@ -34,11 +45,11 @@ app.use(function(req, res, next) { | ||
34 | app.use(function(err, req, res, next) { | 45 | app.use(function(err, req, res, next) { |
35 | // set locals, only providing error in development | 46 | // set locals, only providing error in development |
36 | res.locals.message = err.message; | 47 | res.locals.message = err.message; |
37 | - res.locals.error = req.app.get('env') === 'development' ? err : {}; | 48 | + res.locals.error = req.app.get("env") === "development" ? err : {}; |
38 | 49 | ||
39 | // render the error page | 50 | // render the error page |
40 | res.status(err.status || 500); | 51 | res.status(err.status || 500); |
41 | - res.render('error'); | 52 | + res.render("error"); |
42 | }); | 53 | }); |
43 | 54 | ||
44 | module.exports = app; | 55 | module.exports = app; |
bin/www
@@ -8,8 +8,25 @@ var app = require('../app'); | @@ -8,8 +8,25 @@ var app = require('../app'); | ||
8 | var debug = require('debug')('pg-node:server'); | 8 | var debug = require('debug')('pg-node:server'); |
9 | var http = require('http'); | 9 | var http = require('http'); |
10 | 10 | ||
11 | +// /** | ||
12 | +// * Production verification | ||
13 | +// */ | ||
14 | + | ||
15 | +// if (process.env.NODE_ENV === 'production') { | ||
16 | +// // Express will serve up production assets | ||
17 | +// // like our main.js file, or main.css file! | ||
18 | +// app.use(express.static('../client/build')); | ||
19 | + | ||
20 | +// // Express will serve up the index.html file | ||
21 | +// // if it doesn't recognize the route | ||
22 | +// const path = require('path'); | ||
23 | +// app.get('*', (req, res) => { | ||
24 | +// res.sendFile(path.resolve(__dirname, 'client', 'build', 'index.html')); | ||
25 | +// }); | ||
26 | +// } | ||
27 | + | ||
11 | /** | 28 | /** |
12 | - * Get port from environment and store in Express. | 29 | + * Define port |
13 | */ | 30 | */ |
14 | 31 | ||
15 | var port = normalizePort(process.env.PORT || '5000'); | 32 | var port = normalizePort(process.env.PORT || '5000'); |
client/package.json
@@ -2,6 +2,23 @@ | @@ -2,6 +2,23 @@ | ||
2 | "name": "client", | 2 | "name": "client", |
3 | "version": "0.1.0", | 3 | "version": "0.1.0", |
4 | "private": true, | 4 | "private": true, |
5 | + "proxy": { | ||
6 | + "/map": { | ||
7 | + "target": "http://localhost:5000" | ||
8 | + }, | ||
9 | + "/map/pedro": { | ||
10 | + "target": "http://localhost:5000" | ||
11 | + }, | ||
12 | + "/stylesheets": { | ||
13 | + "target": "http://localhost:5000" | ||
14 | + }, | ||
15 | + "/auth/google": { | ||
16 | + "target": "http://localhost:5000" | ||
17 | + }, | ||
18 | + "/auth/google/callback": { | ||
19 | + "target": "http://localhost:5000" | ||
20 | + } | ||
21 | + }, | ||
5 | "dependencies": { | 22 | "dependencies": { |
6 | "react": "^16.3.2", | 23 | "react": "^16.3.2", |
7 | "react-dom": "^16.3.2", | 24 | "react-dom": "^16.3.2", |
client/public/favicon.ico
No preview for this file type
client/src/App.js
@@ -13,6 +13,9 @@ class App extends Component { | @@ -13,6 +13,9 @@ class App extends Component { | ||
13 | <p className="App-intro"> | 13 | <p className="App-intro"> |
14 | To get started, edit <code>src/App.js</code> and save to reload. | 14 | To get started, edit <code>src/App.js</code> and save to reload. |
15 | </p> | 15 | </p> |
16 | + <a href="/map/pedro">Mostra o mapa</a> | ||
17 | + <p></p> | ||
18 | + <a href="/auth/google">Login Google</a> | ||
16 | </div> | 19 | </div> |
17 | ); | 20 | ); |
18 | } | 21 | } |
package-lock.json
@@ -41,6 +41,16 @@ | @@ -41,6 +41,16 @@ | ||
41 | "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", | 41 | "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", |
42 | "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" | 42 | "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" |
43 | }, | 43 | }, |
44 | + "ansi-regex": { | ||
45 | + "version": "0.2.1", | ||
46 | + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-0.2.1.tgz", | ||
47 | + "integrity": "sha1-DY6UaWej2BQ/k+JOKYUl/BsiNfk=" | ||
48 | + }, | ||
49 | + "ansi-styles": { | ||
50 | + "version": "1.1.0", | ||
51 | + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.1.0.tgz", | ||
52 | + "integrity": "sha1-6uy/Zs1waIJ2Cy9GkVgrj1XXp94=" | ||
53 | + }, | ||
44 | "array-flatten": { | 54 | "array-flatten": { |
45 | "version": "1.1.1", | 55 | "version": "1.1.1", |
46 | "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", | 56 | "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", |
@@ -97,6 +107,11 @@ | @@ -97,6 +107,11 @@ | ||
97 | "safe-buffer": "5.1.1" | 107 | "safe-buffer": "5.1.1" |
98 | } | 108 | } |
99 | }, | 109 | }, |
110 | + "bluebird": { | ||
111 | + "version": "3.5.0", | ||
112 | + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.0.tgz", | ||
113 | + "integrity": "sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw=" | ||
114 | + }, | ||
100 | "body-parser": { | 115 | "body-parser": { |
101 | "version": "1.18.2", | 116 | "version": "1.18.2", |
102 | "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", | 117 | "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", |
@@ -114,6 +129,11 @@ | @@ -114,6 +129,11 @@ | ||
114 | "type-is": "1.6.16" | 129 | "type-is": "1.6.16" |
115 | } | 130 | } |
116 | }, | 131 | }, |
132 | + "bson": { | ||
133 | + "version": "1.0.6", | ||
134 | + "resolved": "https://registry.npmjs.org/bson/-/bson-1.0.6.tgz", | ||
135 | + "integrity": "sha512-D8zmlb46xfuK2gGvKmUjIklQEouN2nQ0LEHHeZ/NoHM2LDiMk2EYzZ5Ntw/Urk+bgMDosOZxaRzXxvhI5TcAVQ==" | ||
136 | + }, | ||
117 | "buffer-writer": { | 137 | "buffer-writer": { |
118 | "version": "1.0.1", | 138 | "version": "1.0.1", |
119 | "resolved": "https://registry.npmjs.org/buffer-writer/-/buffer-writer-1.0.1.tgz", | 139 | "resolved": "https://registry.npmjs.org/buffer-writer/-/buffer-writer-1.0.1.tgz", |
@@ -138,6 +158,25 @@ | @@ -138,6 +158,25 @@ | ||
138 | "lazy-cache": "1.0.4" | 158 | "lazy-cache": "1.0.4" |
139 | } | 159 | } |
140 | }, | 160 | }, |
161 | + "chalk": { | ||
162 | + "version": "0.5.1", | ||
163 | + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.5.1.tgz", | ||
164 | + "integrity": "sha1-Zjs6ZItotV0EaQ1JFnqoN4WPIXQ=", | ||
165 | + "requires": { | ||
166 | + "ansi-styles": "1.1.0", | ||
167 | + "escape-string-regexp": "1.0.5", | ||
168 | + "has-ansi": "0.1.0", | ||
169 | + "strip-ansi": "0.3.0", | ||
170 | + "supports-color": "0.2.0" | ||
171 | + }, | ||
172 | + "dependencies": { | ||
173 | + "supports-color": { | ||
174 | + "version": "0.2.0", | ||
175 | + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-0.2.0.tgz", | ||
176 | + "integrity": "sha1-2S3iaU6z9nMjlz1649i1W0wiGQo=" | ||
177 | + } | ||
178 | + } | ||
179 | + }, | ||
141 | "character-parser": { | 180 | "character-parser": { |
142 | "version": "1.2.1", | 181 | "version": "1.2.1", |
143 | "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-1.2.1.tgz", | 182 | "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-1.2.1.tgz", |
@@ -184,6 +223,21 @@ | @@ -184,6 +223,21 @@ | ||
184 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.6.0.tgz", | 223 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.6.0.tgz", |
185 | "integrity": "sha1-nfflL7Kgyw+4kFjugMMQQiXzfh0=" | 224 | "integrity": "sha1-nfflL7Kgyw+4kFjugMMQQiXzfh0=" |
186 | }, | 225 | }, |
226 | + "concurrently": { | ||
227 | + "version": "3.5.1", | ||
228 | + "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-3.5.1.tgz", | ||
229 | + "integrity": "sha512-689HrwGw8Rbk1xtV9C4dY6TPJAvIYZbRbnKSAtfJ7tHqICFGoZ0PCWYjxfmerRyxBG0o3sbG3pe7N8vqPwIHuQ==", | ||
230 | + "requires": { | ||
231 | + "chalk": "0.5.1", | ||
232 | + "commander": "2.6.0", | ||
233 | + "date-fns": "1.29.0", | ||
234 | + "lodash": "4.17.10", | ||
235 | + "rx": "2.3.24", | ||
236 | + "spawn-command": "0.0.2-1", | ||
237 | + "supports-color": "3.2.3", | ||
238 | + "tree-kill": "1.2.0" | ||
239 | + } | ||
240 | + }, | ||
187 | "constantinople": { | 241 | "constantinople": { |
188 | "version": "3.0.2", | 242 | "version": "3.0.2", |
189 | "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.0.2.tgz", | 243 | "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.0.2.tgz", |
@@ -216,11 +270,41 @@ | @@ -216,11 +270,41 @@ | ||
216 | "cookie-signature": "1.0.6" | 270 | "cookie-signature": "1.0.6" |
217 | } | 271 | } |
218 | }, | 272 | }, |
273 | + "cookie-session": { | ||
274 | + "version": "2.0.0-beta.3", | ||
275 | + "resolved": "https://registry.npmjs.org/cookie-session/-/cookie-session-2.0.0-beta.3.tgz", | ||
276 | + "integrity": "sha512-zyqm5tA0z9yMEB/xyP7lnRnqp8eLR2e0dap+9+rBwVigla9yPKn8XTL1jJymog8xjfrowqW2o5LUjixQChkqrw==", | ||
277 | + "requires": { | ||
278 | + "cookies": "0.7.1", | ||
279 | + "debug": "3.1.0", | ||
280 | + "on-headers": "1.0.1", | ||
281 | + "safe-buffer": "5.1.1" | ||
282 | + }, | ||
283 | + "dependencies": { | ||
284 | + "debug": { | ||
285 | + "version": "3.1.0", | ||
286 | + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", | ||
287 | + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", | ||
288 | + "requires": { | ||
289 | + "ms": "2.0.0" | ||
290 | + } | ||
291 | + } | ||
292 | + } | ||
293 | + }, | ||
219 | "cookie-signature": { | 294 | "cookie-signature": { |
220 | "version": "1.0.6", | 295 | "version": "1.0.6", |
221 | "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", | 296 | "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", |
222 | "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" | 297 | "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" |
223 | }, | 298 | }, |
299 | + "cookies": { | ||
300 | + "version": "0.7.1", | ||
301 | + "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.7.1.tgz", | ||
302 | + "integrity": "sha1-fIphX1SBxhq58WyDNzG8uPZjuZs=", | ||
303 | + "requires": { | ||
304 | + "depd": "1.1.2", | ||
305 | + "keygrip": "1.0.2" | ||
306 | + } | ||
307 | + }, | ||
224 | "core-js": { | 308 | "core-js": { |
225 | "version": "2.5.4", | 309 | "version": "2.5.4", |
226 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.4.tgz", | 310 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.4.tgz", |
@@ -250,6 +334,11 @@ | @@ -250,6 +334,11 @@ | ||
250 | "resolved": "https://registry.npmjs.org/css-stringify/-/css-stringify-1.0.5.tgz", | 334 | "resolved": "https://registry.npmjs.org/css-stringify/-/css-stringify-1.0.5.tgz", |
251 | "integrity": "sha1-sNBClG2ylTu50pKQCmy19tASIDE=" | 335 | "integrity": "sha1-sNBClG2ylTu50pKQCmy19tASIDE=" |
252 | }, | 336 | }, |
337 | + "date-fns": { | ||
338 | + "version": "1.29.0", | ||
339 | + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-1.29.0.tgz", | ||
340 | + "integrity": "sha512-lbTXWZ6M20cWH8N9S6afb0SBm6tMk+uUg6z3MqHPKE9atmsY3kJkTm8vKe93izJ2B2+q5MV990sM2CHgtAZaOw==" | ||
341 | + }, | ||
253 | "debug": { | 342 | "debug": { |
254 | "version": "2.6.9", | 343 | "version": "2.6.9", |
255 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", | 344 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", |
@@ -288,6 +377,11 @@ | @@ -288,6 +377,11 @@ | ||
288 | "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", | 377 | "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", |
289 | "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" | 378 | "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" |
290 | }, | 379 | }, |
380 | + "escape-string-regexp": { | ||
381 | + "version": "1.0.5", | ||
382 | + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", | ||
383 | + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" | ||
384 | + }, | ||
291 | "etag": { | 385 | "etag": { |
292 | "version": "1.8.1", | 386 | "version": "1.8.1", |
293 | "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", | 387 | "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", |
@@ -381,6 +475,19 @@ | @@ -381,6 +475,19 @@ | ||
381 | "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", | 475 | "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", |
382 | "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" | 476 | "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" |
383 | }, | 477 | }, |
478 | + "has-ansi": { | ||
479 | + "version": "0.1.0", | ||
480 | + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-0.1.0.tgz", | ||
481 | + "integrity": "sha1-hPJlqujA5qiKEtcCKJS3VoiUxi4=", | ||
482 | + "requires": { | ||
483 | + "ansi-regex": "0.2.1" | ||
484 | + } | ||
485 | + }, | ||
486 | + "has-flag": { | ||
487 | + "version": "1.0.0", | ||
488 | + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", | ||
489 | + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=" | ||
490 | + }, | ||
384 | "http-errors": { | 491 | "http-errors": { |
385 | "version": "1.6.2", | 492 | "version": "1.6.2", |
386 | "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", | 493 | "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", |
@@ -465,6 +572,16 @@ | @@ -465,6 +572,16 @@ | ||
465 | "promise": "6.1.0" | 572 | "promise": "6.1.0" |
466 | } | 573 | } |
467 | }, | 574 | }, |
575 | + "kareem": { | ||
576 | + "version": "2.0.7", | ||
577 | + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.0.7.tgz", | ||
578 | + "integrity": "sha512-p8+lEpsNs4N0fvNOC1/zzDO0wDrD3Pb1G+OwfIG+gKVK3MyY5jeaGYh+9Qx6jb4fEG2b3E6U98vaE9MH7Gilsw==" | ||
579 | + }, | ||
580 | + "keygrip": { | ||
581 | + "version": "1.0.2", | ||
582 | + "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.0.2.tgz", | ||
583 | + "integrity": "sha1-rTKXxVcGneqLz+ek+kkbdcXd65E=" | ||
584 | + }, | ||
468 | "kind-of": { | 585 | "kind-of": { |
469 | "version": "3.2.2", | 586 | "version": "3.2.2", |
470 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", | 587 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", |
@@ -483,6 +600,16 @@ | @@ -483,6 +600,16 @@ | ||
483 | "resolved": "https://registry.npmjs.org/leaflet-draw/-/leaflet-draw-1.0.2.tgz", | 600 | "resolved": "https://registry.npmjs.org/leaflet-draw/-/leaflet-draw-1.0.2.tgz", |
484 | "integrity": "sha512-iCcbXE9okhwznoTXjxVjoGFoKeiWGsgmWPKrPAeHUvtWZWK4t6YF6815D13wZoMxX2UM6tOmD7/VofCxx3S0+w==" | 601 | "integrity": "sha512-iCcbXE9okhwznoTXjxVjoGFoKeiWGsgmWPKrPAeHUvtWZWK4t6YF6815D13wZoMxX2UM6tOmD7/VofCxx3S0+w==" |
485 | }, | 602 | }, |
603 | + "lodash": { | ||
604 | + "version": "4.17.10", | ||
605 | + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", | ||
606 | + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==" | ||
607 | + }, | ||
608 | + "lodash.get": { | ||
609 | + "version": "4.4.2", | ||
610 | + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", | ||
611 | + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=" | ||
612 | + }, | ||
486 | "longest": { | 613 | "longest": { |
487 | "version": "1.0.1", | 614 | "version": "1.0.1", |
488 | "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", | 615 | "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", |
@@ -534,6 +661,56 @@ | @@ -534,6 +661,56 @@ | ||
534 | "minimist": "0.0.8" | 661 | "minimist": "0.0.8" |
535 | } | 662 | } |
536 | }, | 663 | }, |
664 | + "mongodb": { | ||
665 | + "version": "3.0.7", | ||
666 | + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.0.7.tgz", | ||
667 | + "integrity": "sha512-n/14kMJEoARXz1qhpNPhUocqy+z5130jhqgEIX1Tsl8UVpHrndQ8et+VmgC4yPK/I8Tcgc93JEMQCHTekBUnNA==", | ||
668 | + "requires": { | ||
669 | + "mongodb-core": "3.0.7" | ||
670 | + } | ||
671 | + }, | ||
672 | + "mongodb-core": { | ||
673 | + "version": "3.0.7", | ||
674 | + "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-3.0.7.tgz", | ||
675 | + "integrity": "sha512-z6YufO7s40wLiv2ssFshqoLS4+Kf+huhHq6KZ7gDArsKNzXYjAwTMnhEIJ9GQ8fIfBGs5tBLNPfbIDoCKGPmOw==", | ||
676 | + "requires": { | ||
677 | + "bson": "1.0.6", | ||
678 | + "require_optional": "1.0.1" | ||
679 | + } | ||
680 | + }, | ||
681 | + "mongoose": { | ||
682 | + "version": "5.0.17", | ||
683 | + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.0.17.tgz", | ||
684 | + "integrity": "sha512-RV1WBQhzW7oOhStR+s7LQYfgQWTJm4hgmU3TqtgTiBCfnj5/sNliX2/SY+ef7tpIZRUqEBV5xITZdAlwQ6Ymdg==", | ||
685 | + "requires": { | ||
686 | + "async": "2.1.4", | ||
687 | + "bson": "1.0.6", | ||
688 | + "kareem": "2.0.7", | ||
689 | + "lodash.get": "4.4.2", | ||
690 | + "mongodb": "3.0.7", | ||
691 | + "mongoose-legacy-pluralize": "1.0.2", | ||
692 | + "mpath": "0.4.1", | ||
693 | + "mquery": "3.0.0", | ||
694 | + "ms": "2.0.0", | ||
695 | + "regexp-clone": "0.0.1", | ||
696 | + "sliced": "1.0.1" | ||
697 | + }, | ||
698 | + "dependencies": { | ||
699 | + "async": { | ||
700 | + "version": "2.1.4", | ||
701 | + "resolved": "https://registry.npmjs.org/async/-/async-2.1.4.tgz", | ||
702 | + "integrity": "sha1-LSFgx3iAMuTdbL4lAvH5osj2zeQ=", | ||
703 | + "requires": { | ||
704 | + "lodash": "4.17.10" | ||
705 | + } | ||
706 | + } | ||
707 | + } | ||
708 | + }, | ||
709 | + "mongoose-legacy-pluralize": { | ||
710 | + "version": "1.0.2", | ||
711 | + "resolved": "https://registry.npmjs.org/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz", | ||
712 | + "integrity": "sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ==" | ||
713 | + }, | ||
537 | "morgan": { | 714 | "morgan": { |
538 | "version": "1.9.0", | 715 | "version": "1.9.0", |
539 | "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.9.0.tgz", | 716 | "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.9.0.tgz", |
@@ -546,6 +723,29 @@ | @@ -546,6 +723,29 @@ | ||
546 | "on-headers": "1.0.1" | 723 | "on-headers": "1.0.1" |
547 | } | 724 | } |
548 | }, | 725 | }, |
726 | + "mpath": { | ||
727 | + "version": "0.4.1", | ||
728 | + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.4.1.tgz", | ||
729 | + "integrity": "sha512-NNY/MpBkALb9jJmjpBlIi6GRoLveLUM0pJzgbp9vY9F7IQEb/HREC/nxrixechcQwd1NevOhJnWWV8QQQRE+OA==" | ||
730 | + }, | ||
731 | + "mquery": { | ||
732 | + "version": "3.0.0", | ||
733 | + "resolved": "https://registry.npmjs.org/mquery/-/mquery-3.0.0.tgz", | ||
734 | + "integrity": "sha512-WL1Lk8v4l8VFSSwN3yCzY9TXw+fKVYKn6f+w86TRzOLSE8k1yTgGaLBPUByJQi8VcLbOdnUneFV/y3Kv874pnQ==", | ||
735 | + "requires": { | ||
736 | + "bluebird": "3.5.0", | ||
737 | + "debug": "2.6.9", | ||
738 | + "regexp-clone": "0.0.1", | ||
739 | + "sliced": "0.0.5" | ||
740 | + }, | ||
741 | + "dependencies": { | ||
742 | + "sliced": { | ||
743 | + "version": "0.0.5", | ||
744 | + "resolved": "https://registry.npmjs.org/sliced/-/sliced-0.0.5.tgz", | ||
745 | + "integrity": "sha1-XtwETKTrb3gW1Qui/GPiXY/kcH8=" | ||
746 | + } | ||
747 | + } | ||
748 | + }, | ||
549 | "ms": { | 749 | "ms": { |
550 | "version": "2.0.0", | 750 | "version": "2.0.0", |
551 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", | 751 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", |
@@ -784,11 +984,37 @@ | @@ -784,11 +984,37 @@ | ||
784 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", | 984 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", |
785 | "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" | 985 | "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" |
786 | }, | 986 | }, |
987 | + "regexp-clone": { | ||
988 | + "version": "0.0.1", | ||
989 | + "resolved": "https://registry.npmjs.org/regexp-clone/-/regexp-clone-0.0.1.tgz", | ||
990 | + "integrity": "sha1-p8LgmJH9vzj7sQ03b7cwA+aKxYk=" | ||
991 | + }, | ||
787 | "repeat-string": { | 992 | "repeat-string": { |
788 | "version": "1.6.1", | 993 | "version": "1.6.1", |
789 | "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", | 994 | "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", |
790 | "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" | 995 | "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" |
791 | }, | 996 | }, |
997 | + "require_optional": { | ||
998 | + "version": "1.0.1", | ||
999 | + "resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz", | ||
1000 | + "integrity": "sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==", | ||
1001 | + "requires": { | ||
1002 | + "resolve-from": "2.0.0", | ||
1003 | + "semver": "5.5.0" | ||
1004 | + }, | ||
1005 | + "dependencies": { | ||
1006 | + "semver": { | ||
1007 | + "version": "5.5.0", | ||
1008 | + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", | ||
1009 | + "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" | ||
1010 | + } | ||
1011 | + } | ||
1012 | + }, | ||
1013 | + "resolve-from": { | ||
1014 | + "version": "2.0.0", | ||
1015 | + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", | ||
1016 | + "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=" | ||
1017 | + }, | ||
792 | "right-align": { | 1018 | "right-align": { |
793 | "version": "0.1.3", | 1019 | "version": "0.1.3", |
794 | "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", | 1020 | "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", |
@@ -797,6 +1023,11 @@ | @@ -797,6 +1023,11 @@ | ||
797 | "align-text": "0.1.4" | 1023 | "align-text": "0.1.4" |
798 | } | 1024 | } |
799 | }, | 1025 | }, |
1026 | + "rx": { | ||
1027 | + "version": "2.3.24", | ||
1028 | + "resolved": "https://registry.npmjs.org/rx/-/rx-2.3.24.tgz", | ||
1029 | + "integrity": "sha1-FPlQpCF9fjXapxu8vljv9o6ksrc=" | ||
1030 | + }, | ||
800 | "safe-buffer": { | 1031 | "safe-buffer": { |
801 | "version": "5.1.1", | 1032 | "version": "5.1.1", |
802 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", | 1033 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", |
@@ -862,6 +1093,11 @@ | @@ -862,6 +1093,11 @@ | ||
862 | "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", | 1093 | "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", |
863 | "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" | 1094 | "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" |
864 | }, | 1095 | }, |
1096 | + "sliced": { | ||
1097 | + "version": "1.0.1", | ||
1098 | + "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", | ||
1099 | + "integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=" | ||
1100 | + }, | ||
865 | "source-map": { | 1101 | "source-map": { |
866 | "version": "0.4.4", | 1102 | "version": "0.4.4", |
867 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", | 1103 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", |
@@ -870,6 +1106,11 @@ | @@ -870,6 +1106,11 @@ | ||
870 | "amdefine": "1.0.1" | 1106 | "amdefine": "1.0.1" |
871 | } | 1107 | } |
872 | }, | 1108 | }, |
1109 | + "spawn-command": { | ||
1110 | + "version": "0.0.2-1", | ||
1111 | + "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz", | ||
1112 | + "integrity": "sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A=" | ||
1113 | + }, | ||
873 | "split": { | 1114 | "split": { |
874 | "version": "1.0.1", | 1115 | "version": "1.0.1", |
875 | "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", | 1116 | "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", |
@@ -896,6 +1137,22 @@ | @@ -896,6 +1137,22 @@ | ||
896 | "safe-buffer": "5.1.1" | 1137 | "safe-buffer": "5.1.1" |
897 | } | 1138 | } |
898 | }, | 1139 | }, |
1140 | + "strip-ansi": { | ||
1141 | + "version": "0.3.0", | ||
1142 | + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.3.0.tgz", | ||
1143 | + "integrity": "sha1-JfSOoiynkYfzF0pNuHWTR7sSYiA=", | ||
1144 | + "requires": { | ||
1145 | + "ansi-regex": "0.2.1" | ||
1146 | + } | ||
1147 | + }, | ||
1148 | + "supports-color": { | ||
1149 | + "version": "3.2.3", | ||
1150 | + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", | ||
1151 | + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", | ||
1152 | + "requires": { | ||
1153 | + "has-flag": "1.0.0" | ||
1154 | + } | ||
1155 | + }, | ||
899 | "tedious": { | 1156 | "tedious": { |
900 | "version": "2.3.1", | 1157 | "version": "2.3.1", |
901 | "resolved": "https://registry.npmjs.org/tedious/-/tedious-2.3.1.tgz", | 1158 | "resolved": "https://registry.npmjs.org/tedious/-/tedious-2.3.1.tgz", |
@@ -994,6 +1251,11 @@ | @@ -994,6 +1251,11 @@ | ||
994 | } | 1251 | } |
995 | } | 1252 | } |
996 | }, | 1253 | }, |
1254 | + "tree-kill": { | ||
1255 | + "version": "1.2.0", | ||
1256 | + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.0.tgz", | ||
1257 | + "integrity": "sha512-DlX6dR0lOIRDFxI0mjL9IYg6OTncLm/Zt+JiBhE5OlFcAR8yc9S7FFXU9so0oda47frdM/JFsk7UjNt9vscKcg==" | ||
1258 | + }, | ||
997 | "type-is": { | 1259 | "type-is": { |
998 | "version": "1.6.16", | 1260 | "version": "1.6.16", |
999 | "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", | 1261 | "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", |
package.json
@@ -10,17 +10,22 @@ | @@ -10,17 +10,22 @@ | ||
10 | }, | 10 | }, |
11 | "scripts": { | 11 | "scripts": { |
12 | "start": "node ./bin/www", | 12 | "start": "node ./bin/www", |
13 | - "dev": "nodemon ./bin/www" | 13 | + "server": "nodemon ./bin/www", |
14 | + "client": "npm run start --prefix client", | ||
15 | + "dev": "concurrently \"npm run server\" \"npm run client\"" | ||
14 | }, | 16 | }, |
15 | "author": "José Maria Villac Pinheiro", | 17 | "author": "José Maria Villac Pinheiro", |
16 | "dependencies": { | 18 | "dependencies": { |
17 | "body-parser": "~1.18.2", | 19 | "body-parser": "~1.18.2", |
20 | + "concurrently": "^3.5.1", | ||
18 | "cookie-parser": "~1.4.3", | 21 | "cookie-parser": "~1.4.3", |
22 | + "cookie-session": "^2.0.0-beta.3", | ||
19 | "debug": "~2.6.9", | 23 | "debug": "~2.6.9", |
20 | "express": "~4.15.5", | 24 | "express": "~4.15.5", |
21 | "jade": "~1.11.0", | 25 | "jade": "~1.11.0", |
22 | "jade-bootstrap": "^1.0.14", | 26 | "jade-bootstrap": "^1.0.14", |
23 | "leaflet-draw": "^1.0.2", | 27 | "leaflet-draw": "^1.0.2", |
28 | + "mongoose": "^5.0.17", | ||
24 | "morgan": "~1.9.0", | 29 | "morgan": "~1.9.0", |
25 | "mssql": "^4.1.0", | 30 | "mssql": "^4.1.0", |
26 | "passport": "^0.4.0", | 31 | "passport": "^0.4.0", |
routes/authRoutes.js
@@ -26,4 +26,13 @@ module.exports = router => { | @@ -26,4 +26,13 @@ module.exports = router => { | ||
26 | res.redirect("/"); | 26 | res.redirect("/"); |
27 | } | 27 | } |
28 | ); | 28 | ); |
29 | + | ||
30 | + router.get("/api/logout", (req,res)=>{ | ||
31 | + req.logout(); | ||
32 | + res.send(req.user); | ||
33 | + }); | ||
34 | + | ||
35 | + router.get("/api/current_user", (req, res)=> { | ||
36 | + res.send (req.user); | ||
37 | + }); | ||
29 | }; | 38 | }; |
routes/index.js
1 | var express = require("express"); | 1 | var express = require("express"); |
2 | +const mongoose = require ("mongoose"); | ||
2 | var router = express.Router(); | 3 | var router = express.Router(); |
3 | -require("../services/passport"); | ||
4 | -require("../services/databases"); | ||
5 | const keys = require("../config/keys"); | 4 | const keys = require("../config/keys"); |
5 | +require("../models/User"); | ||
6 | +const passport = require("../services/passport"); | ||
7 | +require("../services/databases"); | ||
8 | + | ||
9 | +mongoose.connect(keys.mongoURI); | ||
6 | 10 | ||
7 | require("./authRoutes")(router); | 11 | require("./authRoutes")(router); |
12 | +require("./mapRoutes")(router); | ||
8 | 13 | ||
9 | /* GET home page. */ | 14 | /* GET home page. */ |
10 | router.get("/", function(req, res, next) { | 15 | router.get("/", function(req, res, next) { |
11 | res.render("index", { title: "NEXUS" }); | 16 | res.render("index", { title: "NEXUS" }); |
12 | }); | 17 | }); |
13 | 18 | ||
14 | -// bounding coordinates to view the map | ||
15 | -var boundSW = [-23.6506647239914, -46.5848434588656]; // lat, long | ||
16 | -var boundNE = [-23.5992830936269, -46.5447524538661]; | ||
17 | - | ||
18 | -router.get("/map/:nome", function(req, res, next) { | ||
19 | - var numeroConsumidor = require("../src/findConsumerNumber"); | ||
20 | - var coordenadas = require("../src/findCoordinatesFromConsumer"); | ||
21 | - var retorno = numeroConsumidor(req.params.nome, function(numero, nome, err) { | ||
22 | - if (err === undefined) { | ||
23 | - console.log("Terminou tudo: " + numero + " Nome: " + nome); | ||
24 | - var codigoComNome = numero + " - " + nome; | ||
25 | - var retorno = coordenadas(numero, function(x, y) { | ||
26 | - console.log("Terminou procura coordenadas x: " + x + " y: " + y); | ||
27 | - res.render("map", { | ||
28 | - codigo: numero, | ||
29 | - consumidor: codigoComNome, | ||
30 | - fator_zoom: 23, | ||
31 | - title: "NEXUS", | ||
32 | - lat: y, | ||
33 | - lng: x, | ||
34 | - bndSW: boundSW, | ||
35 | - bndNE: boundNE, | ||
36 | - geoserverWMS: keys.geoserverWMS, | ||
37 | - waterLayers: keys.waterLayers, | ||
38 | - server: keys.server | ||
39 | - }); | ||
40 | - }); | ||
41 | - } | ||
42 | - }); | ||
43 | -}); | ||
44 | - | ||
45 | -router.get(keys.server + "/ponto", function(req, res) { | ||
46 | - var coord = {}; | ||
47 | - console.log("Postou: "); | ||
48 | -}); | ||
49 | - | ||
50 | module.exports = router; | 19 | module.exports = router; |
@@ -0,0 +1,39 @@ | @@ -0,0 +1,39 @@ | ||
1 | +const keys = require("../config/keys"); | ||
2 | + | ||
3 | +module.exports = router => { | ||
4 | + // bounding coordinates to view the map | ||
5 | + var boundSW = [-23.6506647239914, -46.5848434588656]; // lat, long | ||
6 | + var boundNE = [-23.5992830936269, -46.5447524538661]; | ||
7 | + | ||
8 | + router.get("/map/:nome", function(req, res, next) { | ||
9 | + var numeroConsumidor = require("../src/findConsumerNumber"); | ||
10 | + var coordenadas = require("../src/findCoordinatesFromConsumer"); | ||
11 | + var retorno = numeroConsumidor(req.params.nome, function(numero, nome, err) { | ||
12 | + if (err === undefined) { | ||
13 | + console.log("Terminou tudo: " + numero + " Nome: " + nome); | ||
14 | + var codigoComNome = numero + " - " + nome; | ||
15 | + var retorno = coordenadas(numero, function(x, y) { | ||
16 | + console.log("Terminou procura coordenadas x: " + x + " y: " + y); | ||
17 | + res.render("map", { | ||
18 | + codigo: numero, | ||
19 | + consumidor: codigoComNome, | ||
20 | + fator_zoom: 23, | ||
21 | + title: "NEXUS", | ||
22 | + lat: y, | ||
23 | + lng: x, | ||
24 | + bndSW: boundSW, | ||
25 | + bndNE: boundNE, | ||
26 | + geoserverWMS: keys.geoserverWMS, | ||
27 | + waterLayers: keys.waterLayers, | ||
28 | + server: keys.server | ||
29 | + }); | ||
30 | + }); | ||
31 | + } | ||
32 | + }); | ||
33 | + }); | ||
34 | + | ||
35 | + router.get(keys.server + "/ponto", function(req, res) { | ||
36 | + var coord = {}; | ||
37 | + console.log("Postou: "); | ||
38 | + }); | ||
39 | +}; | ||
0 | \ No newline at end of file | 40 | \ No newline at end of file |
services/passport.js
1 | const passport = require("passport"); | 1 | const passport = require("passport"); |
2 | const GoogleStrategy = require("passport-google-oauth20").Strategy; | 2 | const GoogleStrategy = require("passport-google-oauth20").Strategy; |
3 | -const util = require('util'); | 3 | +// const util = require("util"); // example: console.log("Profile: " + util.inspect(profile, false, null)); |
4 | +const mongoose = require("mongoose"); | ||
4 | const keys = require("../config/keys"); | 5 | const keys = require("../config/keys"); |
5 | 6 | ||
7 | +const User = mongoose.model("users"); | ||
8 | + | ||
9 | +passport.serializeUser((user, done) => { | ||
10 | + done(null, user.id); | ||
11 | +}); | ||
12 | + | ||
13 | +passport.deserializeUser((id, done) => { | ||
14 | + User.findById(id).then(user => { | ||
15 | + done(null, user); | ||
16 | + }); | ||
17 | +}); | ||
18 | + | ||
6 | passport.use( | 19 | passport.use( |
7 | - new GoogleStrategy( | ||
8 | - { | ||
9 | - clientID: keys.googleClientID, | ||
10 | - clientSecret: keys.googleClientSecret, | ||
11 | - callbackURL: "/auth/google/callback" | ||
12 | - }, | ||
13 | - (accessToken, refreshToken, profile, done) => { // error function | ||
14 | - console.log("Ocorreu um erro"); | ||
15 | - console.log("Chave de acesso: " + accessToken); | ||
16 | - console.log("Refresh token: " + refreshToken); | ||
17 | - console.log("Profile: " + util.inspect(profile, false, null)); | ||
18 | - } | ||
19 | - ) | ||
20 | - ); | ||
21 | - | ||
22 | \ No newline at end of file | 20 | \ No newline at end of file |
21 | + new GoogleStrategy( | ||
22 | + { | ||
23 | + clientID: keys.googleClientID, | ||
24 | + clientSecret: keys.googleClientSecret, | ||
25 | + callbackURL: "/auth/google/callback" | ||
26 | + }, | ||
27 | + (accessToken, refreshToken, profile, done) => { | ||
28 | + // callback function | ||
29 | + User.findOne({ googleId: profile.id }).then(existingUser => { | ||
30 | + if (existingUser) { | ||
31 | + // we already have a record with the given profile ID | ||
32 | + done(null, existingUser); | ||
33 | + } else { | ||
34 | + // we don't have a record with the given profile ID | ||
35 | + new User({ googleId: profile.id }) | ||
36 | + .save() | ||
37 | + .then(user => done(null, user)); | ||
38 | + } | ||
39 | + }); | ||
40 | + } | ||
41 | + ) | ||
42 | +); |
views/map.jade
@@ -13,7 +13,7 @@ block content | @@ -13,7 +13,7 @@ block content | ||
13 | script. | 13 | script. |
14 | function relocate_home() | 14 | function relocate_home() |
15 | { | 15 | { |
16 | - location.href = "#{server}/map/" + nome.value; | 16 | + location.href = "/map/" + nome.value; |
17 | } | 17 | } |
18 | br | 18 | br |
19 | #map | 19 | #map |
@@ -44,8 +44,55 @@ block content | @@ -44,8 +44,55 @@ block content | ||
44 | var marker = L.marker([#{lat},#{lng}]).addTo(map); | 44 | var marker = L.marker([#{lat},#{lng}]).addTo(map); |
45 | marker.bindPopup("<b>#{codigo}</b><br>#{consumidor}").openPopup(); | 45 | marker.bindPopup("<b>#{codigo}</b><br>#{consumidor}").openPopup(); |
46 | 46 | ||
47 | + //- var modifiedDraw = L.Control.Draw.extend({ | ||
48 | + //- draw: { | ||
49 | + //- polygon: false, | ||
50 | + //- polyline: false, | ||
51 | + //- line: false, | ||
52 | + //- circle: false, | ||
53 | + //- rectangle: false, | ||
54 | + //- circlemarker: false, | ||
55 | + //- marker: true, | ||
56 | + //- toolbar: { | ||
57 | + //- buttons: { | ||
58 | + //- marker: 'Cadastra árvore' | ||
59 | + //- } | ||
60 | + //- } | ||
61 | + //- }, | ||
62 | + //- edit: { | ||
63 | + //- featureGroup: drawnItems | ||
64 | + //- } | ||
65 | + //- }); | ||
66 | + | ||
67 | + //- modifiedDraw = L.Control.Draw({ | ||
68 | + //- draw: { | ||
69 | + //- polygon: false, | ||
70 | + //- polyline: false, | ||
71 | + //- line: false, | ||
72 | + //- circle: false, | ||
73 | + //- rectangle: false, | ||
74 | + //- circlemarker: false, | ||
75 | + //- marker: true | ||
76 | + //- }, | ||
77 | + //- edit: { | ||
78 | + //- featureGroup: drawnItems | ||
79 | + //- }, | ||
80 | + //- }); | ||
81 | + | ||
47 | var drawControl = new L.Control.Draw({ | 82 | var drawControl = new L.Control.Draw({ |
48 | draw: { | 83 | draw: { |
84 | + toolbar: { | ||
85 | + buttons: { | ||
86 | + marker: 'Draw an awesome polygon' | ||
87 | + } | ||
88 | + }, | ||
89 | + handlers: { | ||
90 | + marker: { | ||
91 | + tooltip: { | ||
92 | + start: "Selecione no mapa para colocar uma árvore." | ||
93 | + } | ||
94 | + } | ||
95 | + }, | ||
49 | polygon: false, | 96 | polygon: false, |
50 | polyline: false, | 97 | polyline: false, |
51 | line: false, | 98 | line: false, |
@@ -56,8 +103,12 @@ block content | @@ -56,8 +103,12 @@ block content | ||
56 | }, | 103 | }, |
57 | edit: { | 104 | edit: { |
58 | featureGroup: drawnItems | 105 | featureGroup: drawnItems |
59 | - } | 106 | + }, |
60 | }); | 107 | }); |
108 | + L.drawLocal = { | ||
109 | + | ||
110 | + }; | ||
111 | + | ||
61 | map.addControl(drawControl); | 112 | map.addControl(drawControl); |
62 | 113 | ||
63 | // Truncate value based on number of decimals | 114 | // Truncate value based on number of decimals |