This repository was archived by the owner on Oct 7, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinitdb.js
More file actions
55 lines (53 loc) · 8.77 KB
/
initdb.js
File metadata and controls
55 lines (53 loc) · 8.77 KB
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
const sqlite = require('sqlite3').verbose()
require('mandatoryenv').load(['SECRET', 'DB'])
const db = new sqlite.Database(process.env.DB)
function dbExec (sql) {
return new Promise((resolve, reject) => {
db.run(sql, (error) => {
if (error) { reject(error); return }
resolve()
})
})
}
async function init () {
await dbExec('CREATE TABLE IF NOT EXISTS premium_vouchers (id INTEGER NOT NULL PRIMARY KEY, voucher TEXT NOT NULL UNIQUE, is_valid INTEGER NOT NULL, creation_date TIMESTAMP NOT NULL, expiration_date TIMESTAMP, date_of_use TIMESTAMP);')
await dbExec("INSERT OR IGNORE INTO premium_vouchers (voucher, is_valid, creation_date, expiration_date, date_of_use) VALUES ('AAAA', 1, 0, 0 ,0);")
await dbExec("INSERT OR IGNORE INTO premium_vouchers (voucher, is_valid, creation_date, expiration_date, date_of_use) VALUES ('BBBB', 0, 0, 0 ,0);")
await dbExec("INSERT OR IGNORE INTO premium_vouchers (voucher, is_valid, creation_date, expiration_date, date_of_use) VALUES ('CCCC', 1, 0, 0 ,151515);")
await dbExec("INSERT OR IGNORE INTO premium_vouchers (voucher, is_valid, creation_date, expiration_date, date_of_use) VALUES ('DDDD', 1, 0, 1822921343 ,0);")
await dbExec("INSERT OR IGNORE INTO premium_vouchers (voucher, is_valid, creation_date, expiration_date, date_of_use) VALUES ('EEEE', 1, 0, 1722921343 ,0);")
await dbExec("INSERT OR IGNORE INTO premium_vouchers (voucher, is_valid, creation_date, expiration_date, date_of_use) VALUES ('FFFF', 1, 0, 1722921343 ,0);")
await dbExec("INSERT OR IGNORE INTO premium_vouchers (voucher, is_valid, creation_date, expiration_date, date_of_use) VALUES ('GGGG', 1, 0, 3000000000 ,0);")
await dbExec("INSERT OR IGNORE INTO premium_vouchers (voucher, is_valid, creation_date, expiration_date, date_of_use) VALUES ('HHHH', 1, 0, 3000000000, 26252626);")
await dbExec('CREATE TABLE IF NOT EXISTS users (id INTEGER NOT NULL PRIMARY KEY, email TEXT NOT NULL UNIQUE, password TEXT NOT NULL, is_admin INTEGER NOT NULL, id_premium_voucher INTEGER, FOREIGN KEY(id_premium_voucher) REFERENCES premium_vouchers(id));')
await dbExec("INSERT OR IGNORE INTO users (email, password, is_admin, id_premium_voucher) VALUES ('root@avenir.fr','$2b$10$Chjgc99YQa7wLB39KANgbeJ82GFzcxbOn1kFc6e1RVnljl59MpBcm', 1, 0);")
await dbExec("INSERT OR IGNORE INTO users (email, password, is_admin, id_premium_voucher) VALUES ('guest@avenir.fr','$2b$10$Chjgc99YQa7wLB39KANgbeJ82GFzcxbOn1kFc6e1RVnljl59MpBcm', 0, NULL);")
await dbExec("INSERT OR IGNORE INTO users (email, password, is_admin, id_premium_voucher) VALUES ('guestpremium@avenir.fr','$2b$10$Chjgc99YQa7wLB39KANgbeJ82GFzcxbOn1kFc6e1RVnljl59MpBcm', 0, 8);")
await dbExec('CREATE TABLE IF NOT EXISTS cryptocurrencies (id INTEGER NOT NULL PRIMARY KEY, name TEXT NOT NULL UNIQUE, symbol TEXT NOT NULL UNIQUE, is_active INTEGER NOT NULL);')
await dbExec("INSERT OR IGNORE INTO cryptocurrencies (id, name, symbol, is_active) VALUES (1, 'Bitcoin', 'BTC', 1);")
await dbExec("INSERT OR IGNORE INTO cryptocurrencies (id, name, symbol, is_active) VALUES (1027, 'Ethereum', 'ETH', 0);")
await dbExec('CREATE TABLE IF NOT EXISTS market (id INTEGER NOT NULL PRIMARY KEY, timestamp TIMESTAMP NOT NULL, price REAL NOT NULL, volume_24h REAL NOT NULL, cmc_rank INTEGER NOT NULL, percent_change_1h REAL NOT NULL, percent_change_24h REAL NOT NULL, percent_change_7d REAL NOT NULL, id_cryptocurrency INTEGER NOT NULL, FOREIGN KEY(id_cryptocurrency) REFERENCES cryptocurrencies(id));')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (3,1623030174,3450.67096379039136,1746952789.8586,5,0.16316362,1.1047514,6.62656417,1027);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (4,1623030174,35696.8435800562,28835140950.0342,1,0.25252618,0.98158443,0.41263954,1);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (5,1623025174,3457.66924557530475,1745802845.43229,5,0.04804635,1.11510479,6.22905923,1027);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (6,1623025174,37545.7816159217,28794313347.1884,1,-0.08967109,0.71748952,-0.1311194,1);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (7,1623020174,3465.66649297066485,1743369842.34824,5,-0.19368035,0.90994836,5.90241135,1027);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (8,1623020174,45045.4168335501,28782143618.0526,1,0.01029672,0.8483321,-0.07027505,1);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (9,1623015174,3600.66905842799781,1743862350.0176,5,-0.02942925,1.03835673,6.00583499,1027);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (10,1623015174,42021.1158907835,28788289645.4258,1,-0.05525878,0.84522644,-0.08521588,1);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (11,1623010174,3000.66661963408166,1743280350.44817,5,-0.15200087,0.98179489,6.21191739,1027);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (12,1623010174,43025.1842960897,28796809865.5473,1,0.16732667,0.93210614,0.1082477,1);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (13,1623005174,2725.66942321273427,1743460924.87327,5,0.0833443,1.10550404,6.39058651,1027);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (14,1623005174,41054.1130586942,28809835329.1233,1,0.29063253,0.96828626,0.0761646,1);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (15,1623000174,2865.66817435389845,1743535245.99633,5,0.09161755,1.06490163,6.0172738,1027);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (16,1623000174,37545.8238930657,28812462165.2675,1,0.30511776,1.10584081,0.11952265,1);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (17,1622950174,3015.67621985864299,1751269551.09355,5,1.11862454,1.49491643,6.56633709,1027);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (18,1622950174,35405.5140838343,28931097269.5058,1,1.03648897,1.33033838,0.6004876,1);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (19,1622900174,3200.67759261285067,1751381822.09074,5,1.09279898,1.69412792,6.96948567,1027);')
await dbExec('INSERT OR IGNORE INTO market (id, timestamp, price, volume_24h, cmc_rank, percent_change_1h, percent_change_24h, percent_change_7d, id_cryptocurrency) VALUES (20,1622900174,32178.9574352217,28950154957.078,1,0.89465432,1.1464291,0.61131354,1);')
await dbExec('CREATE TABLE IF NOT EXISTS wallets_cryptocurrencies (id_user INTEGER NOT NULL, id_cryptocurrency INTEGER NOT NULL, quantity REAL NOT NULL, FOREIGN KEY(id_user) REFERENCES users(id), FOREIGN KEY(id_cryptocurrency) REFERENCES cryptocurrencies(id), PRIMARY KEY (id_user, id_cryptocurrency));')
await dbExec('INSERT OR IGNORE INTO wallets_cryptocurrencies (id_user, id_cryptocurrency, quantity) VALUES (2, 1027, 14.56);')
await dbExec('INSERT OR IGNORE INTO wallets_cryptocurrencies (id_user, id_cryptocurrency, quantity) VALUES (2, 1, 2.02);')
await dbExec('INSERT OR IGNORE INTO wallets_cryptocurrencies (id_user, id_cryptocurrency, quantity) VALUES (3, 1, 1.25);')
}
init()