aboutsummaryrefslogtreecommitdiff
path: root/src/db.js
blob: d3c15edbf18bb93ab6c4f4ddaefc953f64a0a8d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
const path = require('path');
const { Sequelize, DataTypes } = require('sequelize');
const llog = require("../src/logg")

const _db_raw = new Sequelize({
    dialect: 'sqlite',
    storage: path.join(__dirname, '../db/db.sqlite'),
    logging:false
});
let db = {_raw:_db_raw}

db.Tickets = _db_raw.define('Tickets', {
      ticket: DataTypes.TEXT,
      message: DataTypes.TEXT,
      status: DataTypes.TEXT,
      author: DataTypes.TEXT,
      name: DataTypes.TEXT,
      created: DataTypes.TEXT,
      messages: DataTypes.STRING,
      attachments: DataTypes.STRING,
      pfp: DataTypes.STRING,
}, {
});

db.Sticky = _db_raw.define('Sticky', {
    embed: DataTypes.BOOLEAN,
    embed_color: DataTypes.TEXT,
    channel: DataTypes.TEXT,
    message: DataTypes.TEXT,
    last_message: DataTypes.TEXT,
}, {
});

db.Auto_React = _db_raw.define('Auto_React', {
    channel: DataTypes.TEXT,
    emote: DataTypes.TEXT,
}, {
});

db.Timed_Message = _db_raw.define('Timed_Message', {
    embed: DataTypes.BOOLEAN,
    embed_color: DataTypes.TEXT,
    guild: DataTypes.TEXT,
    channel: DataTypes.TEXT,
    message: DataTypes.TEXT,
    last_message: DataTypes.TEXT,
    last_message_time: DataTypes.TEXT,
    delay: DataTypes.TEXT,
}, {
});

db.BattleShip = _db_raw.define('BattleShip', {
    status: DataTypes.TEXT,
    _id: DataTypes.TEXT,
    turn: DataTypes.INTEGER,
    p1_id: DataTypes.TEXT,
    p2_id: DataTypes.TEXT,
    p1_board: DataTypes.TEXT,
    p2_board: DataTypes.TEXT,
}, {
});

db.Track = _db_raw.define('Track', {
    user: DataTypes.TEXT,
    words: DataTypes.TEXT,
    track: DataTypes.BOOLEAN,
}, {
});

try {
    db.BattleShip.sync({force:true})
    db._raw.authenticate();
    llog.log('db connected');
} catch (error) {
    llog.error('Unable to connect to the database:', error);
}

_db_raw.sync()

const persist = require("node-persist")
let serialize = require('serialize-javascript');
function deserialize(i){
    return eval('(' + i + ')');
}

global.preserve = {}

global.preserve.interactions = persist.create({dir:"./.node-persist/interaction", parse:deserialize, stringify:serialize})
global.preserve.interactions.init()

global.preserve.blacklist = persist.create({dir:"./.node-persist/blacklist", parse:deserialize, stringify:serialize})
global.preserve.blacklist.init()

module.exports = db