-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcodetogetherdb.js
More file actions
77 lines (65 loc) · 2.2 KB
/
codetogetherdb.js
File metadata and controls
77 lines (65 loc) · 2.2 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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
var spicedpg = require("spiced-pg");
let dbURL;
if (process.env.DATABASE_URL) {
dbURL = process.env.DATABASE_URL;
} else {
const secrets = require("./secrets.json");
dbURL = secrets.dbURL;
}
const db = spicedpg(dbURL);
module.exports.regUsers = function(fname, lname, email, password) {
var query = `INSERT INTO users(fname,lname,email,password)
VALUES($1,$2,$3,$4) RETURNING id,fname,lname`;
return db.query(query, [
fname || null,
lname || null,
email || null,
password || null
]);
};
module.exports.checkEmail = function(emailid) {
var query = `SELECT * FROM users WHERE email=$1`;
return db.query(query, [emailid]);
};
module.exports.getUserDetails = function(userid) {
var query = `SELECT * FROM users WHERE id=$1`;
return db.query(query, [userid]);
};
module.exports.getUsersByIds = function(arrayOfIds) {
const query = `SELECT * FROM users WHERE id = ANY($1)`;
return db.query(query, [arrayOfIds]);
};
module.exports.getRecentMessages = function(room_id) {
const query = `SELECT users.id,fname, lname, chats.id as chatid,sender_id,to_char(send_at,'Day, DD-MM-YYYY HH12:MI:SS') as send_at,message
FROM chats
LEFT JOIN users
ON (sender_id = users.id)
WHERE room_id=$1
ORDER BY chatid DESC
LIMIT 3`;
return db.query(query, [room_id || null]);
};
module.exports.saveChatMsg = function(senderid, message, room_id) {
var query = `INSERT INTO chats(sender_id,message,room_id)
VALUES($1,$2,$3) RETURNING id as chatid,sender_id,to_char(send_at,'Day, DD-MM-YYYY HH12:MI:SS') as send_at,message`;
return db.query(query, [
senderid || null,
message || null,
room_id || null
]);
};
module.exports.getCode = function(coder_id) {
console.log("coder_id:", coder_id);
const query = `SELECT *
FROM codestore
WHERE coder_id=$1`;
return db.query(query, [coder_id || null]);
};
module.exports.saveCode = function(coder_id, code) {
console.log("running save chat msg");
var query = `INSERT INTO codestore(coder_id,codetext)
VALUES($1,$2)
ON CONFLICT (coder_id)
DO UPDATE SET codetext = $2 RETURNING *`;
return db.query(query, [coder_id || null, code || null]);
};