Ajout vhc caldav

This commit is contained in:
Ambulance Clerc
2022-06-22 07:56:14 +02:00
parent 6a5bc4a280
commit 1a2bf4d874
4 changed files with 50 additions and 10 deletions

View File

@@ -25,7 +25,7 @@ class cls_caldav():
self.day = []
self.night = []
def get_caldav_data(self):
def get_caldav_data(self,periode=1):
ctx = ssl.create_default_context()
ctx.check_hostname = False
ctx.verify_mode = ssl.CERT_NONE
@@ -40,22 +40,28 @@ class cls_caldav():
tomorow = datetime.now() + timedelta(days=1)
today = (datetime.now().year,datetime.now().month,datetime.now().day)
events = None
if periode == 1:
events = recurring_ical_events.of(Calendar.from_ical(self.data)).at(today)
elif periode == 2:
events = recurring_ical_events.of(Calendar.from_ical(self.data)).between(today,tomorow)
for event in recurring_ical_events.of(Calendar.from_ical(self.data)).at(today):
for event in events:
item = _caldav_item()
item.name = event["SUMMARY"]
if "/" in item.name:
arr = item.name.split("/")
if "-" in item.name:
arr = item.name.split("-")
item.key = arr[0]
item.name = arr[1]
item.desc = event["DESCRIPTION"]
if "DESCRIPTION" in event.keys():
item.desc = event["DESCRIPTION"]
if "*done*" in item.desc:
item.done = True
item.dtstart = event["DTSTART"].dt.strftime("%d.%m.%Y %H:%M")
item.dtend = event["DTEND"].dt.strftime("%d.%m.%Y %H:%M")
item.format_str_date()
self.items.append(item)
@@ -80,13 +86,20 @@ class _caldav_item():
name = ""
desc = ""
dtstart = None
str_start_date = ""
str_start_time = ""
dtend = None
str_end_date = ""
str_end_time = ""
dtstamp = None
done = False
def format_str_date(self):
self.str_start_date = datetime.strptime(self.dtstart,"%d.%m.%Y %H:%M").strftime("%d.%m.%Y")
self.str_start_time = datetime.strptime(self.dtstart, "%d.%m.%Y %H:%M").strftime("%H:%M")
self.str_end_date = datetime.strptime(self.dtend,"%d.%m.%Y %H:%M").strftime("%d.%m.%Y")
self.str_end_time = datetime.strptime(self.dtend, "%d.%m.%Y %H:%M").strftime("%H:%M")
o_caldav = cls_caldav(url="https://sync.infomaniak.com/calendars/AA01593/a4835de4-b3cd-46ca-8f48-3dacd3a2b46e?export")