diff --git a/Shitpost.py b/Shitpost.py index 51e9597..1116d67 100644 --- a/Shitpost.py +++ b/Shitpost.py @@ -5,10 +5,11 @@ from urllib import request import requests import json, requests import math -from datetime import datetime +from datetime import datetime, timedelta import sys import os import random +import caldav class Shitpost(commands.Cog): """Schijtpaal commando's. Alleen bruikbaar in de daarvoor toegewezen schijtpaal kanalen.""" @@ -26,6 +27,7 @@ class Shitpost(commands.Cog): 'knoeier','sufferd','slaapkop','onbenul','enorme nerf herder','geinponem', 'clownsfiguur','krotenkoker','hansworst','grappenmaker','flapdrol','oen', 'achterlijk gebakje','demente dibbes','geitenbreier','koekwous','sufkop'] + self.caldav_client = caldav.DAVClient(url=self.bot.tokens['caldav_url']) def __check(self, ctx): #Todo: Is dit het shitpost kanaal? return True @@ -706,6 +708,19 @@ class Shitpost(commands.Cog): yield from ctx.channel.send(member.mention+ ", " + ctx.author.mention + " vindt jou een " + random.choice(self.insult) + "! :angry:") yield from ctx.message.delete() + def watspelenweecht(self): + """Geeft een paar terug, met de titel en omschrijving van het eerstvolgende event uit de kalender""" + calendar = self.caldav_client.calendar(url=self.bot.tokens["calendar"]) # refresh kalender + + # geen errorchecking hier, de caller doet dat maar gewoon ofzo, yolo + events = calendar.date_search( + start=datetime.now(), + end=datetime.now()+timedelta(days=7), + expand=True + ) + return (events[0].vobject_instance.vevent.summary.value, events[0].vobject_instance.vevent.description.value) + + @commands.command(pass_context=True) @asyncio.coroutine def watspelenwe(self, ctx): @@ -811,6 +826,12 @@ class Shitpost(commands.Cog): else: message = "We spelen " + DAG + random.choice(SPELLEN) + " " + random.choice(PLAATSEN) + ", aanvang " + random.choice(AANVANG) + try: + (activiteit, reden) = self.watspelenweecht() + message += f"\nNee, we doen eigenlijk {activiteit} want {reden}" + except: + message += ". En wilt iemand even aan Mark vragen of hij de kalender bijhoudt?" + try: yield from ctx.message.delete() except: