summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJannik Schönartz2018-08-08 20:58:27 +0200
committerJannik Schönartz2018-08-08 20:58:27 +0200
commit6641f50d8421a440b5eee397ecd58efaf7eb7ef8 (patch)
tree02010b3cdee5c3d4ef8c201f213de4ec869d266f
parentRoles of Users now in fancy boxes and other small ui polishing (diff)
downloadbas-6641f50d8421a440b5eee397ecd58efaf7eb7ef8.tar.gz
bas-6641f50d8421a440b5eee397ecd58efaf7eb7ef8.tar.xz
bas-6641f50d8421a440b5eee397ecd58efaf7eb7ef8.zip
[server/database] Delete old database lib
Because of the use of sequelize, the old mysql database lib becomes unnecessary. Remove old code that was not used anymore.
-rw-r--r--server/api/users.js1
-rw-r--r--server/config/database.template.json5
-rw-r--r--server/config/database1.template.json7
-rw-r--r--server/lib/authentication.js20
-rw-r--r--server/lib/database.js10
-rw-r--r--server/lib/sequelize.js2
6 files changed, 4 insertions, 41 deletions
diff --git a/server/api/users.js b/server/api/users.js
index deb69e1..8e61bfe 100644
--- a/server/api/users.js
+++ b/server/api/users.js
@@ -1,6 +1,5 @@
/* global __appdir */
var path = require('path')
-// var db = require(path.join(__appdir, 'lib', 'database')).connectionPool;
var db = require(path.join(__appdir, 'lib', 'sequelize'))
var jwt = require('jsonwebtoken')
diff --git a/server/config/database.template.json b/server/config/database.template.json
index a9e7f8c..857fcc6 100644
--- a/server/config/database.template.json
+++ b/server/config/database.template.json
@@ -1,6 +1,7 @@
{
"host": "<DB_HOSTNAME>",
- "user": "<DB_USERNAME>",
+ "username": "<DB_USERNAME>",
"password": "<DB_PASSWORD>",
- "database": "<DB_NAME>"
+ "database": "<DB_NAME>",
+ "dialect": "<mysql|mariadb|sqlite|postgres|mssql>"
} \ No newline at end of file
diff --git a/server/config/database1.template.json b/server/config/database1.template.json
deleted file mode 100644
index 857fcc6..0000000
--- a/server/config/database1.template.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "host": "<DB_HOSTNAME>",
- "username": "<DB_USERNAME>",
- "password": "<DB_PASSWORD>",
- "database": "<DB_NAME>",
- "dialect": "<mysql|mariadb|sqlite|postgres|mssql>"
-} \ No newline at end of file
diff --git a/server/lib/authentication.js b/server/lib/authentication.js
index b8ee506..a9ee4ef 100644
--- a/server/lib/authentication.js
+++ b/server/lib/authentication.js
@@ -2,7 +2,6 @@
var jwt = require('jsonwebtoken')
var path = require('path')
var config = require(path.join(__appdir, 'config', 'authentication'))
-// var db = require(path.join(__appdir, 'lib', 'database')).connectionPool;
var db = require(path.join(__appdir, 'lib', 'sequelize'))
var securePassword = require('secure-password')
var pwd = securePassword()
@@ -42,11 +41,8 @@ module.exports = {
if (!params.password) return res.status(500).send({ auth: false, status: 'PASSWORD_MISSING', error_message: 'This services requires a password.' })
if (!params.email) return res.status(500).send({ auth: false, status: 'EMAIL_MISSING', error_message: 'This services requires an email.' })
// Database and user validation.
- // SEQ//db.query('SELECT * FROM users WHERE username = ?', [params.username], function (err, rows) {
db.user.findOne({ where: { username: params.username } }).then(userDb => {
- // SEQ//if (err) return res.status(500).send({ auth: false, status: 'DATABASE_ERROR', error_message: 'SQL query failed.' });
// User exists validation.
- // SEQ//if (rows.length) return res.status(500).send({ auth: false, status: 'USER_ALREADY_EXISTS', error_message: 'The provided username already exists.' });
if (userDb) return res.status(500).send({ auth: false, status: 'USER_ALREADY_EXISTS', error_message: 'The provided username already exists.' })
// Password requirements validation.
@@ -58,12 +54,8 @@ module.exports = {
pwd.hash(userPassword, function (err, hash) {
if (err) return res.status(500).send({ auth: false, status: 'PASSWORD_HASH_ERROR', error_message: 'Hashing the password failed.' })
// Saving the non improved hash and creating the user in the db.
- // SEQ//var att = [params.username, hash, params.email, params.name];
- // SEQ//db.query('INSERT INTO users (username, password, email, name) VALUES (?)', [att], function (err, result) {
db.user.create({ username: params.username, password: hash, email: params.email, name: params.name }).then((userDb) => {
- // SEQ//if (err) return res.status(500).send({ auth: false, status: 'DATABASE_INSERT_ERROR', error_message: 'Inserting the user in the database failed.' });
// TODO: Username could also be used because those are unique as well.
- // SEQ//var userId = result.insertId;
var userId = userDb.id
// Verify & improving the hash.
@@ -116,22 +108,13 @@ function verifyUser (res, username, password, callback) {
if (!username) return res.status(500).send({ auth: false, status: 'USER_MISSING', error_message: 'This service requires an username.' })
if (!password) return res.status(500).send({ auth: false, status: 'PASSWORD_MISSING', error_message: 'This services requires a password.' })
- // SEQ//db.query('SELECT * FROM users WHERE username = ?', [username], function (err, rows) {
db.user.findOne({ where: { username: username } }).then(userDb => {
- // SEQ//if (err) return res.status(500).send({ auth: false, status: 'DATABASE_ERROR', error_message: 'Database connection failed.' });
- // SEQ//if (rows.length != 1) {
- // SEQ// return res.status(404).send({ auth: false, status: 'USER_NOTFOUND', error_message: 'User does not exist.' });
- // SEQ//}
if (!userDb) {
return res.status(404).send({ auth: false, status: 'USER_NOTFOUND', error_message: 'User does not exist.' })
}
var user = {}
- // SEQ//user.id = rows[0].id;
user.id = userDb.id
- // user.username = rows[0].username;
- // user.email = rows[0].email;
var userPassword = Buffer.from(password)
- // SEQ//var hash = Buffer.from(rows[0].password);
var hash = Buffer.from(userDb.password)
// Verify & improving the hash.
@@ -165,9 +148,7 @@ function verifyHash (res, password, hash, userId, callback) {
if (err) throw err
// Update the improved hash in the db.
- // SEQ//db.query('UPDATE users SET password=? WHERE id=?', [improvedHash, userId], function (err, result) {
db.user.findOne({ where: { id: userId } }).then(user => {
- // SEQ//if (err) throw err;
user.updateAttributes({
password: improvedHash
})
@@ -180,7 +161,6 @@ function verifyHash (res, password, hash, userId, callback) {
// Function for validating the e-mail.
function validateEmail (email) {
-// var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
// Removed escape before [ because eslint told me so.
var re = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
return re.test(String(email).toLowerCase())
diff --git a/server/lib/database.js b/server/lib/database.js
deleted file mode 100644
index 09ad947..0000000
--- a/server/lib/database.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/* global __appdir */
-var mysql = require('mysql')
-var path = require('path')
-var dbConfig = require(path.join(__appdir, 'config', 'database'))
-
-dbConfig.connectionLimit = 10
-var connectionPool = mysql.createPool(dbConfig)
-module.exports = {
- connectionPool: connectionPool
-}
diff --git a/server/lib/sequelize.js b/server/lib/sequelize.js
index f348603..3624723 100644
--- a/server/lib/sequelize.js
+++ b/server/lib/sequelize.js
@@ -4,7 +4,7 @@
var fs = require('fs')
var path = require('path')
var Sequelize = require('sequelize')
-var config = require(path.join(__appdir, 'config', 'database1'))
+var config = require(path.join(__appdir, 'config', 'database'))
var db = {}
var sequelize = new Sequelize(config.database, config.username, config.password, config)