redid database structures and now running SQLite and Seqelize
This commit is contained in:
75
src/models/database/baseDatabase.js
Normal file
75
src/models/database/baseDatabase.js
Normal file
@@ -0,0 +1,75 @@
|
||||
import Sequelize from 'sequelize';
|
||||
|
||||
import {Logger} from '../logger';
|
||||
import {Config} from '../../config/config';
|
||||
|
||||
let connection;
|
||||
|
||||
let user;
|
||||
let auth;
|
||||
let session;
|
||||
|
||||
export class BaseDatabase {
|
||||
static get Connection() {return connection}
|
||||
|
||||
static async init() {
|
||||
Logger.info('Connecting to SQLite Database');
|
||||
|
||||
connection = new Sequelize('database', 'user', 'password', {
|
||||
host: 'localhost',
|
||||
dialect: 'sqlite',
|
||||
logging: Logger.database,
|
||||
operatorsAliases: false,
|
||||
storage: 'src/models/database/sqlite/database.sqlite',
|
||||
});
|
||||
|
||||
user = connection.define('user', {
|
||||
id: {
|
||||
type: Sequelize.BIGINT,
|
||||
primaryKey: true,
|
||||
unique: true
|
||||
},
|
||||
username: Sequelize.TEXT,
|
||||
password: Sequelize.TEXT,
|
||||
email: Sequelize.TEXT,
|
||||
ip: Sequelize.TEXT,
|
||||
lastupdated: Sequelize.TEXT,
|
||||
verified: Sequelize.BOOLEAN,
|
||||
authcode: Sequelize.STRING,
|
||||
timeauthed: Sequelize.TEXT
|
||||
});
|
||||
|
||||
auth = connection.define('auth', {
|
||||
id: {
|
||||
type: Sequelize.BIGINT,
|
||||
primaryKey: true,
|
||||
unique: true
|
||||
},
|
||||
selector: Sequelize.TEXT,
|
||||
validator: Sequelize.TEXT,
|
||||
uid: Sequelize.BIGINT,
|
||||
expires: Sequelize.TEXT
|
||||
});
|
||||
|
||||
session = connection.define('session', {
|
||||
sessionid: {
|
||||
type: Sequelize.BIGINT,
|
||||
primaryKey: true,
|
||||
unique: true
|
||||
},
|
||||
sessiondata: Sequelize.TEXT,
|
||||
timecreated: Sequelize.TEXT,
|
||||
timeupdated: Sequelize.TEXT
|
||||
});
|
||||
try {
|
||||
await connection.sync();
|
||||
} catch (e) {
|
||||
Logger.panic('Failed to connect to SQLite Database, error:', e)
|
||||
}
|
||||
Logger.info('Connected to SQLite Database');
|
||||
}
|
||||
|
||||
static async testConnection() {
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user