-
Notifications
You must be signed in to change notification settings - Fork 18
Expand file tree
/
Copy pathuser_function.py
More file actions
58 lines (44 loc) · 1.39 KB
/
user_function.py
File metadata and controls
58 lines (44 loc) · 1.39 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
import json
from tinydb import TinyDB, Query
import bot_logger
import config
# read file
# Todo : to remove after migration of user base
def get_users_old():
with open(config.DATA_PATH + 'user_files.json', 'r') as f:
try:
data = json.load(f)
except ValueError:
bot_logger.logger.warning("Error on read user file")
data = {}
return data
def get_unregistered_tip():
db = TinyDB(config.unregistered_tip_user)
data = db.all()
db.close()
return data
def save_unregistered_tip(tip):
bot_logger.logger.info("Save tip form %s to %s " % (tip.sender.username, tip.receiver.username))
db = TinyDB(config.unregistered_tip_user)
db.insert({
'id': tip.id,
'amount': tip.amount,
'receiver': tip.receiver.username,
'sender': tip.sender.username,
'message_fullname': tip.message_fullname,
'time': tip.time,
})
db.close()
def remove_pending_tip(id_tip):
db = TinyDB(config.unregistered_tip_user)
tip = Query()
db.remove(tip.id == id_tip)
db.close()
def get_balance_unregistered_tip(user):
pending_tips = []
list_tip_unregistered = get_unregistered_tip()
if list_tip_unregistered:
for tip in list_tip_unregistered:
if tip['sender'] == user:
pending_tips.append(int(tip['amount']))
return int(sum(pending_tips))