randydev commited on
Commit
5af71e0
·
verified ·
1 Parent(s): a95b488

Update chatbot/plugins/chat.py

Browse files
Files changed (1) hide show
  1. chatbot/plugins/chat.py +18 -6
chatbot/plugins/chat.py CHANGED
@@ -92,7 +92,6 @@ blacklist_patterns = [
92
  r"\bdeath\s*threat\b",
93
  ]
94
 
95
-
96
  def is_command_disabled(text):
97
  text_lower = text.lower()
98
  if text_lower.startswith("/") and not (text_lower.startswith("/setmodel") or text_lower.startswith("/start")):
@@ -1093,14 +1092,26 @@ async def chatbot_talk(client: Client, message: Message):
1093
  "user_id": message.from_user.id,
1094
  "credits_used": 0,
1095
  "last_reset": dt.now(),
1096
- "is_premium": False
 
1097
  }
1098
  if dt.now() - user_data["last_reset"] > timedelta(days=1):
 
 
 
 
1099
  user_data["credits_used"] = 0
1100
- user_data["last_reset"] = dt.now()
1101
-
1102
- credit_limit = 50 if user_data.get("is_premium") else 5
1103
- if user_data["credits_used"] >= credit_limit:
 
 
 
 
 
 
 
1104
  time_left = (user_data["last_reset"] + timedelta(days=1) - dt.now())
1105
  hours = int(time_left.total_seconds() // 3600)
1106
  return await message.reply_text(
@@ -1112,6 +1123,7 @@ async def chatbot_talk(client: Client, message: Message):
1112
  InlineKeyboardButton("Get Premium", callback_data="get_premium")
1113
  ]])
1114
  )
 
1115
  backup_chat = await db._get_chatbot_chat_from_db(message.from_user.id)
1116
  backup_chat.append({"role": "user", "parts": [{"text": caption}]})
1117
  images = Image.open(await message.download())
 
92
  r"\bdeath\s*threat\b",
93
  ]
94
 
 
95
  def is_command_disabled(text):
96
  text_lower = text.lower()
97
  if text_lower.startswith("/") and not (text_lower.startswith("/setmodel") or text_lower.startswith("/start")):
 
1092
  "user_id": message.from_user.id,
1093
  "credits_used": 0,
1094
  "last_reset": dt.now(),
1095
+ "is_premium": False,
1096
+ "premium_expiry" = None
1097
  }
1098
  if dt.now() - user_data["last_reset"] > timedelta(days=1):
1099
+ await db.user_premium.update_one(
1100
+ {"user_id": message.from_user.id},
1101
+ {"$set": {"credits_used": 0, "last_reset": dt.now()}}
1102
+ )
1103
  user_data["credits_used"] = 0
1104
+
1105
+ if user_data.get("is_premium") and user_data["premium_expiry"] < dt.now():
1106
+ await db.user_premium.update_one(
1107
+ {"user_id": message.from_user.id},
1108
+ {"$set": {"is_premium": False}}
1109
+ )
1110
+ user_data["is_premium"] = False
1111
+
1112
+ credit_limit = 50 if user_data["is_premium"] else 5
1113
+ remaining = credit_limit - user_data["credits_used"]
1114
+ if remaining <= 0:
1115
  time_left = (user_data["last_reset"] + timedelta(days=1) - dt.now())
1116
  hours = int(time_left.total_seconds() // 3600)
1117
  return await message.reply_text(
 
1123
  InlineKeyboardButton("Get Premium", callback_data="get_premium")
1124
  ]])
1125
  )
1126
+
1127
  backup_chat = await db._get_chatbot_chat_from_db(message.from_user.id)
1128
  backup_chat.append({"role": "user", "parts": [{"text": caption}]})
1129
  images = Image.open(await message.download())