Simplify bot

This commit is contained in:
Michel Roux 2022-05-30 08:30:11 +02:00
parent f968e38acf
commit 468283967b
2 changed files with 10 additions and 28 deletions

30
bot.py
View File

@ -3,7 +3,7 @@ from datetime import timedelta
from os import environ
from typing import List, Optional, Union
from disnake import Client, Guild, Member
from disnake import Client, Guild
from dotenv import load_dotenv
from ics import Calendar, Event # type: ignore
from ics.alarm.display import DisplayAlarm # type: ignore
@ -44,23 +44,6 @@ def get_guild_by_id(guild_id: Union[int, str]) -> Optional[Guild]:
return None
def get_bot_member(guild: Guild) -> Optional[Member]:
for member in guild.members:
if member.id == client.user.id:
return member
return None
async def get_guild_tag(member: Member) -> Optional[str]:
if member.guild_permissions.manage_guild:
if member.guild.vanity_url_code:
return member.guild.vanity_url_code
else:
invites = await member.guild.invites()
return invites[0].code
return None
def token_updater(token: str) -> None:
session["oauth2_token"] = token
@ -119,26 +102,25 @@ async def index(guild_id):
if guild is None:
return redirect(url_for(".login"))
bot = get_bot_member(guild)
guild_tag = await get_guild_tag(bot)
calendar = Calendar()
for scheduled_event in guild.scheduled_events:
event = Event()
event.name = scheduled_event.name
event.begin = scheduled_event.scheduled_start_time
event.end = scheduled_event.scheduled_end_time
event.end = (
scheduled_event.scheduled_end_time
or scheduled_event.scheduled_start_time + timedelta(hours=2)
)
event.uid = str(scheduled_event.id)
event.description = scheduled_event.description
event.url = f"https://discord.com/events/{guild_id}/{scheduled_event.id}"
event.location = (
scheduled_event.entity_metadata.location
if scheduled_event.entity_metadata
else None
)
if guild_tag:
event.url = f"https://discord.gg/{guild_tag}?event={scheduled_event.id}"
alarm = DisplayAlarm()
alarm.trigger = timedelta(hours=1)
event.alarms.append(alarm)

8
poetry.lock generated
View File

@ -102,11 +102,11 @@ python-versions = "*"
[[package]]
name = "certifi"
version = "2021.10.8"
version = "2022.5.18.1"
description = "Python package for providing Mozilla's CA Bundle."
category = "main"
optional = false
python-versions = "*"
python-versions = ">=3.6"
[[package]]
name = "charset-normalizer"
@ -735,8 +735,8 @@ blinker = [
{file = "blinker-1.4.tar.gz", hash = "sha256:471aee25f3992bd325afa3772f1063dbdbbca947a041b8b89466dc00d606f8b6"},
]
certifi = [
{file = "certifi-2021.10.8-py2.py3-none-any.whl", hash = "sha256:d62a0163eb4c2344ac042ab2bdf75399a71a2d8c7d47eac2e2ee91b9d6339569"},
{file = "certifi-2021.10.8.tar.gz", hash = "sha256:78884e7c1d4b00ce3cea67b44566851c4343c120abd683433ce934a68ea58872"},
{file = "certifi-2022.5.18.1-py3-none-any.whl", hash = "sha256:f1d53542ee8cbedbe2118b5686372fb33c297fcd6379b050cca0ef13a597382a"},
{file = "certifi-2022.5.18.1.tar.gz", hash = "sha256:9c5705e395cd70084351dd8ad5c41e65655e08ce46f2ec9cf6c2c08390f71eb7"},
]
charset-normalizer = [
{file = "charset-normalizer-2.0.12.tar.gz", hash = "sha256:2857e29ff0d34db842cd7ca3230549d1a697f96ee6d3fb071cfa6c7393832597"},