Commit 8a41804093aacb62701b6d1b2006fa6747cbac92
1 parent
82381832
Exists in
master
and in
1 other branch
V. 0.8.0 - Change from Jade to Pug
Showing
12 changed files
with
490 additions
and
106 deletions
Show diff stats
app.js
@@ -14,7 +14,7 @@ var app = express(); | @@ -14,7 +14,7 @@ var app = express(); | ||
14 | 14 | ||
15 | // view engine setup | 15 | // view engine setup |
16 | app.set("views", path.join(__dirname, "views")); | 16 | app.set("views", path.join(__dirname, "views")); |
17 | -app.set("view engine", "jade"); | 17 | +app.set("view engine", "pug"); |
18 | 18 | ||
19 | // uncomment after placing your favicon in /public | 19 | // uncomment after placing your favicon in /public |
20 | app.use( | 20 | app.use( |
@@ -0,0 +1,112 @@ | @@ -0,0 +1,112 @@ | ||
1 | +#!/usr/bin/env node // to invoke node, in linux system, that is installed in a path accessed through the environment variable | ||
2 | + | ||
3 | +/** | ||
4 | + * Module dependencies. | ||
5 | + * Everything starts here | ||
6 | + */ | ||
7 | + | ||
8 | +var app = require('./app'); // call app.js that will call routes throught ../routes/index.js | ||
9 | +var debug = require('debug')('pg-node:server'); | ||
10 | +// var http = require('http'); | ||
11 | + | ||
12 | +/** | ||
13 | + * Production version verification. It needs to build for React client. | ||
14 | + */ | ||
15 | +var express = require("express"); | ||
16 | +if (process.env.NODE_ENV === 'production') { | ||
17 | + // Express will serve up production assets | ||
18 | + // like our main.js file or main.css file! | ||
19 | + // this guarantees that expressjs will look | ||
20 | + // for specific files in specific directories | ||
21 | + console.log ("NEXUS-We are in production..."); | ||
22 | + app.use(express.static('./client/build')); // if get request comes in from some route or some file or for anything for my application and we do not understant, then look in some file from this directory to see if some file that matches up the request | ||
23 | + | ||
24 | + // Express will serve up the index.html file | ||
25 | + // if it doesn't recognize the route. | ||
26 | + // If something arrives from a route that we do not understand, | ||
27 | + // look at the index.htm file in the client directory | ||
28 | + const path = require('path'); | ||
29 | + app.get('*', (req, res) => { | ||
30 | + res.sendFile(path.resolve(__dirname, 'client', 'build', 'index.html')); | ||
31 | + }); | ||
32 | +} | ||
33 | + | ||
34 | +/** | ||
35 | + * Define port | ||
36 | + */ | ||
37 | +var port = normalizePort(process.env.PORT || '5000'); | ||
38 | +app.listen(port); | ||
39 | + | ||
40 | +/** | ||
41 | + * Create HTTP server. | ||
42 | + */ | ||
43 | + | ||
44 | +// var server = http.createServer(app); | ||
45 | + | ||
46 | +/** | ||
47 | + * Listen on provided port, on all network interfaces. | ||
48 | + */ | ||
49 | + | ||
50 | +// server.listen(port); | ||
51 | +// server.on('error', onError); | ||
52 | +// server.on('listening', onListening); | ||
53 | + | ||
54 | +/** | ||
55 | + * Normalize a port into a number, string, or false. | ||
56 | + */ | ||
57 | + | ||
58 | +function normalizePort(val) { | ||
59 | + var port = parseInt(val, 10); | ||
60 | + | ||
61 | + if (isNaN(port)) { | ||
62 | + // named pipe | ||
63 | + return val; | ||
64 | + } | ||
65 | + | ||
66 | + if (port >= 0) { | ||
67 | + // port number | ||
68 | + return port; | ||
69 | + } | ||
70 | + | ||
71 | + return false; | ||
72 | +} | ||
73 | + | ||
74 | +/** | ||
75 | + * Event listener for HTTP server "error" event. | ||
76 | + */ | ||
77 | + | ||
78 | +function onError(error) { | ||
79 | + if (error.syscall !== 'listen') { | ||
80 | + throw error; | ||
81 | + } | ||
82 | + | ||
83 | + var bind = typeof port === 'string' | ||
84 | + ? 'Pipe ' + port | ||
85 | + : 'Port ' + port; | ||
86 | + | ||
87 | + // handle specific listen errors with friendly messages | ||
88 | + switch (error.code) { | ||
89 | + case 'EACCES': | ||
90 | + console.error(bind + ' requires elevated privileges'); | ||
91 | + process.exit(1); | ||
92 | + break; | ||
93 | + case 'EADDRINUSE': | ||
94 | + console.error(bind + ' is already in use'); | ||
95 | + process.exit(1); | ||
96 | + break; | ||
97 | + default: | ||
98 | + throw error; | ||
99 | + } | ||
100 | +} | ||
101 | + | ||
102 | +/** | ||
103 | + * Event listener for HTTP server "listening" event. | ||
104 | + */ | ||
105 | + | ||
106 | +// function onListening() { | ||
107 | +// var addr = server.address(); | ||
108 | +// var bind = typeof addr === 'string' | ||
109 | +// ? 'pipe ' + addr | ||
110 | +// : 'port ' + addr.port; | ||
111 | +// debug('Listening on ' + bind); | ||
112 | +// } |
package-lock.json
1 | { | 1 | { |
2 | "name": "GeoSanWeb", | 2 | "name": "GeoSanWeb", |
3 | - "version": "0.6.2", | 3 | + "version": "0.7.1", |
4 | "lockfileVersion": 1, | 4 | "lockfileVersion": 1, |
5 | "requires": true, | 5 | "requires": true, |
6 | "dependencies": { | 6 | "dependencies": { |
@@ -381,6 +381,11 @@ | @@ -381,6 +381,11 @@ | ||
381 | "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", | 381 | "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", |
382 | "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" | 382 | "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" |
383 | }, | 383 | }, |
384 | + "doctypes": { | ||
385 | + "version": "1.1.0", | ||
386 | + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", | ||
387 | + "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=" | ||
388 | + }, | ||
384 | "ee-first": { | 389 | "ee-first": { |
385 | "version": "1.1.1", | 390 | "version": "1.1.1", |
386 | "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", | 391 | "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", |
@@ -494,6 +499,11 @@ | @@ -494,6 +499,11 @@ | ||
494 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", | 499 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", |
495 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" | 500 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" |
496 | }, | 501 | }, |
502 | + "function-bind": { | ||
503 | + "version": "1.1.1", | ||
504 | + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", | ||
505 | + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" | ||
506 | + }, | ||
497 | "generic-pool": { | 507 | "generic-pool": { |
498 | "version": "3.4.2", | 508 | "version": "3.4.2", |
499 | "resolved": "https://registry.npmjs.org/generic-pool/-/generic-pool-3.4.2.tgz", | 509 | "resolved": "https://registry.npmjs.org/generic-pool/-/generic-pool-3.4.2.tgz", |
@@ -582,6 +592,14 @@ | @@ -582,6 +592,14 @@ | ||
582 | } | 592 | } |
583 | } | 593 | } |
584 | }, | 594 | }, |
595 | + "has": { | ||
596 | + "version": "1.0.3", | ||
597 | + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", | ||
598 | + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", | ||
599 | + "requires": { | ||
600 | + "function-bind": "^1.1.1" | ||
601 | + } | ||
602 | + }, | ||
585 | "has-ansi": { | 603 | "has-ansi": { |
586 | "version": "0.1.0", | 604 | "version": "0.1.0", |
587 | "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-0.1.0.tgz", | 605 | "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-0.1.0.tgz", |
@@ -642,11 +660,35 @@ | @@ -642,11 +660,35 @@ | ||
642 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", | 660 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", |
643 | "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=" | 661 | "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=" |
644 | }, | 662 | }, |
663 | + "is-expression": { | ||
664 | + "version": "3.0.0", | ||
665 | + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", | ||
666 | + "integrity": "sha1-Oayqa+f9HzRx3ELHQW5hwkMXrJ8=", | ||
667 | + "requires": { | ||
668 | + "acorn": "~4.0.2", | ||
669 | + "object-assign": "^4.0.1" | ||
670 | + }, | ||
671 | + "dependencies": { | ||
672 | + "acorn": { | ||
673 | + "version": "4.0.13", | ||
674 | + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", | ||
675 | + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" | ||
676 | + } | ||
677 | + } | ||
678 | + }, | ||
645 | "is-promise": { | 679 | "is-promise": { |
646 | "version": "2.1.0", | 680 | "version": "2.1.0", |
647 | "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", | 681 | "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", |
648 | "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" | 682 | "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" |
649 | }, | 683 | }, |
684 | + "is-regex": { | ||
685 | + "version": "1.0.4", | ||
686 | + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", | ||
687 | + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", | ||
688 | + "requires": { | ||
689 | + "has": "^1.0.1" | ||
690 | + } | ||
691 | + }, | ||
650 | "isarray": { | 692 | "isarray": { |
651 | "version": "1.0.0", | 693 | "version": "1.0.0", |
652 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", | 694 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", |
@@ -674,6 +716,11 @@ | @@ -674,6 +716,11 @@ | ||
674 | "resolved": "https://registry.npmjs.org/jade-bootstrap/-/jade-bootstrap-1.0.14.tgz", | 716 | "resolved": "https://registry.npmjs.org/jade-bootstrap/-/jade-bootstrap-1.0.14.tgz", |
675 | "integrity": "sha1-x99tRjinKHKZ3HUXXrUAnzJyEeg=" | 717 | "integrity": "sha1-x99tRjinKHKZ3HUXXrUAnzJyEeg=" |
676 | }, | 718 | }, |
719 | + "js-stringify": { | ||
720 | + "version": "1.0.2", | ||
721 | + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", | ||
722 | + "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=" | ||
723 | + }, | ||
677 | "jstransformer": { | 724 | "jstransformer": { |
678 | "version": "0.0.2", | 725 | "version": "0.0.2", |
679 | "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-0.0.2.tgz", | 726 | "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-0.0.2.tgz", |
@@ -920,6 +967,11 @@ | @@ -920,6 +967,11 @@ | ||
920 | "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", | 967 | "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", |
921 | "integrity": "sha1-vR/vr2hslrdUda7VGWQS/2DPucE=" | 968 | "integrity": "sha1-vR/vr2hslrdUda7VGWQS/2DPucE=" |
922 | }, | 969 | }, |
970 | + "object-assign": { | ||
971 | + "version": "4.1.1", | ||
972 | + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", | ||
973 | + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" | ||
974 | + }, | ||
923 | "on-finished": { | 975 | "on-finished": { |
924 | "version": "2.3.0", | 976 | "version": "2.3.0", |
925 | "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", | 977 | "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", |
@@ -997,6 +1049,11 @@ | @@ -997,6 +1049,11 @@ | ||
997 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", | 1049 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", |
998 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" | 1050 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" |
999 | }, | 1051 | }, |
1052 | + "path-parse": { | ||
1053 | + "version": "1.0.5", | ||
1054 | + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", | ||
1055 | + "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=" | ||
1056 | + }, | ||
1000 | "path-to-regexp": { | 1057 | "path-to-regexp": { |
1001 | "version": "0.1.7", | 1058 | "version": "0.1.7", |
1002 | "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", | 1059 | "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", |
@@ -1112,6 +1169,206 @@ | @@ -1112,6 +1169,206 @@ | ||
1112 | "ipaddr.js": "1.4.0" | 1169 | "ipaddr.js": "1.4.0" |
1113 | } | 1170 | } |
1114 | }, | 1171 | }, |
1172 | + "pug": { | ||
1173 | + "version": "2.0.3", | ||
1174 | + "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.3.tgz", | ||
1175 | + "integrity": "sha1-ccuoJTfJWl6rftBGluQiH1Oqh44=", | ||
1176 | + "requires": { | ||
1177 | + "pug-code-gen": "^2.0.1", | ||
1178 | + "pug-filters": "^3.1.0", | ||
1179 | + "pug-lexer": "^4.0.0", | ||
1180 | + "pug-linker": "^3.0.5", | ||
1181 | + "pug-load": "^2.0.11", | ||
1182 | + "pug-parser": "^5.0.0", | ||
1183 | + "pug-runtime": "^2.0.4", | ||
1184 | + "pug-strip-comments": "^1.0.3" | ||
1185 | + } | ||
1186 | + }, | ||
1187 | + "pug-attrs": { | ||
1188 | + "version": "2.0.3", | ||
1189 | + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.3.tgz", | ||
1190 | + "integrity": "sha1-owlflw5kFR972tlX7vVftdeQXRU=", | ||
1191 | + "requires": { | ||
1192 | + "constantinople": "^3.0.1", | ||
1193 | + "js-stringify": "^1.0.1", | ||
1194 | + "pug-runtime": "^2.0.4" | ||
1195 | + } | ||
1196 | + }, | ||
1197 | + "pug-bootstrap": { | ||
1198 | + "version": "0.0.15", | ||
1199 | + "resolved": "https://registry.npmjs.org/pug-bootstrap/-/pug-bootstrap-0.0.15.tgz", | ||
1200 | + "integrity": "sha1-Ack6s2nPGpRWdtcOoSUjaAjhIRY=", | ||
1201 | + "requires": { | ||
1202 | + "pug": "^2.0.0-beta3" | ||
1203 | + } | ||
1204 | + }, | ||
1205 | + "pug-code-gen": { | ||
1206 | + "version": "2.0.1", | ||
1207 | + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.1.tgz", | ||
1208 | + "integrity": "sha1-CVHsgyJddNjPxHan+Zolm199BQw=", | ||
1209 | + "requires": { | ||
1210 | + "constantinople": "^3.0.1", | ||
1211 | + "doctypes": "^1.1.0", | ||
1212 | + "js-stringify": "^1.0.1", | ||
1213 | + "pug-attrs": "^2.0.3", | ||
1214 | + "pug-error": "^1.3.2", | ||
1215 | + "pug-runtime": "^2.0.4", | ||
1216 | + "void-elements": "^2.0.1", | ||
1217 | + "with": "^5.0.0" | ||
1218 | + }, | ||
1219 | + "dependencies": { | ||
1220 | + "acorn": { | ||
1221 | + "version": "3.3.0", | ||
1222 | + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", | ||
1223 | + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=" | ||
1224 | + }, | ||
1225 | + "acorn-globals": { | ||
1226 | + "version": "3.1.0", | ||
1227 | + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", | ||
1228 | + "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", | ||
1229 | + "requires": { | ||
1230 | + "acorn": "^4.0.4" | ||
1231 | + }, | ||
1232 | + "dependencies": { | ||
1233 | + "acorn": { | ||
1234 | + "version": "4.0.13", | ||
1235 | + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", | ||
1236 | + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" | ||
1237 | + } | ||
1238 | + } | ||
1239 | + }, | ||
1240 | + "with": { | ||
1241 | + "version": "5.1.1", | ||
1242 | + "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", | ||
1243 | + "integrity": "sha1-+k2qktrzLE6pTtRTyB8EaGtXXf4=", | ||
1244 | + "requires": { | ||
1245 | + "acorn": "^3.1.0", | ||
1246 | + "acorn-globals": "^3.0.0" | ||
1247 | + } | ||
1248 | + } | ||
1249 | + } | ||
1250 | + }, | ||
1251 | + "pug-error": { | ||
1252 | + "version": "1.3.2", | ||
1253 | + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.2.tgz", | ||
1254 | + "integrity": "sha1-U659nSm7A89WRJOgJhCfVMR/XyY=" | ||
1255 | + }, | ||
1256 | + "pug-filters": { | ||
1257 | + "version": "3.1.0", | ||
1258 | + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-3.1.0.tgz", | ||
1259 | + "integrity": "sha1-JxZVVbwEwjbkqisDZiRt+gIbYm4=", | ||
1260 | + "requires": { | ||
1261 | + "clean-css": "^4.1.11", | ||
1262 | + "constantinople": "^3.0.1", | ||
1263 | + "jstransformer": "1.0.0", | ||
1264 | + "pug-error": "^1.3.2", | ||
1265 | + "pug-walk": "^1.1.7", | ||
1266 | + "resolve": "^1.1.6", | ||
1267 | + "uglify-js": "^2.6.1" | ||
1268 | + }, | ||
1269 | + "dependencies": { | ||
1270 | + "asap": { | ||
1271 | + "version": "2.0.6", | ||
1272 | + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", | ||
1273 | + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" | ||
1274 | + }, | ||
1275 | + "clean-css": { | ||
1276 | + "version": "4.1.11", | ||
1277 | + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.1.11.tgz", | ||
1278 | + "integrity": "sha1-Ls3xRaujj1R0DybO/Q/z4D4SXWo=", | ||
1279 | + "requires": { | ||
1280 | + "source-map": "0.5.x" | ||
1281 | + } | ||
1282 | + }, | ||
1283 | + "jstransformer": { | ||
1284 | + "version": "1.0.0", | ||
1285 | + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", | ||
1286 | + "integrity": "sha1-7Yvwkh4vPx7U1cGkT2hwntJHIsM=", | ||
1287 | + "requires": { | ||
1288 | + "is-promise": "^2.0.0", | ||
1289 | + "promise": "^7.0.1" | ||
1290 | + } | ||
1291 | + }, | ||
1292 | + "promise": { | ||
1293 | + "version": "7.3.1", | ||
1294 | + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", | ||
1295 | + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", | ||
1296 | + "requires": { | ||
1297 | + "asap": "~2.0.3" | ||
1298 | + } | ||
1299 | + }, | ||
1300 | + "source-map": { | ||
1301 | + "version": "0.5.7", | ||
1302 | + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", | ||
1303 | + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" | ||
1304 | + } | ||
1305 | + } | ||
1306 | + }, | ||
1307 | + "pug-lexer": { | ||
1308 | + "version": "4.0.0", | ||
1309 | + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.0.0.tgz", | ||
1310 | + "integrity": "sha1-IQwYRX7y4XYCQnQMXmR715TOwng=", | ||
1311 | + "requires": { | ||
1312 | + "character-parser": "^2.1.1", | ||
1313 | + "is-expression": "^3.0.0", | ||
1314 | + "pug-error": "^1.3.2" | ||
1315 | + }, | ||
1316 | + "dependencies": { | ||
1317 | + "character-parser": { | ||
1318 | + "version": "2.2.0", | ||
1319 | + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", | ||
1320 | + "integrity": "sha1-x84o821LzZdE5f/CxfzeHHMmH8A=", | ||
1321 | + "requires": { | ||
1322 | + "is-regex": "^1.0.3" | ||
1323 | + } | ||
1324 | + } | ||
1325 | + } | ||
1326 | + }, | ||
1327 | + "pug-linker": { | ||
1328 | + "version": "3.0.5", | ||
1329 | + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.5.tgz", | ||
1330 | + "integrity": "sha1-npp65ABWgtAn3uuWsAD4juuDoC8=", | ||
1331 | + "requires": { | ||
1332 | + "pug-error": "^1.3.2", | ||
1333 | + "pug-walk": "^1.1.7" | ||
1334 | + } | ||
1335 | + }, | ||
1336 | + "pug-load": { | ||
1337 | + "version": "2.0.11", | ||
1338 | + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.11.tgz", | ||
1339 | + "integrity": "sha1-5kjlftET/iwfRdV4WOorrWvAFSc=", | ||
1340 | + "requires": { | ||
1341 | + "object-assign": "^4.1.0", | ||
1342 | + "pug-walk": "^1.1.7" | ||
1343 | + } | ||
1344 | + }, | ||
1345 | + "pug-parser": { | ||
1346 | + "version": "5.0.0", | ||
1347 | + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.0.tgz", | ||
1348 | + "integrity": "sha1-45Stmz/KkxI5QK/4hcBuRKt+aOQ=", | ||
1349 | + "requires": { | ||
1350 | + "pug-error": "^1.3.2", | ||
1351 | + "token-stream": "0.0.1" | ||
1352 | + } | ||
1353 | + }, | ||
1354 | + "pug-runtime": { | ||
1355 | + "version": "2.0.4", | ||
1356 | + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.4.tgz", | ||
1357 | + "integrity": "sha1-4XjhvaaKsujArPybztLFT9iM61g=" | ||
1358 | + }, | ||
1359 | + "pug-strip-comments": { | ||
1360 | + "version": "1.0.3", | ||
1361 | + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.3.tgz", | ||
1362 | + "integrity": "sha1-8VWVkiBu3G+FMQ2s9K+0igJa9Z8=", | ||
1363 | + "requires": { | ||
1364 | + "pug-error": "^1.3.2" | ||
1365 | + } | ||
1366 | + }, | ||
1367 | + "pug-walk": { | ||
1368 | + "version": "1.1.7", | ||
1369 | + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.7.tgz", | ||
1370 | + "integrity": "sha1-wA1cUSi6xYBr7BXSt+fNq+QlMfM=" | ||
1371 | + }, | ||
1115 | "qs": { | 1372 | "qs": { |
1116 | "version": "6.5.1", | 1373 | "version": "6.5.1", |
1117 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", | 1374 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", |
@@ -1171,6 +1428,14 @@ | @@ -1171,6 +1428,14 @@ | ||
1171 | "semver": "^5.1.0" | 1428 | "semver": "^5.1.0" |
1172 | } | 1429 | } |
1173 | }, | 1430 | }, |
1431 | + "resolve": { | ||
1432 | + "version": "1.8.1", | ||
1433 | + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", | ||
1434 | + "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", | ||
1435 | + "requires": { | ||
1436 | + "path-parse": "^1.0.5" | ||
1437 | + } | ||
1438 | + }, | ||
1174 | "resolve-from": { | 1439 | "resolve-from": { |
1175 | "version": "2.0.0", | 1440 | "version": "2.0.0", |
1176 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", | 1441 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", |
@@ -1352,6 +1617,11 @@ | @@ -1352,6 +1617,11 @@ | ||
1352 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", | 1617 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", |
1353 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" | 1618 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" |
1354 | }, | 1619 | }, |
1620 | + "token-stream": { | ||
1621 | + "version": "0.0.1", | ||
1622 | + "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", | ||
1623 | + "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=" | ||
1624 | + }, | ||
1355 | "topojson": { | 1625 | "topojson": { |
1356 | "version": "3.0.2", | 1626 | "version": "3.0.2", |
1357 | "resolved": "https://registry.npmjs.org/topojson/-/topojson-3.0.2.tgz", | 1627 | "resolved": "https://registry.npmjs.org/topojson/-/topojson-3.0.2.tgz", |
package.json
@@ -34,6 +34,8 @@ | @@ -34,6 +34,8 @@ | ||
34 | "passport-google-oauth20": "^1.0.0", | 34 | "passport-google-oauth20": "^1.0.0", |
35 | "pg": "^7.4.3", | 35 | "pg": "^7.4.3", |
36 | "postgeo": "*", | 36 | "postgeo": "*", |
37 | + "pug": "^2.0.3", | ||
38 | + "pug-bootstrap": "0.0.15", | ||
37 | "serve-favicon": "~2.4.5" | 39 | "serve-favicon": "~2.4.5" |
38 | } | 40 | } |
39 | } | 41 | } |
views/error.jade
views/index.jade
@@ -1,11 +0,0 @@ | @@ -1,11 +0,0 @@ | ||
1 | -extends layout | ||
2 | -block content | ||
3 | - h1= title | ||
4 | - p Selecione aqui o link desejado 5000: | ||
5 | - a(href="/auth/google") Selecione aqui para logar | ||
6 | - p | ||
7 | - a(href="/map/paulo") Selecione aqui para acessar o mapa | ||
8 | - p | ||
9 | - a(href="/api/current_user") Selecione aqui para saber o usuário logado | ||
10 | - p | ||
11 | - a(href="/api/logout") Selecione aqui para fazer logout |
@@ -0,0 +1,11 @@ | @@ -0,0 +1,11 @@ | ||
1 | +extends layout | ||
2 | +block content | ||
3 | + h1= title | ||
4 | + p Selecione aqui o link desejado 5000: | ||
5 | + a(href="/auth/google") Selecione aqui para logar | ||
6 | + p | ||
7 | + a(href="/map/paulo") Selecione aqui para acessar o mapa | ||
8 | + p | ||
9 | + a(href="/api/current_user") Selecione aqui para saber o usuário logado | ||
10 | + p | ||
11 | + a(href="/api/logout") Selecione aqui para fazer logout |
views/layout.jade
@@ -1,24 +0,0 @@ | @@ -1,24 +0,0 @@ | ||
1 | -doctype html | ||
2 | -html | ||
3 | - head | ||
4 | - title= title | ||
5 | - link(rel='stylesheet', href='/stylesheets/style.css') | ||
6 | - link(rel='stylesheet', href='http://code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css') | ||
7 | - link(rel="stylesheet", href="https://unpkg.com/leaflet@1.3.1/dist/leaflet.css" integrity="sha512-Rksm5RenBEKSKFjgI3a41vrjkw4EVPlJ3+OiI65vTjIdo9brlAacEuKOiQ5OFh7cOI1bkDwLqdLw3Zg0cRJAAQ==" crossorigin="") | ||
8 | - script(src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js') | ||
9 | - script(src='https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js') | ||
10 | - meta(http-equiv='X-UA-Compatible', content='IE=edge') | ||
11 | - meta(name='viewport', content='width=device-width, initial-scale=1.0') | ||
12 | - meta(name='description', content='Baking Bootstrap Snippets with Jade') | ||
13 | - link(rel="stylesheet", href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css") | ||
14 | - script(src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js") | ||
15 | - script(src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js") | ||
16 | - script(src="https://unpkg.com/leaflet@1.3.1/dist/leaflet.js" integrity="sha512-/Nsx9X4HebavoBvEBuyp3I7od5tA0UzAxs+j83KgC8PU0kgB4XiK4Lfe4y4cgBtaRJQEIFCW+oC506aPT2L1zw==" crossorigin="") | ||
17 | - link(rel='stylesheet', href='https://unpkg.com/leaflet-draw@1.0.2/dist/leaflet.draw.css') | ||
18 | - script(src="https://unpkg.com/leaflet-draw@1.0.2/dist/leaflet.draw.js") | ||
19 | - link(src="http://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous") | ||
20 | - body | ||
21 | - .container | ||
22 | - script(src='//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js') | ||
23 | - script(src='//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js') | ||
24 | -block content |
@@ -0,0 +1,24 @@ | @@ -0,0 +1,24 @@ | ||
1 | +doctype html | ||
2 | +html | ||
3 | + head | ||
4 | + title= title | ||
5 | + link(rel='stylesheet', href='/stylesheets/style.css') | ||
6 | + link(rel='stylesheet', href='http://code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css') | ||
7 | + link(rel="stylesheet", href="https://unpkg.com/leaflet@1.3.1/dist/leaflet.css" integrity="sha512-Rksm5RenBEKSKFjgI3a41vrjkw4EVPlJ3+OiI65vTjIdo9brlAacEuKOiQ5OFh7cOI1bkDwLqdLw3Zg0cRJAAQ==" crossorigin="") | ||
8 | + script(src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js') | ||
9 | + script(src='https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js') | ||
10 | + meta(http-equiv='X-UA-Compatible', content='IE=edge') | ||
11 | + meta(name='viewport', content='width=device-width, initial-scale=1.0') | ||
12 | + meta(name='description', content='Baking Bootstrap Snippets with Jade') | ||
13 | + link(rel="stylesheet", href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css") | ||
14 | + script(src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js") | ||
15 | + script(src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js") | ||
16 | + script(src="https://unpkg.com/leaflet@1.3.1/dist/leaflet.js" integrity="sha512-/Nsx9X4HebavoBvEBuyp3I7od5tA0UzAxs+j83KgC8PU0kgB4XiK4Lfe4y4cgBtaRJQEIFCW+oC506aPT2L1zw==" crossorigin="") | ||
17 | + link(rel='stylesheet', href='https://unpkg.com/leaflet-draw@1.0.2/dist/leaflet.draw.css') | ||
18 | + script(src="https://unpkg.com/leaflet-draw@1.0.2/dist/leaflet.draw.js") | ||
19 | + link(src="http://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous") | ||
20 | + body | ||
21 | + .container | ||
22 | + script(src='//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js') | ||
23 | + script(src='//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js') | ||
24 | +block content |
views/map.jade
@@ -1,63 +0,0 @@ | @@ -1,63 +0,0 @@ | ||
1 | -extends layout | ||
2 | -block content | ||
3 | - script. | ||
4 | - function relocate_home() | ||
5 | - { | ||
6 | - location.href = "/map/" + nome.value; | ||
7 | - } | ||
8 | - #map | ||
9 | - script(type='text/javascript'). | ||
10 | - var osmUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', | ||
11 | - southWest = L.latLng(#{bndSW}), | ||
12 | - northEast = L.latLng(#{bndNE}), | ||
13 | - bounds = L.latLngBounds(southWest, northEast), | ||
14 | - osmAttrib = '', | ||
15 | - osm = L.tileLayer(osmUrl, | ||
16 | - {attribution: osmAttrib}), | ||
17 | - map = L.map('map', { | ||
18 | - center: new L.LatLng(#{lat},#{lng}), | ||
19 | - zoom: #{fator_zoom}, | ||
20 | - maxBounds: bounds | ||
21 | - }); | ||
22 | - | ||
23 | - map.attributionControl.setPrefix(''); | ||
24 | - wmsLayer= L.tileLayer.wms("#{geoserverWMS}", { | ||
25 | - layers: "#{waterLayers}", | ||
26 | - format: 'image/png', | ||
27 | - transparent: true, | ||
28 | - maxZoom: 23 | ||
29 | - }), | ||
30 | - drawnItems = L.featureGroup().addTo(map); | ||
31 | - | ||
32 | - // places the logomark | ||
33 | - L.Control.Watermark = L.Control.extend({ | ||
34 | - onAdd: function(map) { | ||
35 | - var img = L.DomUtil.create('img'); | ||
36 | - //- img.src = "http://www.saesascs.sp.gov.br/wp-content/themes/portaldae/img/logo-saesa.png"; | ||
37 | - img.src = 'https://nexusbr.com/images/logo.png'; | ||
38 | - img.style.width = '130px'; | ||
39 | - return img; | ||
40 | - }, | ||
41 | - onRemove: function(map) { | ||
42 | - // Nothing to do here | ||
43 | - } | ||
44 | - }); | ||
45 | - L.control.watermark = function(opts) { | ||
46 | - return new L.Control.Watermark(opts); | ||
47 | - } | ||
48 | - L.control.watermark({ position: 'bottomright' }).addTo(map); | ||
49 | - | ||
50 | - // places the layer control to on and off | ||
51 | - L.control.layers({ | ||
52 | - "OSM": osm.addTo(map), | ||
53 | - "Google": L.tileLayer('http://www.google.cn/maps/vt?lyrs=s@189&gl=cn&x={x}&y={y}&z={z}', { | ||
54 | - attribution: 'google' | ||
55 | - }) | ||
56 | - }, | ||
57 | - {'Redes': wmsLayer, 'Ocorrências': drawnItems}, | ||
58 | - { position: 'topright', collapsed: false } | ||
59 | - ).addTo(map); | ||
60 | - | ||
61 | - // places the marker that was found | ||
62 | - var marker = L.marker([#{lat},#{lng}]).addTo(map); | ||
63 | - marker.bindPopup("<b>#{codigo}</b><br>#{consumidor}").openPopup(); | ||
64 | \ No newline at end of file | 0 | \ No newline at end of file |
@@ -0,0 +1,63 @@ | @@ -0,0 +1,63 @@ | ||
1 | +extends layout | ||
2 | +block content | ||
3 | + script. | ||
4 | + function relocate_home() | ||
5 | + { | ||
6 | + location.href = "/map/" + nome.value; | ||
7 | + } | ||
8 | + #map | ||
9 | + script(type='text/javascript'). | ||
10 | + var osmUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', | ||
11 | + southWest = L.latLng(#{bndSW}), | ||
12 | + northEast = L.latLng(#{bndNE}), | ||
13 | + bounds = L.latLngBounds(southWest, northEast), | ||
14 | + osmAttrib = '', | ||
15 | + osm = L.tileLayer(osmUrl, | ||
16 | + {attribution: osmAttrib}), | ||
17 | + map = L.map('map', { | ||
18 | + center: new L.LatLng(#{lat},#{lng}), | ||
19 | + zoom: #{fator_zoom}, | ||
20 | + maxBounds: bounds | ||
21 | + }); | ||
22 | + | ||
23 | + map.attributionControl.setPrefix(''); | ||
24 | + wmsLayer= L.tileLayer.wms("#{geoserverWMS}", { | ||
25 | + layers: "#{waterLayers}", | ||
26 | + format: 'image/png', | ||
27 | + transparent: true, | ||
28 | + maxZoom: 23 | ||
29 | + }), | ||
30 | + drawnItems = L.featureGroup().addTo(map); | ||
31 | + | ||
32 | + // places the logomark | ||
33 | + L.Control.Watermark = L.Control.extend({ | ||
34 | + onAdd: function(map) { | ||
35 | + var img = L.DomUtil.create('img'); | ||
36 | + //- img.src = "http://www.saesascs.sp.gov.br/wp-content/themes/portaldae/img/logo-saesa.png"; | ||
37 | + img.src = 'https://nexusbr.com/images/logo.png'; | ||
38 | + img.style.width = '130px'; | ||
39 | + return img; | ||
40 | + }, | ||
41 | + onRemove: function(map) { | ||
42 | + // Nothing to do here | ||
43 | + } | ||
44 | + }); | ||
45 | + L.control.watermark = function(opts) { | ||
46 | + return new L.Control.Watermark(opts); | ||
47 | + } | ||
48 | + L.control.watermark({ position: 'bottomright' }).addTo(map); | ||
49 | + | ||
50 | + // places the layer control to on and off | ||
51 | + L.control.layers({ | ||
52 | + "OSM": osm.addTo(map), | ||
53 | + "Google": L.tileLayer('http://www.google.cn/maps/vt?lyrs=s@189&gl=cn&x={x}&y={y}&z={z}', { | ||
54 | + attribution: 'google' | ||
55 | + }) | ||
56 | + }, | ||
57 | + {'Redes': wmsLayer, 'Ocorrências': drawnItems}, | ||
58 | + { position: 'topright', collapsed: false } | ||
59 | + ).addTo(map); | ||
60 | + | ||
61 | + // places the marker that was found | ||
62 | + var marker = L.marker([#{lat},#{lng}]).addTo(map); | ||
63 | + marker.bindPopup("<b>#{codigo}</b><br>#{consumidor}").openPopup(); | ||
0 | \ No newline at end of file | 64 | \ No newline at end of file |