-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathDataBase.py
51 lines (33 loc) · 1.79 KB
/
DataBase.py
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
import pandas as pd
import sqlite3
from datetime import datetime,timedelta
#sqlite> CREATE TABLE warnings(warning_id integer primary key, user_id integer, time DATETIME, reason TEXT);
#sqlite> CREATE TABLE muted(user_id integer primary key, unmute_time DATETIME);
#sqlite> CREATE TABLE forbidden_reactions(user_id integer primary key, clown_count integer, middlefinger_count integer);
class DataBaseManagement:
def __init__ (self):
self.con = sqlite3.connect("Data Files/database.sqlite3")
def query_user_reactions(self,user_id):
warnings = pd.read_sql_query("SELECT * from forbidden_reactions WHERE user_id= ?", self.con,params={str(user_id)})
return warnings
def update_clown_count(self,user_id):
sql = "INSERT INTO forbidden_reactions VALUES(?,1,1) ON CONFLICT(user_id) DO UPDATE SET clown_count = clown_count +1;"
cur = self.con.cursor()
cur.execute(sql,(user_id,))
self.con.commit()
def update_middlefinger_count(self,user_id):
sql = "INSERT INTO forbidden_reactions VALUES(?,1,1) ON CONFLICT(user_id) DO UPDATE SET middlefinger_count = middlefinger_count +1;"
cur = self.con.cursor()
cur.execute(sql,(user_id,))
self.con.commit()
'''
def insert_user_muted(self,user_id,mute_length = 4):
sql = "insert into muted(user_id,unmute_time) values(?,?);"
cur = self.con.cursor()
time = datetime.utcnow() # get date and time today
delta = timedelta(hours=mute_length) #initialize delta
future_time = time + delta # add the delta days
cur.execute(sql,(user_id,future_time.strftime('%Y%m%d%H%M')))
self.con.commit()
return future_time.strftime('%Y-%m-%d-%H:%M')
'''