package.json updated
This commit is contained in:
1321
package-lock.json
generated
1321
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
14
package.json
14
package.json
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "espid2sensor",
|
"name": "espid2sensor",
|
||||||
"version": "1.1.1",
|
"version": "1.2.0",
|
||||||
"date": "2025-09-01 17:10 UTC",
|
"date": "2025-09-02 17:00 UTC",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"description": "Kleine Webapp ESP-ID <-> Sensornummer, speichern in MongoDB",
|
"description": "Kleine Webapp ESP-ID <-> Sensornummer, speichern in MongoDB",
|
||||||
"main": "server.js",
|
"main": "server.js",
|
||||||
@@ -14,14 +14,14 @@
|
|||||||
"bcrypt": "^6.0.0",
|
"bcrypt": "^6.0.0",
|
||||||
"cors": "^2.8.5",
|
"cors": "^2.8.5",
|
||||||
"dotenv": "^17.2.1",
|
"dotenv": "^17.2.1",
|
||||||
"express": "^4.18.2",
|
"express": "^5.1.0",
|
||||||
"express-session": "^1.18.2",
|
"express-session": "^1.18.2",
|
||||||
"mongodb": "^6.6.0",
|
"mongodb": "^6.19.0",
|
||||||
"pug": "^3.0.2"
|
"pug": "^3.0.3"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"jest": "^30.0.5",
|
"jest": "^30.1.3",
|
||||||
"nodemon": "^3.0.1",
|
"nodemon": "^3.1.10",
|
||||||
"supertest": "^7.1.4"
|
"supertest": "^7.1.4"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,24 +1,22 @@
|
|||||||
import bcrypt from 'bcrypt';
|
import bcrypt from 'bcrypt';
|
||||||
import { getCollections } from '../db/mongo.js';
|
import { getCollections } from '../db/mongo.js';
|
||||||
|
import pkg from '../package.json' with { type: "json" }
|
||||||
|
|
||||||
export function registerAuthRoutes(app) {
|
export function registerAuthRoutes(app) {
|
||||||
const { usersCollection } = getCollections();
|
const { usersCollection } = getCollections();
|
||||||
const errText = 'Falsche Email oder falsches Passwort.'
|
const errText = 'Falsche Email oder falsches Passwort.'
|
||||||
|
|
||||||
app.get('/register', (req, res) => res.render('register', { error: null }));
|
|
||||||
|
|
||||||
app.post('/register', async (req, res) => {
|
app.get('/login', (req, res) => {
|
||||||
const { email, password } = req.body;
|
const version = pkg.version
|
||||||
if (!email || !password) return res.render('register', { error: 'Bitte Email und Passwort angeben.' });
|
const vdate = pkg.date
|
||||||
const existingUser = await usersCollection.findOne({ email: email.toLowerCase() });
|
res.render('login', {
|
||||||
if (existingUser) return res.render('register', { error: 'Email schon registriert.' });
|
error: null,
|
||||||
const hash = await bcrypt.hash(password, 10);
|
version: version,
|
||||||
await usersCollection.insertOne({ email: email.toLowerCase(), passwordHash: hash });
|
vdate: vdate
|
||||||
res.redirect('/login');
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
app.get('/login', (req, res) => res.render('login', { error: null }));
|
|
||||||
|
|
||||||
app.post('/login', async (req, res) => {
|
app.post('/login', async (req, res) => {
|
||||||
const { email, password } = req.body;
|
const { email, password } = req.body;
|
||||||
const user = await usersCollection.findOne({ email: email.toLowerCase() });
|
const user = await usersCollection.findOne({ email: email.toLowerCase() });
|
||||||
|
|||||||
@@ -16,6 +16,8 @@ html(lang="de")
|
|||||||
label(for="password") Passwort:
|
label(for="password") Passwort:
|
||||||
input#password(type="password" name="password" required)
|
input#password(type="password" name="password" required)
|
||||||
button(type="submit") Login
|
button(type="submit") Login
|
||||||
|
#version Version: #{version} vom #{vdate}
|
||||||
|
|
||||||
if error
|
if error
|
||||||
p.error= error
|
p.error= error
|
||||||
script(type="module" src="/login.js")
|
script(type="module" src="/login.js")
|
||||||
Reference in New Issue
Block a user