From de522c173513393783e04d16a7060a2bed9e07b6 Mon Sep 17 00:00:00 2001 From: iammiracle Date: Tue, 12 Apr 2022 15:50:13 +0100 Subject: [PATCH] event website detailed page --- .../controllers/portal.py | 16 +++++ .../views/event_portal_templates.xml | 65 +++++++++++++++++++ 2 files changed, 81 insertions(+) diff --git a/website_event_portal_listing/controllers/portal.py b/website_event_portal_listing/controllers/portal.py index bceeb10..a075a86 100644 --- a/website_event_portal_listing/controllers/portal.py +++ b/website_event_portal_listing/controllers/portal.py @@ -3,6 +3,7 @@ from odoo import http, _ from odoo.addons.portal.controllers.portal import CustomerPortal, pager as portal_pager +from odoo.addons.website_event.controllers.main import WebsiteEventController from odoo.exceptions import AccessError, MissingError from collections import OrderedDict from odoo.http import request @@ -82,3 +83,18 @@ def portal_my_events(self, page=1, date_open=None, date_closed=None, sortby=None 'filterby': filterby, }) return request.render("website_event_portal_listing.portal_my_events", values) + + +class WebsiteEventControllerExtended(WebsiteEventController): + @http.route(['''/my/event/'''], type='http', auth="public", website=True) + def event_details(self, event_id, **post): + event = request.env['event.event'].sudo().browse(event_id) + if not event.can_access_from_current_website(): + raise werkzeug.exceptions.NotFound() + + attendees_sudo = request.env['event.registration'].sudo().search([ + ('event_id', '=', event.id), ('email', '=', request.env.user.partner_id.email) + ]) + + return request.render("website_event_portal_listing.event_info", + self._get_registration_confirm_values(event, attendees_sudo)) diff --git a/website_event_portal_listing/views/event_portal_templates.xml b/website_event_portal_listing/views/event_portal_templates.xml index e7390e5..1ce64b4 100644 --- a/website_event_portal_listing/views/event_portal_templates.xml +++ b/website_event_portal_listing/views/event_portal_templates.xml @@ -59,4 +59,69 @@ + +