diff options
| author | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 21:51:50 +0700 |
|---|---|---|
| committer | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 21:51:50 +0700 |
| commit | 3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch) | |
| tree | a44932296ef4a9b71d5f010906253d8c53727726 /addons/event/controllers | |
| parent | 0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff) | |
initial commit 2
Diffstat (limited to 'addons/event/controllers')
| -rw-r--r-- | addons/event/controllers/__init__.py | 4 | ||||
| -rw-r--r-- | addons/event/controllers/main.py | 21 |
2 files changed, 25 insertions, 0 deletions
diff --git a/addons/event/controllers/__init__.py b/addons/event/controllers/__init__.py new file mode 100644 index 00000000..5d4b25db --- /dev/null +++ b/addons/event/controllers/__init__.py @@ -0,0 +1,4 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from . import main diff --git a/addons/event/controllers/main.py b/addons/event/controllers/main.py new file mode 100644 index 00000000..509d486b --- /dev/null +++ b/addons/event/controllers/main.py @@ -0,0 +1,21 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from werkzeug.exceptions import NotFound + +from odoo.http import Controller, request, route, content_disposition + + +class EventController(Controller): + + @route(['''/event/<model("event.event"):event>/ics'''], type='http', auth="public") + def event_ics_file(self, event, **kwargs): + files = event._get_ics_file() + if not event.id in files: + return NotFound() + content = files[event.id] + return request.make_response(content, [ + ('Content-Type', 'application/octet-stream'), + ('Content-Length', len(content)), + ('Content-Disposition', content_disposition('%s.ics' % event.name)) + ]) |
