-
Notifications
You must be signed in to change notification settings - Fork 0
/
juniorRequestCyc.py
64 lines (46 loc) · 2.06 KB
/
juniorRequestCyc.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
52
53
54
55
56
57
58
59
60
61
62
63
64
import discord
from datetime import datetime as dt
from pytz import timezone
async def juniorRequestFunc(client):
request = client.get_channel(997923048403509308)
ctx = client.get_channel(924285600608182292)
m = [message async for message in request.history(limit=100)]
m=reversed(m)
requestCounter = 0
requestDict = {}
text = ""
def whenCreated(createdDate):
if createdDate.minute <=9:
minute = f'0{createdDate.minute}'
else:
minute = createdDate.minute
if dt.now().day == createdDate.day:
return f'в {createdDate.hour}:{minute}.'
result = dt.now().day - createdDate.day
if result == 1:
dayWord = 'день'
elif result <= 4:
dayWord = 'дня'
else:
dayWord = 'дней'
return f'{result} {dayWord} назад, в {createdDate.hour}:{minute}.'
for x in m:
if x.embeds != []:
try:
if "ожидает одобрения" in x.embeds[0].title:
requestCounter+=1
requestDict[f"{requestCounter}"] = {'id': f'{x.id}', 'date': f'{whenCreated(x.created_at.astimezone(timezone("Europe/Moscow")))}'}
except:
continue
titleText = f"Господа модераторы и модераторанесы, количество не одобренных запросов в <#997923048403509308> - {requestCounter}\n"
for x in range(1, len(requestDict)+1):
text += f'Запрос номер `{x}` - <#{requestDict[f"{x}"]["id"]}>, создан {requestDict[f"{x}"]["date"]}\n'
if text == "":
await ctx.send("Не обработанных запросов в <#997923048403509308> нет, хорошая работа, господа модераторы и модераторанесы.")
return
embed = discord.Embed(
colour=discord.Colour.dark_blue(),
description=text,
title=titleText,
)
await ctx.send(embed=embed)