Files
Reskreen/mycaldav/views.py
2022-06-30 18:08:16 +02:00

76 lines
3.1 KiB
Python

from django.http import HttpResponse
from django.shortcuts import render
from django.views import generic
from django.template import loader
from django.views.decorators.clickjacking import xframe_options_exempt
import caldav as cal
# Create your views here.
from mycaldav.models import *
@xframe_options_exempt
def view_task_caldav(request):
o_caldav = cls_caldav(url="https://sync.infomaniak.com/calendars/AA01593/a4835de4-b3cd-46ca-8f48-3dacd3a2b46e?export")
o_caldav.get_caldav_data()
template = loader.get_template("task/task.html")
context = {'latest_task_list':o_caldav.day, 'night_task_list': o_caldav.night}
return HttpResponse(template.render(context,request))
@xframe_options_exempt
def view_vhc_caldav(request):
o_caldav = cls_caldav(url="https://sync.infomaniak.com/calendars/AA01593/4f7b4591-a4c4-4443-9f78-01df068f58b8?export")
o_caldav.get_caldav_data(periode=2)
template = loader.get_template("vhc/vhc_view.html")
context = {'latest_task_list': o_caldav.items}
return HttpResponse(template.render(context, request))
@xframe_options_exempt
def view_rh_caldav(request):
o_caldav = cls_caldav(url="https://sync.infomaniak.com/calendars/AA01593/c9916d31-c25b-4b0b-8673-81e2164b6f10?export")
o_caldav.get_caldav_data(periode=2)
template = loader.get_template("rh/rh_view.html")
context = {'latest_task_list': o_caldav.items}
return HttpResponse(template.render(context, request))
@xframe_options_exempt
def view_road_caldav(request):
o_caldav = cls_caldav(url="https://sync.infomaniak.com/calendars/AA01593/d608fcce-2f30-42f0-816c-b5524a0672fe?export")
o_caldav.get_caldav_data(periode=2)
template = loader.get_template("road/road_view.html")
context = {'latest_task_list': o_caldav.items}
return HttpResponse(template.render(context, request))
@xframe_options_exempt
def view_op_caldav(request):
o_caldav = cls_caldav(url="https://sync.infomaniak.com/calendars/AA01593/73f3c787-abe1-4cd0-bf2a-c44dbc7015b9?export")
o_caldav.get_caldav_data(periode=1)
template = loader.get_template("road/op_view.html")
context = {'latest_task_list': o_caldav.items}
return HttpResponse(template.render(context, request))
@xframe_options_exempt
def view_dayly_caldav(request):
ret = ""
caldav_url = "https://sync.infomaniak.com"
caldav_user = 'SC01066'
caldav_password = "mc144*1870CLERC"
client = cal.DAVClient(url=caldav_url, username=caldav_user, password=caldav_password)
my_principal = client.principal()
calendars = my_principal.calendars()
if calendars:
## Some calendar servers will include all calendars you have
## access to in this list, and not only the calendars owned by
## this principal.
print("your principal has %i calendars:" % len(calendars))
ret += "your principal has %i calendars:" % len(calendars)
for c in calendars:
print(" Name: %-20s URL: %s" % (c.name, c.url))
ret += " Name: %-20s URL: %s" % (c.name, c.url) + "<br>\n"
else:
print("your principal has no calendars")
return HttpResponse(ret)