mirror of
https://github.com/mgerb/mywebsite
synced 2026-01-11 18:32:50 +00:00
added temperature/humidity sensor
This commit is contained in:
2
app.js
2
app.js
@@ -7,6 +7,7 @@ var bodyParser = require('body-parser');
|
|||||||
|
|
||||||
var index = require('./routes/index');
|
var index = require('./routes/index');
|
||||||
var success = require('./routes/success');
|
var success = require('./routes/success');
|
||||||
|
var temperature = require('./routes/temperature');
|
||||||
|
|
||||||
var mongoose = require('mongoose');
|
var mongoose = require('mongoose');
|
||||||
var mainLoop = require('./main');
|
var mainLoop = require('./main');
|
||||||
@@ -35,6 +36,7 @@ app.use(express.static(path.join(__dirname, 'public')));
|
|||||||
|
|
||||||
app.use('/', index);
|
app.use('/', index);
|
||||||
app.use('/success', success);
|
app.use('/success', success);
|
||||||
|
app.use('/temperature', temperature);
|
||||||
|
|
||||||
// catch 404 and forward to error handler
|
// catch 404 and forward to error handler
|
||||||
app.use(function(req, res, next) {
|
app.use(function(req, res, next) {
|
||||||
|
|||||||
11
models/temperature.js
Normal file
11
models/temperature.js
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
var mongoose = require('mongoose');
|
||||||
|
|
||||||
|
var temperatureSchema = new mongoose.Schema({
|
||||||
|
temperature: String,
|
||||||
|
humidity: String,
|
||||||
|
location: String,
|
||||||
|
updated: {type: Date, default: Date.now}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
mongoose.model('temperature', temperatureSchema);
|
||||||
37
mongoui/npm-debug.log
Normal file
37
mongoui/npm-debug.log
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
0 info it worked if it ends with ok
|
||||||
|
1 verbose cli [ 'C:\\Program Files (x86)\\nodejs\\\\node.exe',
|
||||||
|
1 verbose cli 'C:\\Program Files (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
|
||||||
|
1 verbose cli 'start' ]
|
||||||
|
2 info using npm@2.11.2
|
||||||
|
3 info using node@v0.12.5
|
||||||
|
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
|
||||||
|
5 info prestart myapp@0.0.0
|
||||||
|
6 info start myapp@0.0.0
|
||||||
|
7 verbose unsafe-perm in lifecycle true
|
||||||
|
8 info myapp@0.0.0 Failed to exec start script
|
||||||
|
9 verbose stack Error: myapp@0.0.0 start: `node ./bin/www`
|
||||||
|
9 verbose stack Exit status 1
|
||||||
|
9 verbose stack at EventEmitter.<anonymous> (C:\Program Files (x86)\nodejs\node_modules\npm\lib\utils\lifecycle.js:213:16)
|
||||||
|
9 verbose stack at EventEmitter.emit (events.js:110:17)
|
||||||
|
9 verbose stack at ChildProcess.<anonymous> (C:\Program Files (x86)\nodejs\node_modules\npm\lib\utils\spawn.js:24:14)
|
||||||
|
9 verbose stack at ChildProcess.emit (events.js:110:17)
|
||||||
|
9 verbose stack at maybeClose (child_process.js:1015:16)
|
||||||
|
9 verbose stack at Process.ChildProcess._handle.onexit (child_process.js:1087:5)
|
||||||
|
10 verbose pkgid myapp@0.0.0
|
||||||
|
11 verbose cwd C:\Users\Mitchell\Desktop\mywebsite\mongoui
|
||||||
|
12 error Windows_NT 6.1.7601
|
||||||
|
13 error argv "C:\\Program Files (x86)\\nodejs\\\\node.exe" "C:\\Program Files (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "start"
|
||||||
|
14 error node v0.12.5
|
||||||
|
15 error npm v2.11.2
|
||||||
|
16 error code ELIFECYCLE
|
||||||
|
17 error myapp@0.0.0 start: `node ./bin/www`
|
||||||
|
17 error Exit status 1
|
||||||
|
18 error Failed at the myapp@0.0.0 start script 'node ./bin/www'.
|
||||||
|
18 error This is most likely a problem with the myapp package,
|
||||||
|
18 error not with npm itself.
|
||||||
|
18 error Tell the author that this fails on your system:
|
||||||
|
18 error node ./bin/www
|
||||||
|
18 error You can get their info via:
|
||||||
|
18 error npm owner ls myapp
|
||||||
|
18 error There is likely additional logging output above.
|
||||||
|
19 verbose exit [ 1, true ]
|
||||||
37
npm-debug.log
Normal file
37
npm-debug.log
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
0 info it worked if it ends with ok
|
||||||
|
1 verbose cli [ 'C:\\Program Files (x86)\\nodejs\\\\node.exe',
|
||||||
|
1 verbose cli 'C:\\Program Files (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
|
||||||
|
1 verbose cli 'start' ]
|
||||||
|
2 info using npm@2.11.2
|
||||||
|
3 info using node@v0.12.5
|
||||||
|
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
|
||||||
|
5 info prestart myapp@0.0.0
|
||||||
|
6 info start myapp@0.0.0
|
||||||
|
7 verbose unsafe-perm in lifecycle true
|
||||||
|
8 info myapp@0.0.0 Failed to exec start script
|
||||||
|
9 verbose stack Error: myapp@0.0.0 start: `node ./bin/www`
|
||||||
|
9 verbose stack Exit status 1
|
||||||
|
9 verbose stack at EventEmitter.<anonymous> (C:\Program Files (x86)\nodejs\node_modules\npm\lib\utils\lifecycle.js:213:16)
|
||||||
|
9 verbose stack at EventEmitter.emit (events.js:110:17)
|
||||||
|
9 verbose stack at ChildProcess.<anonymous> (C:\Program Files (x86)\nodejs\node_modules\npm\lib\utils\spawn.js:24:14)
|
||||||
|
9 verbose stack at ChildProcess.emit (events.js:110:17)
|
||||||
|
9 verbose stack at maybeClose (child_process.js:1015:16)
|
||||||
|
9 verbose stack at Process.ChildProcess._handle.onexit (child_process.js:1087:5)
|
||||||
|
10 verbose pkgid myapp@0.0.0
|
||||||
|
11 verbose cwd C:\Users\Mitchell\Desktop\mywebsite
|
||||||
|
12 error Windows_NT 6.1.7601
|
||||||
|
13 error argv "C:\\Program Files (x86)\\nodejs\\\\node.exe" "C:\\Program Files (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "start"
|
||||||
|
14 error node v0.12.5
|
||||||
|
15 error npm v2.11.2
|
||||||
|
16 error code ELIFECYCLE
|
||||||
|
17 error myapp@0.0.0 start: `node ./bin/www`
|
||||||
|
17 error Exit status 1
|
||||||
|
18 error Failed at the myapp@0.0.0 start script 'node ./bin/www'.
|
||||||
|
18 error This is most likely a problem with the myapp package,
|
||||||
|
18 error not with npm itself.
|
||||||
|
18 error Tell the author that this fails on your system:
|
||||||
|
18 error node ./bin/www
|
||||||
|
18 error You can get their info via:
|
||||||
|
18 error npm owner ls myapp
|
||||||
|
18 error There is likely additional logging output above.
|
||||||
|
19 verbose exit [ 1, true ]
|
||||||
@@ -211,3 +211,15 @@ a {
|
|||||||
.blog-footer p:last-child {
|
.blog-footer p:last-child {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.lowerLeft{
|
||||||
|
display: table-cell;
|
||||||
|
vertical-align: bottom;
|
||||||
|
height: 400px;
|
||||||
|
width: 300px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.colorWhite{
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
@@ -1,21 +1,19 @@
|
|||||||
var express = require('express');
|
var express = require('express');
|
||||||
var router = express.Router();
|
var router = express.Router();
|
||||||
var mongoose = require('mongoose');
|
var mongoose = require('mongoose');
|
||||||
|
|
||||||
require('../models/currentdata');
|
require('../models/currentdata');
|
||||||
var info = mongoose.model('currentdata');
|
var info = mongoose.model('currentdata');
|
||||||
|
|
||||||
|
require("../models/temperature");
|
||||||
|
var temperature = mongoose.model("temperature");
|
||||||
|
|
||||||
/* GET home page. */
|
/* GET home page. */
|
||||||
router.get('/', function(req, res, next) {
|
router.get('/', function(req, res, next) {
|
||||||
var post = req.query.blogpost;
|
|
||||||
|
|
||||||
if (post != 'undefined'){
|
|
||||||
post = 'blogposts/' + post;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
post = 'blogposts/frontpage';
|
|
||||||
}
|
|
||||||
|
|
||||||
res.render('index', {content : post});
|
renderIndex(res,{test: 1234});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
router.post('/', function(req, res,next) {
|
router.post('/', function(req, res,next) {
|
||||||
@@ -61,8 +59,9 @@ router.post('/', function(req, res,next) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (validInputs == false){
|
if (validInputs == false){
|
||||||
res.render('index', invalid);
|
renderIndex(res, invalid);
|
||||||
}
|
}
|
||||||
|
|
||||||
else {
|
else {
|
||||||
number = number.replace("-", "");
|
number = number.replace("-", "");
|
||||||
number = number.replace("-", "");
|
number = number.replace("-", "");
|
||||||
@@ -154,3 +153,15 @@ function timeValidator(time){
|
|||||||
var re = /^[0-9]\:[0-5][0-9]am$|^[0-9]\:[0-5][0-9]pm$|^1[0-2]\:[0-5][0-9]am$|^1[0-2]\:[0-5][0-9]pm$/;
|
var re = /^[0-9]\:[0-5][0-9]am$|^[0-9]\:[0-5][0-9]pm$|^1[0-2]\:[0-5][0-9]am$|^1[0-2]\:[0-5][0-9]pm$/;
|
||||||
return re.test(time);
|
return re.test(time);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function renderIndex(res, json){
|
||||||
|
|
||||||
|
temperature.findOne().sort('-updated').exec(function(err,query) {
|
||||||
|
console.log(query);
|
||||||
|
|
||||||
|
console.log(query.temperature);
|
||||||
|
res.render('index',{validation : json, query : query});
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
42
routes/temperature.js
Normal file
42
routes/temperature.js
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
var express = require('express');
|
||||||
|
var router = express.Router();
|
||||||
|
var mongoose = require('mongoose');
|
||||||
|
require('../models/temperature');
|
||||||
|
var info = mongoose.model('temperature');
|
||||||
|
|
||||||
|
/* GET home page. */
|
||||||
|
router.post('/', function(req, res, next) {
|
||||||
|
var temperature = req.body.temperature;
|
||||||
|
var humidity = req.body.humidity;
|
||||||
|
var location = req.body.location;
|
||||||
|
var key = req.body.key;
|
||||||
|
|
||||||
|
if(key == "esp1234"){
|
||||||
|
|
||||||
|
|
||||||
|
var insert = new info({
|
||||||
|
temperature: temperature,
|
||||||
|
humidity: humidity,
|
||||||
|
location: location
|
||||||
|
});
|
||||||
|
|
||||||
|
insert.save(function (err) {
|
||||||
|
if (err) return handleError(err);
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
res.send("Information Logged");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else{
|
||||||
|
|
||||||
|
res.send("Invalid Authentication");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
module.exports = router;
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
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;
|
|
||||||
@@ -3,7 +3,20 @@
|
|||||||
<body>
|
<body>
|
||||||
|
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<div class="centerDiv"></div>
|
|
||||||
|
<div class="container">
|
||||||
|
<div class="lowerLeft">
|
||||||
|
<span class="colorWhite">ESP8266 With DHT11 Sensor</span>
|
||||||
|
<br>
|
||||||
|
<span class="colorWhite">Location: <%=query.location%></span>
|
||||||
|
<br>
|
||||||
|
<span class="colorWhite">Temperature: <%=query.temperature%>°F</span>
|
||||||
|
<br>
|
||||||
|
<span class="colorWhite">Humidity: <%=query.humidity%>%</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="container">
|
<div class="container">
|
||||||
@@ -13,6 +26,7 @@
|
|||||||
<h1 class="blog-title">mitchellG.me</h1>
|
<h1 class="blog-title">mitchellG.me</h1>
|
||||||
<p class="lead blog-description">A "blog" about computer related projects that I find interesting.</p>
|
<p class="lead blog-description">A "blog" about computer related projects that I find interesting.</p>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
@@ -53,8 +67,8 @@
|
|||||||
<div class="form-signin">
|
<div class="form-signin">
|
||||||
|
|
||||||
<Span>Phone Number:</Span>
|
<Span>Phone Number:</Span>
|
||||||
<% if (typeof number != 'undefined') { %>
|
<% if (typeof validation.number != 'undefined') { %>
|
||||||
<Span class="colorRed"> <%=" " + number%></Span>
|
<Span class="colorRed"> <%=" " + validation.number%></Span>
|
||||||
<%}%>
|
<%}%>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
@@ -82,8 +96,8 @@
|
|||||||
<br>
|
<br>
|
||||||
|
|
||||||
<Span>Date:</Span>
|
<Span>Date:</Span>
|
||||||
<% if (typeof date != 'undefined') { %>
|
<% if (typeof validation.date != 'undefined') { %>
|
||||||
<Span class="colorRed"><%=" " + date%></Span>
|
<Span class="colorRed"><%=" " + validation.date%></Span>
|
||||||
<%}%>
|
<%}%>
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
@@ -92,8 +106,8 @@
|
|||||||
<br>
|
<br>
|
||||||
|
|
||||||
<Span>Time:</Span>
|
<Span>Time:</Span>
|
||||||
<% if (typeof time != 'undefined') { %>
|
<% if (typeof validation.time != 'undefined') { %>
|
||||||
<Span class="colorRed"><%=" " + time%></Span>
|
<Span class="colorRed"><%=" " + validation.time%></Span>
|
||||||
<%}%>
|
<%}%>
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|||||||
Reference in New Issue
Block a user