Ufoptg commited on
Commit
d5e6fb2
·
1 Parent(s): 51ce92b

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +20 -16
main.py CHANGED
@@ -153,35 +153,39 @@ def sibyl_system_delete(
153
  except Exception as e:
154
  return ErrorStatus(status="false", message=f"Internal server error: {str(e)}")
155
 
156
- @app.post("/UFoP/banner", response_model=SuccessResponse, responses={422: {"model": ErrorStatus}})
157
  def sibyl_system_ban(
158
- item: SibylSystemBan,
159
- api_key: None = Depends(validate_api_key)
 
160
  ):
161
- if item.user_id == DEVELOPER_ID:
162
  return {"status": "false", "message": "Only Developer"}
163
 
164
  try:
165
  date_joined = str(dt.now())
166
  sibyl_ban = random.choice(db.RAMDOM_STATUS)
167
- _, _, is_banned, _, sibyl_user_id = db.get_sibyl_system_banned(item.user_id)
168
-
169
- if sibyl_user_id and is_banned:
 
170
  return {"status": "false", "message": "User is already banned"}
171
 
172
- db.new_sibyl_system_banned(item.user_id, sibyl_ban, item.reason, date_joined)
173
- return SuccessResponse(
174
- status="True",
175
- sukuna={
176
- "user_id": item.user_id,
 
177
  "sibyl_name": sibyl_ban,
178
- "reason": item.reason,
179
  "date_joined": date_joined,
180
- "message": f"Successfully banned {item.user_id} from the Sibyl ban list."
181
  }
182
- )
183
  except Exception as e:
184
- return ErrorStatus(status="false", message=f"Internal server error: {str(e)}")
 
185
 
186
  @app.get("/UFoP/bans")
187
  def sibyl_system(
 
153
  except Exception as e:
154
  return ErrorStatus(status="false", message=f"Internal server error: {str(e)}")
155
 
156
+ @app.post("/UFoP/banner")
157
  def sibyl_system_ban(
158
+ user_id: int = Query(..., description="User ID in query parameter"),
159
+ reason: str = Query(..., description="Reason in query parameter"),
160
+ api_key: None = Depends(validate_api_key_only_devs)
161
  ):
162
+ if user_id == int(DEVELOPER_ID):
163
  return {"status": "false", "message": "Only Developer"}
164
 
165
  try:
166
  date_joined = str(dt.now())
167
  sibyl_ban = random.choice(db.RAMDOM_STATUS)
168
+ ban_data = db.get_sibyl_system_banned(user_id)
169
+
170
+ if ban_data is not None:
171
+ _, _, is_banned, _, sibyl_user_id = ban_data
172
  return {"status": "false", "message": "User is already banned"}
173
 
174
+ db.new_sibyl_system_banned(user_id, sibyl_ban, reason, date_joined)
175
+
176
+ return {
177
+ "status": "true",
178
+ "sukuna": {
179
+ "user_id": user_id,
180
  "sibyl_name": sibyl_ban,
181
+ "reason": reason,
182
  "date_joined": date_joined,
183
+ "message": f"Successfully banned {user_id} from the Sibyl ban list."
184
  }
185
+ }
186
  except Exception as e:
187
+ logging.error(f"Error in sibyl_system_ban: {e}")
188
+ return {"status": "false", "message": "Internal server error"}
189
 
190
  @app.get("/UFoP/bans")
191
  def sibyl_system(