parent
b6ec2f7126
commit
162b92fae2
|
@ -8,7 +8,6 @@ from subprocess import run
|
||||||
|
|
||||||
import cherrypy
|
import cherrypy
|
||||||
|
|
||||||
from defusedxml.ElementTree import fromstring
|
|
||||||
from icalendar import Calendar, Todo
|
from icalendar import Calendar, Todo
|
||||||
|
|
||||||
GITEA_REPO_URL="https://git.bitmessage.org/api/v1"
|
GITEA_REPO_URL="https://git.bitmessage.org/api/v1"
|
||||||
|
@ -58,7 +57,7 @@ def get_token(input_token):
|
||||||
|
|
||||||
class Root:
|
class Root:
|
||||||
@cherrypy.expose
|
@cherrypy.expose
|
||||||
def index(self):
|
def todo(self):
|
||||||
cherrypy.response.headers['WWW-Authenticate'] = \
|
cherrypy.response.headers['WWW-Authenticate'] = \
|
||||||
'Basic realm="ICS access"'
|
'Basic realm="ICS access"'
|
||||||
authorization = cherrypy.request.headers.get('Authorization', ':')
|
authorization = cherrypy.request.headers.get('Authorization', ':')
|
||||||
|
@ -72,34 +71,8 @@ class Root:
|
||||||
raise cherrypy.HTTPError(401, 'Unauthorized')
|
raise cherrypy.HTTPError(401, 'Unauthorized')
|
||||||
return(process_combined(combined))
|
return(process_combined(combined))
|
||||||
|
|
||||||
class Dav:
|
|
||||||
exposed = True
|
|
||||||
#@cherrypy.expose
|
|
||||||
@cherrypy.tools.accept(media='application/xml')
|
|
||||||
def PROPFIND(self):
|
|
||||||
cl = cherrypy.request.headers['Content-Length']
|
|
||||||
rawbody = cherrypy.request.body.read(size=int(cl))
|
|
||||||
et = fromstring(rawbody)
|
|
||||||
for child in et:
|
|
||||||
if child.tag == '{DAV:}prop':
|
|
||||||
for x in child:
|
|
||||||
print("T:", x.tag, "; A:", x.attrib)
|
|
||||||
#print(et)
|
|
||||||
print(f"BODY {rawbody}")
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
conf = {
|
|
||||||
'/dav': {
|
|
||||||
'request.dispatch': cherrypy.dispatch.MethodDispatcher(),
|
|
||||||
'request.methods_with_bodies': ('POST',
|
|
||||||
'PUT',
|
|
||||||
'PROPFIND'),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
cherrypy.config.update({'server.socket_host': '0.0.0.0',
|
cherrypy.config.update({'server.socket_host': '0.0.0.0',
|
||||||
'server.socket_port': 8080,
|
'server.socket_port': 8080,
|
||||||
})
|
})
|
||||||
webapp = Root()
|
cherrypy.quickstart(Root(), '/')
|
||||||
webapp.dav = Dav()
|
|
||||||
cherrypy.quickstart(webapp, '/', conf)
|
|
|
@ -1,3 +1,2 @@
|
||||||
cherrypy
|
cherrypy
|
||||||
defusedxml
|
|
||||||
icalendar
|
icalendar
|
||||||
|
|
Loading…
Reference in New Issue
Block a user