-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathdb.py
36 lines (24 loc) · 823 Bytes
/
db.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
from pymongo import MongoClient
from config import mongo_db_url
client = MongoClient(mongo_db_url)
users = client.gretel_bot.users
def meet_user(user):
users.update_one(
{"user_id": user.id},
{"$set": {"username": user.username}}, upsert=True)
def add_user_group(user, group_id):
users.update_one(
{"user_id": user.id},
{"$set": {"username": user.username},
"$addToSet": {"groups": group_id}}, upsert=True)
def remove_user_group(user, group_id):
users.update_one(
{"user_id": user.id},
{"$pull": {"groups": group_id}})
def get_user_groups(user_id):
try:
return users.find_one({"user_id": user_id})["groups"]
except:
return list()
def get_user_id(username):
return users.find_one({"username": username})["user_id"]