| @ -0,0 +1,49 @@ | |||||
|  | .. image:: https://img.shields.io/badge/licenses-AGPL--3-blue.svg | ||||
|  |     :target: https://www.gnu.org/licenses/agpl-3.0-standalone.html | ||||
|  |     :alt: License: AGPL-3 | ||||
|  | 
 | ||||
|  | Website Portal Events | ||||
|  | ===================== | ||||
|  | This module helps to show event tickets in the portal in odoo17. | ||||
|  | 
 | ||||
|  | Configuration | ||||
|  | ============= | ||||
|  | * No additional configurations needed | ||||
|  | 
 | ||||
|  | Company | ||||
|  | ------- | ||||
|  | * `Cybrosys Techno Solutions <https://cybrosys.com/>`__ | ||||
|  | 
 | ||||
|  | License | ||||
|  | ------- | ||||
|  | General Public License, Version 3 (AGPL v3). | ||||
|  | (https://www.gnu.org/licenses/agpl-3.0-standalone.html) | ||||
|  | 
 | ||||
|  | Credits | ||||
|  | ------- | ||||
|  | * Developer: | ||||
|  |    (V16) Sruthi MK | ||||
|  |    (V17) Anjhana A K | ||||
|  |  Contact: odoo@cybrosys.com | ||||
|  | 
 | ||||
|  | Contacts | ||||
|  | -------- | ||||
|  | * Mail Contact : odoo@cybrosys.com | ||||
|  | * Website : https://cybrosys.com | ||||
|  | 
 | ||||
|  | Bug Tracker | ||||
|  | ----------- | ||||
|  | Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. | ||||
|  | 
 | ||||
|  | Maintainer | ||||
|  | ========== | ||||
|  | .. image:: https://cybrosys.com/images/logo.png | ||||
|  |    :target: https://cybrosys.com | ||||
|  | 
 | ||||
|  | This module is maintained by Cybrosys Technologies. | ||||
|  | 
 | ||||
|  | For support and more information, please visit `Our Website <https://cybrosys.com/>`__ | ||||
|  | 
 | ||||
|  | Further information | ||||
|  | =================== | ||||
|  | HTML Description: `<static/description/index.html>`__ | ||||
| @ -0,0 +1,21 @@ | |||||
|  | # -*- coding: utf-8 -*- | ||||
|  | ############################################################################# | ||||
|  | # | ||||
|  | #    Cybrosys Technologies Pvt. Ltd. | ||||
|  | # | ||||
|  | #    Copyright (C) 2024-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) | ||||
|  | #    Author:Anjhana A K(<https://www.cybrosys.com>) | ||||
|  | #    You can modify it under the terms of the GNU AFFERO | ||||
|  | #    GENERAL PUBLIC LICENSE (AGPL v3), Version 3. | ||||
|  | # | ||||
|  | #    This program is distributed in the hope that it will be useful, | ||||
|  | #    but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|  | #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
|  | #    GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. | ||||
|  | # | ||||
|  | #    You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE | ||||
|  | #    (AGPL v3) along with this program. | ||||
|  | #    If not, see <http://www.gnu.org/licenses/>. | ||||
|  | # | ||||
|  | ############################################################################# | ||||
|  | from . import controllers | ||||
| @ -0,0 +1,42 @@ | |||||
|  | # -*- coding: utf-8 -*- | ||||
|  | ############################################################################# | ||||
|  | # | ||||
|  | #    Cybrosys Technologies Pvt. Ltd. | ||||
|  | # | ||||
|  | #    Copyright (C) 2024-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) | ||||
|  | #    Author:Anjhana A K(<https://www.cybrosys.com>) | ||||
|  | #    You can modify it under the terms of the GNU AFFERO | ||||
|  | #    GENERAL PUBLIC LICENSE (AGPL v3), Version 3. | ||||
|  | # | ||||
|  | #    This program is distributed in the hope that it will be useful, | ||||
|  | #    but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|  | #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
|  | #    GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. | ||||
|  | # | ||||
|  | #    You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE | ||||
|  | #    (AGPL v3) along with this program. | ||||
|  | #    If not, see <http://www.gnu.org/licenses/>. | ||||
|  | # | ||||
|  | ############################################################################# | ||||
|  | { | ||||
|  |     'name': 'Website Portal Events', | ||||
|  |     'version': '17.0.1.0.0', | ||||
|  |     'category': 'Website', | ||||
|  |     'summary': 'Show event tickets in customer portal', | ||||
|  |     'description': """Which will helps to show all events in the customer | ||||
|  |     portal. Also there is an option to search, filter, sort the events to | ||||
|  |      get it easily and we can download the events""", | ||||
|  |     'author': 'Cybrosys Techno solutions', | ||||
|  |     'company': 'Cybrosys Techno Solutions', | ||||
|  |     'maintainer': 'Cybrosys Techno Solutions', | ||||
|  |     'website': 'https://www.cybrosys.com', | ||||
|  |     'depends': ['website_event', 'portal'], | ||||
|  |     'data': [ | ||||
|  |         'views/event_portal_templates.xml' | ||||
|  |     ], | ||||
|  |     'images': ['static/description/banner.jpg'], | ||||
|  |     'license': 'AGPL-3', | ||||
|  |     'installable': True, | ||||
|  |     'application': False, | ||||
|  |     'auto_install': False, | ||||
|  | } | ||||
| @ -0,0 +1,21 @@ | |||||
|  | # -*- coding: utf-8 -*- | ||||
|  | ############################################################################# | ||||
|  | # | ||||
|  | #    Cybrosys Technologies Pvt. Ltd. | ||||
|  | # | ||||
|  | #    Copyright (C) 2024-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) | ||||
|  | #    Author:Anjhana A K(<https://www.cybrosys.com>) | ||||
|  | #    You can modify it under the terms of the GNU AFFERO | ||||
|  | #    GENERAL PUBLIC LICENSE (AGPL v3), Version 3. | ||||
|  | # | ||||
|  | #    This program is distributed in the hope that it will be useful, | ||||
|  | #    but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|  | #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
|  | #    GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. | ||||
|  | # | ||||
|  | #    You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE | ||||
|  | #    (AGPL v3) along with this program. | ||||
|  | #    If not, see <http://www.gnu.org/licenses/>. | ||||
|  | # | ||||
|  | ############################################################################# | ||||
|  | from . import website_portal_events | ||||
| @ -0,0 +1,283 @@ | |||||
|  | # -*- coding: utf-8 -*- | ||||
|  | ############################################################################# | ||||
|  | # | ||||
|  | #    Cybrosys Technologies Pvt. Ltd. | ||||
|  | # | ||||
|  | #    Copyright (C) 2024-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) | ||||
|  | #    Author:Anjhana A K(<https://www.cybrosys.com>) | ||||
|  | #    You can modify it under the terms of the GNU AFFERO | ||||
|  | #    GENERAL PUBLIC LICENSE (AGPL v3), Version 3. | ||||
|  | # | ||||
|  | #    This program is distributed in the hope that it will be useful, | ||||
|  | #    but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|  | #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
|  | #    GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. | ||||
|  | # | ||||
|  | #    You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE | ||||
|  | #    (AGPL v3) along with this program. | ||||
|  | #    If not, see <http://www.gnu.org/licenses/>. | ||||
|  | # | ||||
|  | ############################################################################# | ||||
|  | from collections import OrderedDict | ||||
|  | from datetime import date, timedelta | ||||
|  | from odoo import fields, http, _ | ||||
|  | from odoo.http import request | ||||
|  | from odoo.exceptions import AccessError, MissingError | ||||
|  | from odoo.osv import expression | ||||
|  | from odoo.osv.expression import OR, AND | ||||
|  | from odoo.addons.portal.controllers.portal import CustomerPortal, \ | ||||
|  |     pager as portal_pager | ||||
|  | 
 | ||||
|  | 
 | ||||
|  | class PortalEvent(CustomerPortal): | ||||
|  |     """PortalEvent helps to show the information of all events in the | ||||
|  |      customer portal""" | ||||
|  | 
 | ||||
|  |     def _prepare_home_portal_values(self, counters): | ||||
|  |         """Which will set all portal values. And return total events count""" | ||||
|  |         values = super()._prepare_home_portal_values(counters) | ||||
|  |         if 'event_count' in counters: | ||||
|  |             event_count = request.env['event.registration'].search_count( | ||||
|  |                 self._get_events_domain()) \ | ||||
|  |                 if request.env['event.registration'].check_access_rights('read', | ||||
|  |                                                                          raise_exception=False) else 0 | ||||
|  |             values['event_count'] = event_count | ||||
|  |         return values | ||||
|  | 
 | ||||
|  |     def _get_events_domain(self): | ||||
|  |         """Returns the events that are in stage 'cancel' and 'draft'""" | ||||
|  |         return [('state', 'not in', ('cancel', 'draft'))] | ||||
|  | 
 | ||||
|  |     @http.route(['/my/events', '/my/events/page/<int:page>'], type='http', | ||||
|  |                 auth="user", website=True) | ||||
|  |     def portal_my_events(self, page=1, date_begin=None, date_end=None, | ||||
|  |                          sortby=None, filterby=None, search=None, | ||||
|  |                          search_in='content', **kw): | ||||
|  |         """Returns the corresponding event datas and pager information. | ||||
|  |          Which will render a newtemplate to show the events""" | ||||
|  |         values = self._prepare_my_event_values(page, date_begin, date_end, | ||||
|  |                                                sortby, filterby, | ||||
|  |                                                search, search_in) | ||||
|  |         # Pager | ||||
|  |         pager = portal_pager(**values['pager']) | ||||
|  |         # Content according to pager and archive selected | ||||
|  |         events = values['events'](pager['offset']) | ||||
|  |         request.session['my_events_history'] = events.ids[:100] | ||||
|  |         values.update({ | ||||
|  |             'events': events, | ||||
|  |             'pager': pager, | ||||
|  |         }) | ||||
|  |         return request.render("website_portal_events.portal_my_events", values) | ||||
|  | 
 | ||||
|  |     @http.route(['/my/event_data/<int:event>'], | ||||
|  |                 type='http', auth="public", | ||||
|  |                 website=True) | ||||
|  |     def portal_my_helpdesk(self, event=None, access_token=None, **kw): | ||||
|  |         """Helps to show the portal event datas. Which will redirected | ||||
|  |          to the portal form""" | ||||
|  |         try: | ||||
|  |             event_sudo = self._document_check_access('event.registration', | ||||
|  |                                                      event, | ||||
|  |                                                      access_token) | ||||
|  |         except (AccessError, MissingError): | ||||
|  |             return request.redirect('/my') | ||||
|  |         values = self._get_event_page_view_values(event_sudo, access_token, | ||||
|  |                                                   **kw) | ||||
|  |         return request.render("website_portal_events.event_portal_form", | ||||
|  |                               values) | ||||
|  | 
 | ||||
|  |     @http.route(['/download/event_data/<int:event>'], | ||||
|  |                 type='http', auth="public", | ||||
|  |                 website=True) | ||||
|  |     def portal_my_event_download(self, event=None, access_token=None, **kw): | ||||
|  |         """Helps to download event ticket from the portal""" | ||||
|  |         if event: | ||||
|  |             pdf, _ = request.env['ir.actions.report'].sudo()._render_qweb_pdf( | ||||
|  |                 'event.action_report_event_registration_full_page_ticket', | ||||
|  |                 [event]) | ||||
|  |             pdfhttpheaders = [('Content-Type', 'application/pdf'), | ||||
|  |                               ('Content-Length', str(len(pdf))), | ||||
|  |                               ('Content-Disposition', | ||||
|  |                                'attachment; filename=report.pdf')] | ||||
|  |             response = request.make_response(pdf, headers=pdfhttpheaders) | ||||
|  |             response.mimetype = 'application/pdf' | ||||
|  |             return response | ||||
|  |         else: | ||||
|  |             return request.redirect('/my/event_data') | ||||
|  | 
 | ||||
|  |     def _get_event_page_view_values(self, event, access_token, **kwargs): | ||||
|  |         """Get the page view values""" | ||||
|  |         values = { | ||||
|  |             'event': event, | ||||
|  |             'page_name': 'event', | ||||
|  |         } | ||||
|  |         return self._get_page_view_values(event, access_token, values, | ||||
|  |                                           'my_events_history', False, **kwargs) | ||||
|  | 
 | ||||
|  |     def _get_event_searchbar_sortings(self): | ||||
|  |         """Sort the events based on the date and name""" | ||||
|  |         return { | ||||
|  |             'date': {'label': _('Date'), 'order': 'create_date desc'}, | ||||
|  |             'name': {'label': _('Name'), 'order': 'name asc'}, | ||||
|  |         } | ||||
|  | 
 | ||||
|  |     def _get_event_searchbar_filters(self): | ||||
|  |         """Filter the events by All, Last month, This Month, Last Week, | ||||
|  |          This Week, Last Year, This Year, Today and This Quarter""" | ||||
|  |         # today = date.today() | ||||
|  |         today = fields.Date.today() | ||||
|  |         this_month_start = today.replace(day=1) | ||||
|  |         this_quarter_start = today.replace(day=1, month=(( | ||||
|  |                                                                  today.month - 1) // 3) * 3 + 1) | ||||
|  |         this_week_start = today - timedelta(days=today.weekday()) | ||||
|  |         this_year_start = today.replace(month=1, day=1) | ||||
|  |         return { | ||||
|  |             'all': {'label': _('All'), 'domain': []}, | ||||
|  |             'last_month': { | ||||
|  |                 'label': _('Last Month'), | ||||
|  |                 'domain': [('create_date', '>=', | ||||
|  |                             (this_month_start - timedelta(days=30)).strftime( | ||||
|  |                                 '%Y-%m-%d')), | ||||
|  |                            ('create_date', '<=', | ||||
|  |                             (this_month_start - timedelta(days=1)).strftime( | ||||
|  |                                 '%Y-%m-%d'))] | ||||
|  |             }, | ||||
|  |             'this_month': { | ||||
|  |                 'label': _('This Month'), | ||||
|  |                 'domain': [ | ||||
|  |                     ( | ||||
|  |                         'create_date', '>=', | ||||
|  |                         this_month_start.strftime('%Y-%m-%d')), | ||||
|  |                     ('create_date', '<=', today.strftime('%Y-%m-%d'))] | ||||
|  |             }, | ||||
|  |             'last_week': { | ||||
|  |                 'label': _('Last Week'), | ||||
|  |                 'domain': [('create_date', '>=', | ||||
|  |                             (this_week_start - timedelta(days=7)).strftime( | ||||
|  |                                 '%Y-%m-%d')), | ||||
|  |                            ('create_date', '<=', | ||||
|  |                             (this_week_start - timedelta(days=1)).strftime( | ||||
|  |                                 '%Y-%m-%d'))] | ||||
|  |             }, | ||||
|  |             'this_week': { | ||||
|  |                 'label': _('This Week'), | ||||
|  |                 'domain': [ | ||||
|  |                     ('create_date', '>=', this_week_start.strftime('%Y-%m-%d')), | ||||
|  |                     ('create_date', '<=', today.strftime('%Y-%m-%d'))] | ||||
|  |             }, | ||||
|  |             'last_year': { | ||||
|  |                 'label': _('Last Year'), | ||||
|  |                 'domain': [('create_date', '>=', | ||||
|  |                             (this_year_start - timedelta(days=365)).strftime( | ||||
|  |                                 '%Y-%m-%d')), | ||||
|  |                            ('create_date', '<=', | ||||
|  |                             (this_year_start - timedelta(days=1)).strftime( | ||||
|  |                                 '%Y-%m-%d'))] | ||||
|  |             }, | ||||
|  |             'this_year': { | ||||
|  |                 'label': _('This Year'), | ||||
|  |                 'domain': [ | ||||
|  |                     ('create_date', '>=', this_year_start.strftime('%Y-%m-%d')), | ||||
|  |                     ('create_date', '<=', today.strftime('%Y-%m-%d'))] | ||||
|  |             }, | ||||
|  |             'today': { | ||||
|  |                 'label': _('Today'), | ||||
|  |                 'domain': [('create_date', '=', today.strftime('%Y-%m-%d'))] | ||||
|  |             }, | ||||
|  |             'this_quarter': { | ||||
|  |                 'label': _('This Quarter'), | ||||
|  |                 'domain': [ | ||||
|  |                     ('create_date', '>=', | ||||
|  |                      this_quarter_start.strftime('%Y-%m-%d')), | ||||
|  |                     ('create_date', '<=', today.strftime('%Y-%m-%d'))] | ||||
|  |             } | ||||
|  |         } | ||||
|  | 
 | ||||
|  |     def _get_event_search_domain(self, search_in, search): | ||||
|  |         """Returns the events for the given search(If we have not entered | ||||
|  |          the full name which will also gives the output""" | ||||
|  |         search_domain = [] | ||||
|  |         if search_in == 'all': | ||||
|  |             search_domain.append([('name', 'ilike', | ||||
|  |                                    f'{search}%')]) | ||||
|  |             search_domain.append([('email', 'ilike', | ||||
|  |                                    f'{search}%')]) | ||||
|  |             search_domain.append([('phone', 'ilike', | ||||
|  |                                    f'{search}%')]) | ||||
|  |         if search_in in ('event', 'all'): | ||||
|  |             search_domain.append([('event_id', 'ilike', | ||||
|  |                                    f'{search}%')]) | ||||
|  |         return OR(search_domain) | ||||
|  | 
 | ||||
|  |     def _get_event_searchbar_inputs(self): | ||||
|  |         """Which will returns a dictionary of values by the search contents | ||||
|  |          as Search in All, in Content, Search in Stages, Search in Event""" | ||||
|  |         values = { | ||||
|  |             'all': {'input': 'all', 'label': _('Search in All'), 'order': 1}, | ||||
|  |             'event': {'input': 'event', 'label': _('Search in Event'), | ||||
|  |                       'order': 2}, | ||||
|  |         } | ||||
|  |         return dict(sorted(values.items(), key=lambda item: item[1]["order"])) | ||||
|  | 
 | ||||
|  |     def _prepare_my_event_values(self, page, date_begin, date_end, sortby, | ||||
|  |                                  filterby, search, search_in, | ||||
|  |                                  domain=None, url="/my/events"): | ||||
|  |         """Add all event values to the portal. Which will return the | ||||
|  |          values event, page, pager, filter, sort, and search""" | ||||
|  |         values = self._prepare_portal_layout_values() | ||||
|  |         Events = request.env['event.registration'] | ||||
|  |         domain = expression.AND([ | ||||
|  |             domain or [], | ||||
|  |             self._get_events_domain(), | ||||
|  |         ]) | ||||
|  |         searchbar_sortings = self._get_event_searchbar_sortings() | ||||
|  |         # default sort by order | ||||
|  |         if not sortby: | ||||
|  |             sortby = 'date' | ||||
|  |         order = searchbar_sortings[sortby]['order'] | ||||
|  |         searchbar_filters = self._get_event_searchbar_filters() | ||||
|  |         # default filter by value | ||||
|  |         if not filterby: | ||||
|  |             filterby = 'all' | ||||
|  |         domain += searchbar_filters[filterby]['domain'] | ||||
|  |         searchbar_inputs = self._get_event_searchbar_inputs() | ||||
|  |         if search and search_in: | ||||
|  |             domain += self._get_event_search_domain(search_in, search) | ||||
|  |         if date_begin and date_end: | ||||
|  |             domain += [('create_date', '>', date_begin), | ||||
|  |                        ('create_date', '<=', date_end)] | ||||
|  |         values.update({ | ||||
|  |             'date': date_begin, | ||||
|  |             # content according to pager and archive selected | ||||
|  |             # lambda function to get the invoices recordset when the pager | ||||
|  |             # will be defined in the main method of a route | ||||
|  |             'events': lambda pager_offset: self._get_grouped_events(Events, | ||||
|  |                                                                     domain, | ||||
|  |                                                                     order, | ||||
|  |                                                                     pager_offset), | ||||
|  |             'page_name': 'event', | ||||
|  |             'pager': { | ||||
|  |                 "url": url, | ||||
|  |                 "url_args": {'date_begin': date_begin, 'date_end': date_end, | ||||
|  |                              'sortby': sortby, 'search_in': search_in, | ||||
|  |                              'search': search}, | ||||
|  |                 "total": Events.search_count(domain), | ||||
|  |                 "page": page, | ||||
|  |                 "step": self._items_per_page, | ||||
|  |             }, | ||||
|  |             'default_url': url, | ||||
|  |             'searchbar_sortings': searchbar_sortings, | ||||
|  |             'sortby': sortby, | ||||
|  |             'searchbar_filters': OrderedDict(sorted(searchbar_filters.items())), | ||||
|  |             'filterby': filterby, | ||||
|  |             'searchbar_inputs': searchbar_inputs, | ||||
|  |             'search_in': search_in, | ||||
|  |             'search': search, | ||||
|  |         }) | ||||
|  |         return values | ||||
|  | 
 | ||||
|  |     def _get_grouped_events(self, Events, domain, order, pager_offset, ): | ||||
|  |         """Returns the grouped evnts for a given domain""" | ||||
|  |         events = Events.search(domain, order=order, limit=self._items_per_page, | ||||
|  |                                offset=pager_offset) | ||||
|  |         return events | ||||
| @ -0,0 +1,5 @@ | |||||
|  | ## Module <website_portal_events> | ||||
|  | #### 08.02.2024 | ||||
|  | #### Version 17.0.1.0.0 | ||||
|  | #### ADD | ||||
|  | - Initial commit for Website Portal Events | ||||
| After Width: | Height: | Size: 3.6 KiB | 
| After Width: | Height: | Size: 310 B | 
| After Width: | Height: | Size: 1.3 KiB | 
| After Width: | Height: | Size: 1.4 KiB | 
| After Width: | Height: | Size: 576 B | 
| After Width: | Height: | Size: 733 B | 
| After Width: | Height: | Size: 911 B | 
| After Width: | Height: | Size: 1.1 KiB | 
| After Width: | Height: | Size: 1.2 KiB | 
| After Width: | Height: | Size: 673 B | 
| After Width: | Height: | Size: 878 B | 
| After Width: | Height: | Size: 653 B | 
| After Width: | Height: | Size: 905 B | 
| After Width: | Height: | Size: 839 B | 
| After Width: | Height: | Size: 427 B | 
| After Width: | Height: | Size: 627 B | 
| After Width: | Height: | Size: 1.2 KiB | 
| After Width: | Height: | Size: 988 B | 
| After Width: | Height: | Size: 1.2 KiB | 
| After Width: | Height: | Size: 80 KiB | 
| After Width: | Height: | Size: 1.5 KiB | 
| After Width: | Height: | Size: 1.1 KiB | 
| After Width: | Height: | Size: 1.9 KiB | 
| After Width: | Height: | Size: 1.1 KiB | 
| After Width: | Height: | Size: 2.1 KiB | 
| After Width: | Height: | Size: 4.4 KiB | 
| After Width: | Height: | Size: 589 B | 
| After Width: | Height: | Size: 3.4 KiB | 
| After Width: | Height: | Size: 1.7 KiB | 
| After Width: | Height: | Size: 2.3 KiB | 
| After Width: | Height: | Size: 967 B | 
| After Width: | Height: | Size: 1.6 KiB | 
| After Width: | Height: | Size: 3.8 KiB | 
| After Width: | Height: | Size: 5.0 KiB | 
| After Width: | Height: | Size: 85 KiB | 
| After Width: | Height: | Size: 76 KiB | 
| After Width: | Height: | Size: 76 KiB | 
| After Width: | Height: | Size: 46 KiB | 
| After Width: | Height: | Size: 79 KiB | 
| After Width: | Height: | Size: 89 KiB | 
| After Width: | Height: | Size: 591 KiB | 
| After Width: | Height: | Size: 684 KiB | 
| After Width: | Height: | Size: 244 KiB | 
| After Width: | Height: | Size: 249 KiB | 
| After Width: | Height: | Size: 250 KiB | 
| After Width: | Height: | Size: 118 KiB | 
| After Width: | Height: | Size: 124 KiB | 
| After Width: | Height: | Size: 148 KiB | 
| After Width: | Height: | Size: 245 KiB | 
| After Width: | Height: | Size: 32 KiB | 
| After Width: | Height: | Size: 130 KiB | 
| After Width: | Height: | Size: 130 KiB | 
| After Width: | Height: | Size: 128 KiB | 
| After Width: | Height: | Size: 130 KiB | 
| After Width: | Height: | Size: 132 KiB | 
| After Width: | Height: | Size: 242 KiB | 
| After Width: | Height: | Size: 245 KiB | 
| After Width: | Height: | Size: 242 KiB | 
| After Width: | Height: | Size: 244 KiB | 
| After Width: | Height: | Size: 249 KiB | 
| After Width: | Height: | Size: 243 KiB | 
| After Width: | Height: | Size: 245 KiB | 
| After Width: | Height: | Size: 83 KiB | 
| After Width: | Height: | Size: 11 KiB | 
| @ -0,0 +1,944 @@ | |||||
|  | <!DOCTYPE html> | ||||
|  | <html lang="en"> | ||||
|  | 
 | ||||
|  | <head> | ||||
|  |     <meta charset="UTF-8"> | ||||
|  |     <meta name="viewport" content="width=device-width, initial-scale=1.0"> | ||||
|  |     <title>Odoo App 3 Index</title> | ||||
|  |     <!-- Bootstrap CSS --> | ||||
|  |     <link rel="stylesheet" | ||||
|  |           href="https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/css/bootstrap.min.css" | ||||
|  |           integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" | ||||
|  |           crossorigin="anonymous"> | ||||
|  |     <link rel="stylesheet" | ||||
|  |           href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.1/css/all.min.css"> | ||||
|  |     <link rel="preconnect" href="https://fonts.googleapis.com"> | ||||
|  |     <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> | ||||
|  |     <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap" | ||||
|  |           rel="stylesheet"> | ||||
|  | </head> | ||||
|  | <body> | ||||
|  | <section> | ||||
|  |     <div class="container" | ||||
|  |          style="font-family: 'Inter', sans-serif !important;background-color: #fff !important;"> | ||||
|  |         <div class="row"> | ||||
|  |             <div class="col-sm-12 col-md-12 col-lg-12 d-flex justify-content-between flex-wrap align-items-sm-center" | ||||
|  |                  style="border-bottom:1px solid rgba(0, 0, 0, 0.22)"> | ||||
|  |                 <div class="my-3"> | ||||
|  |                     <img src="assets/misc/Cybrosys R.png" | ||||
|  |                          style="width:auto !important; height:40px !important"> | ||||
|  |                 </div> | ||||
|  |                 <div class="my-3 d-flex align-items-center"> | ||||
|  |                     <div class="text-center" | ||||
|  |                          style="background-color:#017E84 !important;font-size: 0.8rem !important; color:#fff !important; font-weight:500 !important; padding:4px !important; margin:0 3px !important; border-radius:50px !important; min-width: 120px !important;"> | ||||
|  |                         Community | ||||
|  |                     </div> | ||||
|  |                     <div class="text-center" | ||||
|  |                          style="background-color:#875A7B !important; color:#fff !important;font-size: 0.8rem !important; font-weight:500 !important; padding:4px !important; margin:0 3px !important; border-radius:50px !important;min-width: 120px !important;"> | ||||
|  |                         Enterprise | ||||
|  |                     </div> | ||||
|  |                     <div class="text-center" | ||||
|  |                          style="background-color:#7C7BAD !important; color:#fff !important;font-size: 0.8rem !important; font-weight:500 !important; padding:4px !important; margin:0 3px !important; border-radius:50px !important; min-width: 120px !important;"> | ||||
|  |                         Odoo.sh | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |             </div> | ||||
|  |         </div> | ||||
|  |         <div class="row"> | ||||
|  |             <div class="col-sm-12 col-md-12 col-lg-12 text-center d-flex align-items-center flex-column" | ||||
|  |                  style="margin: 80px 0px !important;"> | ||||
|  |                 <h1 style="font-size: 2.8rem;font-weight: 700; color: | ||||
|  |                     #1A202C;"> | ||||
|  |                      Website Portal Events</h1> | ||||
|  |                 <p class="my-3 mb-4" | ||||
|  |                    style="max-width: 80%; font-weight: 400 !important; line-height: 32px; color: #718096;"> | ||||
|  |                      This module is helps to show all events in customer portal | ||||
|  |                 </p> | ||||
|  |                 <div style="width: 80%; margin-top: 3rem;"> | ||||
|  |                     <img src="assets/screenshots/hero.gif" | ||||
|  |                          class="img-responsive" width="100%" height="auto"> | ||||
|  |                 </div> | ||||
|  |             </div> | ||||
|  |         </div> | ||||
|  |         <div class="container mt-5 mb-5"> | ||||
|  |             <div class="col-lg-12 d-flex flex-column justify-content-center align-items-center mt-4"> | ||||
|  |                 <p class="m-0" | ||||
|  |                    style="font-weight: 600; font-size: 24px; color:#714b67 !important"> | ||||
|  |                     Key Highlights | ||||
|  |                 </p> | ||||
|  |             </div> | ||||
|  |             <div class="row py-4"> | ||||
|  |                 <div class="col-md-6 col-sm-12 p-3"> | ||||
|  |                     <div class="d-flex   h-100" style="padding: 30px;border-radius: 12px; | ||||
|  |                                     background: #FFF; | ||||
|  |                                     box-shadow: 1px 2px 3px 0px rgba(0, 0, 0, 0.25); "> | ||||
|  |                         <div style="width: 36px; height: 36px; border-radius: 50%; background: #714B67; | ||||
|  |                                     display: flex; justify-content: center; align-items: center; | ||||
|  |                                     margin-right: 10px; flex-shrink: 0;"> | ||||
|  |                             <i class="fa-solid fa-star  " | ||||
|  |                                style="color: #fff;font-size:14px;"></i> | ||||
|  |                         </div> | ||||
|  |                         <div> | ||||
|  |                             <p style="color: #1A202C;font-weight: 600; | ||||
|  |                                       font-size: 1.2rem; margin-bottom: 2px;"> | ||||
|  |                                 Website Portal Events </p> | ||||
|  |                             <p class="m-0" style="color:#718096">  This module helps to show events tickets in portal. | ||||
|  |                             </p> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-6 col-sm-12 p-3"> | ||||
|  |                     <div class="d-flex   h-100" style="padding: 30px;border-radius: 12px; | ||||
|  |                                     background: #FFF; | ||||
|  |                                     box-shadow: 1px 2px 3px 0px rgba(0, 0, 0, 0.25); "> | ||||
|  |                         <div style="width: 36px; height: 36px; border-radius: 50%; background: #714B67; | ||||
|  |                                     display: flex; justify-content: center; align-items: center; | ||||
|  |                                     margin-right: 10px; flex-shrink: 0;"> | ||||
|  |                             <i class="fa-solid fa-star  " | ||||
|  |                                style="color: #fff;font-size:14px;"></i> | ||||
|  |                         </div> | ||||
|  |                         <div> | ||||
|  |                             <p style="color: #1A202C;font-weight: 600; | ||||
|  |                                       font-size: 1.2rem; margin-bottom: 2px;"> | ||||
|  |                                Sort , filter and download  option</p> | ||||
|  |                             <p class="m-0" style="color:#718096"> The sort, filter, search options are available in the portal to get the details easily. Also there is an option to download the ticket from the portal. | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  | 
 | ||||
|  |             </div> | ||||
|  |         </div> | ||||
|  |         <div class="container rounded"> | ||||
|  |             <ul class="nav nav-tabs d-flex" | ||||
|  |                 style="width: fit-content;margin: 0 auto;gap: 1rem;"> | ||||
|  |                 <li class="col text-center py-2 text-nowrap " | ||||
|  |                     style="color: #fff; background-color: #714B67;border-radius: 6px 6px 0px 0px;"> | ||||
|  |                     <a | ||||
|  |                             class="active show" data-toggle="tab" href="#tab1" | ||||
|  |                             style="color: #fff;font-weight: 500; background-color: #714B67; text-decoration: none;"> | ||||
|  |                         <i class="fa-regular fa-image  pr-2" | ||||
|  |                            style="color: #fff;"></i> | ||||
|  |                         Screenshots</a></li> | ||||
|  |                 <li class="col text-center py-2 text-nowrap " | ||||
|  |                     style="color: #fff; background-color: #714B67;border-radius: 6px 6px 0px 0px;"> | ||||
|  |                     <a | ||||
|  |                             data-toggle="tab" href="#tab2" | ||||
|  |                             style="color: #fff;font-weight: 500;  text-decoration: none;"><i | ||||
|  |                             class="fa-solid fa-star  pr-2" | ||||
|  |                             style="color: #fff;"></i>Features</a></li> | ||||
|  |                 <li class="col text-center py-2 text-nowrap " | ||||
|  |                     style="color: #fff; background-color: #714B67;border-radius: 6px 6px 0px 0px;"> | ||||
|  |                     <a | ||||
|  |                             data-toggle="tab" href="#tab3" | ||||
|  |                             style="color: #fff;font-weight: 500; text-decoration: none; background-color: #714B67;"><i | ||||
|  |                             class="fa-solid fa-book-open  pr-2" | ||||
|  |                             style="color: #fff;"></i>Released Notes</a></li> | ||||
|  |             </ul> | ||||
|  |             <div class="tab-content" | ||||
|  |                  style="background-color: rgba(121, 113, 119, 0.04);"> | ||||
|  |                 <div id="tab1" class="tab-pane fade in active show"> | ||||
|  |                     <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px; background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot1.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                                   </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important"> | ||||
|  |                                    Open My Account from website</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                     <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot2.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  | 
 | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important"> | ||||
|  |                                     We can see the Events document in portal.</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                     <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot3.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                               </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important">Show all events corresponding to the logged in user.</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                     <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot4.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important">Here we can sort th records by Date and Name</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                     <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot5.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important">The events which are sort by Date</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                     <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot6.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important">We can Filter the records by All, Today, Week, Month, Quarter, Year</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                       <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot7.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important">Filter the records by All</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                       <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot8.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important"> Filter the records by Last Month</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                       <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot9.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important"> Filter the records by Last Week</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                       <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot10.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important">Filter the records by Last Year</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                       <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot11.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important">We can Search the records by Search in All and Search in Event</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                       <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot12.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important"> Search the records based on Search in All case.</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                       <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot13.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important"> Output of Search in All case.</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                       <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot14.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important"> Search the records based on Search in Event case.</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                     <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot15.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important"> Output of Search in Event case.</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                     <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot16.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important"> An option to download ticket from the portal</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                     <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot17.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important">The downloaded ticket view</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div><div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot18.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important"> Form view of the ticket in portal</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                     <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot19.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important">We can download ticket from the form view also.</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                                    <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot20.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important">We can send messages and attachments. Which will be visible in the backend</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                                    <div class="col-lg-12 py-2" | ||||
|  |                          style="padding: 1rem 4rem !important;"> | ||||
|  |                         <div | ||||
|  |                                 style="border: 1px solid #d8d6d6; border-radius: 4px;  background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="row justify-content-center p-3 w-100 m-0"> | ||||
|  |                                 <img src="assets/screenshots/screenshot21.png" | ||||
|  |                                      class="img-responsive" width="100%" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                             <div class="px-3"> | ||||
|  |                                 <h4 class="mt-2" | ||||
|  |                                     style=" font-weight:600 !important; color:#282F33 !important; font-size:1.3rem !important"> Backend view of the events</h4> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  | 
 | ||||
|  |                 <div id="tab2" class="tab-pane fade"> | ||||
|  |                     <div class="col-mg-12" style="padding: 1rem 4rem;"> | ||||
|  |                         <ul style="list-style: none; padding: 1rem 0;font-weight: 500;"> | ||||
|  |                             <li class="py-3" | ||||
|  |                                 style="font-weight: 500;background-color: #fff; border-radius: 4px; padding: 1rem; margin-bottom: 1rem; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                                     <span style="margin-right: 12px;"><img | ||||
|  |                                             src="assets/misc/star (1) 2.svg" | ||||
|  |                                             alt="" | ||||
|  |                                             width="16px"></span>View event tickets in portal. | ||||
|  |                             </li> | ||||
|  |                             <li class="py-3" | ||||
|  |                                 style="font-weight: 500;background-color: #fff; border-radius: 4px; padding: 1rem; margin-bottom: 1rem; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                                     <span style="margin-right: 12px;"><img | ||||
|  |                                             src="assets/misc/star (1) 2.svg" | ||||
|  |                                             alt="" | ||||
|  |                                             width="16px"></span>An option to sort, filter, search the events to get it easily. | ||||
|  |                             </li> | ||||
|  |                             <li class="py-3" | ||||
|  |                                 style="font-weight: 500;background-color: #fff; border-radius: 4px; padding: 1rem; margin-bottom: 1rem; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                                     <span style="margin-right: 12px;"><img | ||||
|  |                                             src="assets/misc/star (1) 2.svg" | ||||
|  |                                             alt="" | ||||
|  |                                             width="16px"></span>An option to download the events ticket. | ||||
|  |                             </li> | ||||
|  |                         </ul> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div id="tab3" class="tab-pane fade"> | ||||
|  |                     <div class="col-mg-12 active" style="padding: 1rem 4rem;"> | ||||
|  |                         <div class="py-3" | ||||
|  |                              style="font-weight: 500;background-color: #fff; border-radius: 4px; padding: 1rem; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);"> | ||||
|  |                             <div class="d-flex mb-3" | ||||
|  |                                  style="font-size: 0.8rem; font-weight: 500;"><span>Version | ||||
|  |                                         17.0.1.0.0</span><span | ||||
|  |                                     class="px-2">|</span><span | ||||
|  |                                     style="color: #714B67;font-weight: 600;">Released on:24th January 2024</span> | ||||
|  |                             </div> | ||||
|  |                             <p class="m-0" | ||||
|  |                                style=" color:#718096!important; font-size:1rem !important;line-height: 28px;"> | ||||
|  | 
 | ||||
|  |                                 Initial Commit for  Website Portal Events.</p> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |             </div> | ||||
|  |         </div> | ||||
|  |         <div class="container mt-5"> | ||||
|  |             <div class="col-lg-12 d-flex flex-column justify-content-center align-items-center mt-5"> | ||||
|  |                 <p class="m-0" | ||||
|  |                    style="font-weight: 600; font-size: 24px; color:#000 !important"> | ||||
|  |                     Related Products</p> | ||||
|  |             </div> | ||||
|  |         </div> | ||||
|  |         <div id="myCarousel" class="carousel slide py-3" data-ride="carousel"> | ||||
|  |             <div class="carousel-inner"> | ||||
|  |                 <div class="carousel-item active"> | ||||
|  |                     <div class="row p-4"> | ||||
|  |                         <div class="col"> | ||||
|  |                             <div class="p-3"> | ||||
|  |                                 <a href="https://apps.odoo.com/apps/modules/17.0/whatsapp_redirect/" | ||||
|  |                                    style="color: #000; text-decoration: none;"> | ||||
|  |                                     <div style="border:1px solid #CBCBCB !important;border-radius: 4px;"> | ||||
|  |                                         <div style="width: 300px; "> | ||||
|  |                                             <img src="assets/modules/1.jpg" | ||||
|  |                                                  alt="" width="100%" | ||||
|  |                                                  height="auto"> | ||||
|  |                                         </div> | ||||
|  |                                         <p class="text-center pt-2 text-black font-weight-bold"> | ||||
|  |                                             Send Whatsapp Message | ||||
|  |                                         </p> | ||||
|  |                                     </div> | ||||
|  |                                 </a> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                         <div class="col"> | ||||
|  |                             <div class="p-3"> | ||||
|  |                                 <a href="https://apps.odoo.com/apps/modules/17.0/hr_payroll_community/" | ||||
|  |                                    style="color: #000; text-decoration: none;"> | ||||
|  |                                     <div style="border:1px solid #CBCBCB !important;border-radius: 4px;"> | ||||
|  |                                         <div style="width: 300px; "> | ||||
|  |                                             <img src="assets/modules/2.jpg" | ||||
|  |                                                  alt="" width="100%" | ||||
|  |                                                  height="auto"> | ||||
|  |                                         </div> | ||||
|  |                                         <p class="text-center pt-2 text-black font-weight-bold"> | ||||
|  |                                             Odoo17 Payroll | ||||
|  |                                         </p> | ||||
|  |                                     </div> | ||||
|  |                                 </a> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                         <div class="col"> | ||||
|  |                             <div class="p-3"> | ||||
|  |                                 <a href="https://apps.odoo.com/apps/modules/17.0/dashboard_pos/" | ||||
|  |                                    style="color: #000; text-decoration: none;"> | ||||
|  |                                     <div style="border:1px solid #CBCBCB !important;border-radius: 4px;"> | ||||
|  |                                         <div style="width: 300px; "> | ||||
|  |                                             <img src="assets/modules/3.png" | ||||
|  |                                                  alt="" width="100%" | ||||
|  |                                                  height="auto"> | ||||
|  |                                         </div> | ||||
|  |                                         <p class="text-center pt-2 text-black font-weight-bold"> | ||||
|  |                                             POS Dashboard | ||||
|  |                                         </p> | ||||
|  |                                     </div> | ||||
|  |                                 </a> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="carousel-item"> | ||||
|  |                     <div class="row p-4"> | ||||
|  |                         <div class="col"> | ||||
|  |                             <div class="p-3"> | ||||
|  |                                 <a href="https://apps.odoo.com/apps/modules/17.0/export_stockinfo_xls/" | ||||
|  |                                    style="color: #000; text-decoration: none;"> | ||||
|  |                                     <div style="border:1px solid #CBCBCB !important;border-radius: 4px;"> | ||||
|  |                                         <div style="width: 300px; "> | ||||
|  |                                             <img src="assets/modules/4.png" | ||||
|  |                                                  alt="" width="100%" | ||||
|  |                                                  height="auto"> | ||||
|  |                                         </div> | ||||
|  |                                         <p class="text-center pt-2 text-black font-weight-bold"> | ||||
|  |                                             Export Product Stock In Excel | ||||
|  |                                         </p> | ||||
|  |                                     </div> | ||||
|  |                                 </a> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                         <div class="col"> | ||||
|  |                             <div class="p-3"> | ||||
|  |                                 <a href="https://apps.odoo.com/apps/modules/17.0/pos_restrict/" | ||||
|  |                                    style="color: #000; text-decoration: none;"> | ||||
|  |                                     <div style="border:1px solid #CBCBCB !important;border-radius: 4px;"> | ||||
|  |                                         <div style="width: 300px;"> | ||||
|  |                                             <img src="assets/modules/5.jpg" | ||||
|  |                                                  alt="" width="100%" | ||||
|  |                                                  height="auto"> | ||||
|  |                                         </div> | ||||
|  |                                         <p class="text-center pt-2 text-black font-weight-bold"> | ||||
|  |                                             POS User Restrict | ||||
|  |                                         </p> | ||||
|  |                                     </div> | ||||
|  |                                 </a> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                         <div class="col"> | ||||
|  |                             <div class="p-3"> | ||||
|  |                                 <a href="https://apps.odoo.com/apps/modules/17.0/pos_order_line_image/" | ||||
|  |                                    style="color: #000; text-decoration: none;"> | ||||
|  |                                     <div style="border:1px solid #CBCBCB !important;border-radius: 4px;"> | ||||
|  |                                         <div style="width: 300px;"> | ||||
|  |                                             <img src="assets/modules/6.jpg" | ||||
|  |                                                  alt="" width="100%" | ||||
|  |                                                  height="auto"> | ||||
|  |                                         </div> | ||||
|  |                                         <p class="text-center pt-2 text-black font-weight-bold"> | ||||
|  |                                             POS Order Line Product Image | ||||
|  |                                         </p> | ||||
|  |                                     </div> | ||||
|  |                                 </a> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |             </div> | ||||
|  |             <a class="carousel-control-prev" href="#myCarousel" | ||||
|  |                data-slide="prev" style="width: 35px; color: #000;"> | ||||
|  |                     <span class="carousel-control-prev-icon"> | ||||
|  |                         <i class="fa fa-chevron-left" | ||||
|  |                            style="font-size: 24px;"></i> | ||||
|  |                     </span> | ||||
|  |             </a> | ||||
|  |             <a class="carousel-control-next" href="#myCarousel" | ||||
|  |                data-slide="next" style="width: 35px; color: #000;"> | ||||
|  |                     <span class="carousel-control-next-icon"> | ||||
|  |                         <i class="fa fa-chevron-right" | ||||
|  |                            style="font-size: 24px;"></i> | ||||
|  |                     </span> | ||||
|  |             </a> | ||||
|  |         </div> | ||||
|  |         <div class="container mt-5"> | ||||
|  |             <div class="col-lg-12 d-flex flex-column justify-content-center align-items-center mt-4"> | ||||
|  |                 <p class="m-0" | ||||
|  |                    style="font-weight: 600; font-size: 24px; color:#000 !important"> | ||||
|  |                     Our Services</p> | ||||
|  | 
 | ||||
|  |             </div> | ||||
|  |         </div> | ||||
|  |         <div class="container my-5"> | ||||
|  |             <div class="row py-3"> | ||||
|  |                 <div class="col-md-4 col-sm-6 px-4 py-4"> | ||||
|  |                     <div | ||||
|  |                             style="background-color: #fff; padding: 25px; text-align: center;  box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px; position: relative;border-radius: 4px;"> | ||||
|  |                         <div style="position: absolute; top: 0%; left: 50%; transform: translate(-50%, -50%);"> | ||||
|  |                             <div style="background-color:#13EA36 ; border-radius: 50%; padding: 15px;    width: 68px; | ||||
|  |                                     height: 68px; display: inline-block; box-shadow:0px 4px 4px rgba(0, 0, 0, 0.25);"> | ||||
|  |                                 <img src="assets/icons/cogs.png" | ||||
|  |                                      alt="service-icon" width="38px" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                         <p style="margin-top: 20px; font-weight: bold;">Odoo | ||||
|  |                             Customization</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-4 col-sm-6 px-4 py-4"> | ||||
|  |                     <div style="background-color: #fff; padding: 25px; text-align: center; box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px; position: relative;border-radius: 4px;"> | ||||
|  |                         <div style="position: absolute; top: 0%; left: 50%; transform: translate(-50%, -50%);"> | ||||
|  |                             <div style="background-color:#DBC711; border-radius: 50%; padding: 15px;    width: 68px; | ||||
|  |                                     height: 68px; display: inline-block; box-shadow:0px 4px 4px rgba(0, 0, 0, 0.25);"> | ||||
|  |                                 <img src="assets/icons/wrench.png" | ||||
|  |                                      alt="service-icon" width="38px" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                         <p style="margin-top: 20px; font-weight: bold;">Odoo | ||||
|  |                             Implementation</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-4 col-sm-6 px-4 py-4"> | ||||
|  |                     <div | ||||
|  |                             style="background-color: #fff; padding: 25px; text-align: center;  box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px; position: relative; border-radius: 4px;"> | ||||
|  |                         <div style="position: absolute; top: 0%; left: 50%; transform: translate(-50%, -50%);"> | ||||
|  |                             <div style="background-color:#FF6B6B ; border-radius: 50%; padding: 15px;    width: 68px; | ||||
|  |                                     height: 68px; display: inline-block; box-shadow:0px 4px 4px rgba(0, 0, 0, 0.25);"> | ||||
|  |                                 <img src="assets/icons/lifebuoy.png" | ||||
|  |                                      alt="service-icon" width="38px" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                         <p style="margin-top: 20px; font-weight: bold;">Odoo | ||||
|  |                             Support</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-4 col-sm-6 px-4 py-4"> | ||||
|  |                     <div | ||||
|  |                             style="background-color: #fff; padding: 25px; text-align: center; box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px; position: relative; border-radius: 4px;"> | ||||
|  |                         <div style="position: absolute; top: 0%; left: 50%; transform: translate(-50%, -50%);"> | ||||
|  |                             <div style="background-color:#FFA801 ; border-radius: 50%; padding: 15px;    width: 68px; | ||||
|  |                                     height: 68px; display: inline-block; box-shadow:0px 4px 4px rgba(0, 0, 0, 0.25);"> | ||||
|  |                                 <img src="assets/icons/user.png" | ||||
|  |                                      alt="service-icon" width="38px" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                         <p style="margin-top: 20px; font-weight: bold;">Hire | ||||
|  |                             Odoo Developer</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-4 col-sm-6 px-4 py-4"> | ||||
|  |                     <div | ||||
|  |                             style="background-color: #fff; padding: 25px; text-align: center;  box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px; position: relative; border-radius: 4px;"> | ||||
|  | 
 | ||||
|  |                         <div style="position: absolute; top: 0%; left: 50%; transform: translate(-50%, -50%);"> | ||||
|  |                             <div style="background-color:#54A0FF; border-radius: 50%; padding: 15px;    width: 68px; | ||||
|  |                                     height: 68px; display: inline-block; box-shadow:0px 4px 4px rgba(0, 0, 0, 0.25);"> | ||||
|  |                                 <img src="assets/icons/puzzle.png" | ||||
|  |                                      alt="service-icon" width="38px" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                         <p style="margin-top: 20px; font-weight: bold;">Odoo | ||||
|  |                             Integration</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-4 col-sm-6 px-4 py-4"> | ||||
|  |                     <div | ||||
|  |                             style="background-color: #fff; padding: 25px; text-align: center;  box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px; position: relative;border-radius: 4px;"> | ||||
|  |                         <div style="position: absolute; top: 0%; left: 50%; transform: translate(-50%, -50%);"> | ||||
|  |                             <div style="background-color:#6D7680 ; border-radius: 50%; padding: 15px;    width: 68px; | ||||
|  |                                     height: 68px; display: inline-block; box-shadow:0px 4px 4px rgba(0, 0, 0, 0.25);"> | ||||
|  |                                 <img src="assets/icons/update.png" | ||||
|  |                                      alt="service-icon" width="38px" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                         <p style="margin-top: 20px; font-weight: bold;">Odoo | ||||
|  |                             Migration</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-4 col-sm-6 px-4 py-4"> | ||||
|  |                     <div | ||||
|  |                             style="background-color: #fff; padding: 25px; text-align: center;  box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px; position: relative;border-radius: 4px;"> | ||||
|  |                         <div style="position: absolute; top: 0%; left: 50%; transform: translate(-50%, -50%);"> | ||||
|  |                             <div style="background-color:#786FA6 ; border-radius: 50%; padding: 15px;    width: 68px; | ||||
|  |                                     height: 68px; display: inline-block; box-shadow:0px 4px 4px rgba(0, 0, 0, 0.25);"> | ||||
|  |                                 <img src="assets/icons/consultation.png" | ||||
|  |                                      alt="service-icon" width="38px" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                         <p style="margin-top: 20px; font-weight: bold;">Odoo | ||||
|  |                             Consultancy</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-4 col-sm-6 px-4 py-4"> | ||||
|  |                     <div | ||||
|  |                             style="background-color: #fff; padding: 25px; text-align: center; box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;position: relative;border-radius: 4px;"> | ||||
|  |                         <div style="position: absolute; top: 0%; left: 50%; transform: translate(-50%, -50%);"> | ||||
|  |                             <div style="background-color:#F8A5C2 ; border-radius: 50%; padding: 15px;    width: 68px; | ||||
|  |                                     height: 68px; display: inline-block; box-shadow:0px 4px 4px rgba(0, 0, 0, 0.25);"> | ||||
|  |                                 <img src="assets/icons/training.png" | ||||
|  |                                      alt="service-icon" width="38px" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                         <p style="margin-top: 20px; font-weight: bold;">Odoo | ||||
|  |                             Implementation</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-4 col-sm-6 px-4 py-4"> | ||||
|  |                     <div | ||||
|  |                             style="background-color: #fff; padding: 25px; text-align: center;  box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px; position: relative;border-radius: 4px;"> | ||||
|  |                         <div style="position: absolute; top: 0%; left: 50%; transform: translate(-50%, -50%);"> | ||||
|  |                             <div style="background-color:#E6BE26; border-radius: 50%; padding: 15px;    width: 68px; | ||||
|  |                                     height: 68px; display: inline-block; box-shadow:0px 4px 4px rgba(0, 0, 0, 0.25);"> | ||||
|  |                                 <img src="assets/icons/license.png" | ||||
|  |                                      alt="service-icon" width="38px" | ||||
|  |                                      height="auto"> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                         <p style="margin-top: 20px; font-weight: bold;">Odoo | ||||
|  |                             Licensing Consultancy</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |             </div> | ||||
|  |         </div> | ||||
|  |         <div class="container mt-5"> | ||||
|  |             <div class="col-lg-12 d-flex flex-column justify-content-center align-items-center mt-4"> | ||||
|  |                 <p class="m-0" | ||||
|  |                    style="font-weight: 600; font-size: 24px; color:#000 !important"> | ||||
|  |                     Our Industries</p> | ||||
|  | 
 | ||||
|  |             </div> | ||||
|  |         </div> | ||||
|  |         <div class="container"> | ||||
|  |             <div class="row my-5 py-4"> | ||||
|  |                 <div class="col-md-3 col-sm-6 p-0"> | ||||
|  |                     <div class="d-flex flex-column h-100 " | ||||
|  |                          style="border-right: 1px solid rgb(209, 209, 209); border-bottom: 1px solid  rgb(209, 209, 209); padding: 30px; box-shadow: 6px 0 10px rgba(228, 227, 227, 0.373);"> | ||||
|  |                         <img src="assets/icons/trading-black.png" width="42px" | ||||
|  |                              height="auto" alt=""> | ||||
|  |                         <p style="color: #714B67;font-weight: 600; margin-top: 10px; | ||||
|  |                            font-size: 1.2rem; margin-bottom: 2px;">Trading</p> | ||||
|  |                         <p>Easily procure and sell your products</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-3 col-sm-6  p-0"> | ||||
|  |                     <div class="d-flex flex-column h-100" | ||||
|  |                          style="border-right: 1px solid rgb(209, 209, 209);border-bottom: 1px solid  rgb(209, 209, 209); padding: 30px;"> | ||||
|  |                         <img src="assets/icons/pos-black.png" width="42px" | ||||
|  |                              height="auto" alt=""> | ||||
|  |                         <p style="color: #714B67;font-weight: 600; margin-top: 10px; | ||||
|  |                             font-size: 1.2rem; margin-bottom: 2px;">POS</p> | ||||
|  |                         <p>Easy configuration and convivial experience</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-3 col-sm-6  p-0"> | ||||
|  |                     <div class="d-flex flex-column h-100" | ||||
|  |                          style="border-right: 1px solid  rgb(209, 209, 209);border-bottom: 1px solid   rgba(0, 0, 0, 0.2); padding: 30px; box-shadow: 0 5px 10px  rgba(228, 227, 227, 0.373)"> | ||||
|  |                         <img src="assets/icons/education-black.png" width="42px" | ||||
|  |                              height="auto" alt=""> | ||||
|  |                         <p style="color: #714B67;font-weight: 600; margin-top: 10px; | ||||
|  |                             font-size: 1.2rem; margin-bottom: 2px;"> | ||||
|  |                             Education</p> | ||||
|  |                         <p>A platform for educational management</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-3 col-sm-6  p-0"> | ||||
|  |                     <div class="d-flex flex-column h-100" | ||||
|  |                          style="border-bottom: 1px solid  rgb(209, 209, 209); padding: 30px; "> | ||||
|  |                         <img src="assets/icons/manufacturing-black.png" | ||||
|  |                              width="42px" height="auto" alt=""> | ||||
|  |                         <p style="color: #714B67;font-weight: 600; margin-top: 10px; | ||||
|  |                             font-size: 1.2rem; margin-bottom: 2px;"> | ||||
|  |                             Manufacturing</p> | ||||
|  |                         <p>Plan, track and schedule your operations</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-3 col-sm-6 p-0"> | ||||
|  |                     <div class="d-flex flex-column h-100" | ||||
|  |                          style="border-right: 1px solid  rgb(209, 209, 209); padding: 30px;"> | ||||
|  |                         <img src="assets/icons/ecom-black.png" width="42px" | ||||
|  |                              height="auto" alt=""> | ||||
|  |                         <p style="color: #714B67;font-weight: 600; margin-top: 10px; | ||||
|  |                             font-size: 1.2rem; margin-bottom: 2px;">E-commerce & | ||||
|  |                             Website</p> | ||||
|  |                         <p>Mobile friendly, awe-inspiring product pages</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-3 col-sm-6   p-0"> | ||||
|  |                     <div class="d-flex flex-column h-100" | ||||
|  |                          style="border-right: 1px solid  rgb(209, 209, 209); padding: 30px;box-shadow: 0 -5px 10px  rgba(228, 227, 227, 0.373);"> | ||||
|  |                         <img src="assets/icons/service-black.png" width="42px" | ||||
|  |                              height="auto" alt=""> | ||||
|  |                         <p style="color: #714B67;font-weight: 600; margin-top: 10px; | ||||
|  |                             font-size: 1.2rem; margin-bottom: 2px;">Service | ||||
|  |                             Management</p> | ||||
|  |                         <p>Keep track of services and invoice</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-3 col-sm-6    p-0"> | ||||
|  |                     <div class="d-flex flex-column h-100" | ||||
|  |                          style="border-right: 1px solid  rgb(209, 209, 209); padding: 30px; "> | ||||
|  |                         <img src="assets/icons/restaurant-black.png" | ||||
|  |                              width="42px" height="auto" alt=""> | ||||
|  |                         <p style="color: #714B67;font-weight: 600; margin-top: 10px; | ||||
|  |                             font-size: 1.2rem; margin-bottom: 2px;"> | ||||
|  |                             Restaurant</p> | ||||
|  |                         <p>Run your bar or restaurant methodically</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-3 col-sm-6   p-0"> | ||||
|  |                     <div class="d-flex flex-column h-100" | ||||
|  |                          style=" padding: 30px;box-shadow: -5px 0 10px  rgba(228, 227, 227, 0.373);"> | ||||
|  |                         <img src="assets/icons/hotel-black.png" width="42px" | ||||
|  |                              height="auto" alt=""> | ||||
|  |                         <p style="color: #714B67;font-weight: 600; margin-top: 10px; | ||||
|  |                             font-size: 1.2rem; margin-bottom: 2px;">Hotel | ||||
|  |                             Management</p> | ||||
|  |                         <p>An all-inclusive hotel management application</p> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |             </div> | ||||
|  |         </div> | ||||
|  |         <div class="container mt-5"> | ||||
|  |             <div class="col-lg-12 d-flex flex-column justify-content-center align-items-center mt-5"> | ||||
|  |                 <p class="m-0" | ||||
|  |                    style="font-weight: 600; font-size: 24px; color:#000 !important"> | ||||
|  |                     Support</p> | ||||
|  |             </div> | ||||
|  |         </div> | ||||
|  |         <div class="container my-5"> | ||||
|  |             <div class="row" style="background-color: #FFFAFE;"> | ||||
|  |                 <div class="col-md-6 pb-4  d-flex align-items-center justify-content-center" | ||||
|  |                      style="border-right: 1px solid #D9D9D9;"> | ||||
|  |                     <div style="padding: 30px;"> | ||||
|  |                         <div class="d-flex align-items-center"> | ||||
|  |                             <img src="assets/misc/support (1) 1.svg" alt="" | ||||
|  |                                  width="60px" style="margin-right: 12px;"> | ||||
|  |                             <div style="padding: 0px 8px;"> | ||||
|  |                                     <span | ||||
|  |                                             style="color: #714B67;font-size: 24px;font-weight: 600;padding-bottom: 1rem;">Need | ||||
|  |                                         Help?</span> | ||||
|  |                                 <p class="m-0" style="color:#718096;">Got | ||||
|  |                                     questions or need help? Get in touch.</p> | ||||
|  |                                 <div style="font-weight: 400;"><span><img | ||||
|  |                                         src="assets/misc/support-email.svg" | ||||
|  |                                         alt="" | ||||
|  |                                         width="18px" | ||||
|  |                                         style="filter: invert(1);margin-right: 0.8rem;"></span>odoo@cybrosys.com | ||||
|  |                                 </div> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |                 <div class="col-md-6 pb-4 d-flex align-items-center justify-content-center"> | ||||
|  |                     <div style="padding: 30px;"> | ||||
|  |                         <div class="d-flex align-items-center"> | ||||
|  |                             <img src="assets/misc/whatsapp 1.svg" alt="" | ||||
|  |                                  width="60px" style="margin-right: 12px;"> | ||||
|  |                             <div> | ||||
|  |                                 <span style="color: #714B67;font-size: 24px;font-weight: 600;">WhatsApp</span> | ||||
|  |                                 <p class="m-0" style="color:#718096;">Say hi to | ||||
|  |                                     us on WhatsApp!</p> | ||||
|  |                                 <div style="font-weight: 400; font-size: 16px;"><span><img | ||||
|  |                                         src="assets/misc/phone.svg" | ||||
|  |                                         alt="" width="14px" | ||||
|  |                                         style="filter: invert(1); margin-right: 0.8rem;"></span>+91 | ||||
|  |                                     99456767686 | ||||
|  |                                 </div> | ||||
|  |                             </div> | ||||
|  |                         </div> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |             </div> | ||||
|  |         </div> | ||||
|  |     </div> | ||||
|  | </section> | ||||
|  | <!-- Optional JavaScript --> | ||||
|  | <!-- jQuery first, then Popper.js, then Bootstrap JS --> | ||||
|  | <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> | ||||
|  | <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script> | ||||
|  | </body> | ||||
|  | </html> | ||||
| @ -0,0 +1,252 @@ | |||||
|  | <?xml version="1.0" encoding="UTF-8" ?> | ||||
|  | <odoo> | ||||
|  |     <!--    Template for showing all corresponding events in the portal--> | ||||
|  |     <template id="portal_my_home_menu_event" | ||||
|  |               name="Portal layout : event menu entries" | ||||
|  |               inherit_id="portal.portal_breadcrumbs" priority="30"> | ||||
|  |         <xpath expr="//ol[hasclass('o_portal_submenu')]" position="inside"> | ||||
|  |             <li t-if="page_name == 'event'" | ||||
|  |                 t-attf-class="breadcrumb-item #{'active ' if not event else ''}"> | ||||
|  |                 <a t-if="event" t-attf-href="/my/events?{{ keep_query() }}"> | ||||
|  |                     Events | ||||
|  |                 </a> | ||||
|  |                 <t t-else="">Events</t> | ||||
|  |             </li> | ||||
|  |             <li t-if="event" class="breadcrumb-item active"> | ||||
|  |                 <t t-esc="event.name" t-if="event.name != '/'"/> | ||||
|  |                 <t t-else=""> | ||||
|  |                     <em>Draft</em> | ||||
|  |                 </t> | ||||
|  |             </li> | ||||
|  |         </xpath> | ||||
|  |     </template> | ||||
|  |     <template id="portal_my_home_events" name="Show Events" | ||||
|  |               inherit_id="portal.portal_my_home" customize_show="True" | ||||
|  |               priority="30"> | ||||
|  |         <xpath expr="//div[hasclass('o_portal_docs')]" position="inside"> | ||||
|  |             <t t-call="portal.portal_docs_entry"> | ||||
|  |                   <t t-set="title">Events</t> | ||||
|  |                 <t t-set="url" t-value="'/my/events'"/> | ||||
|  |                 <t t-set="placeholder_count" t-value="'event_count'"/> | ||||
|  |             </t> | ||||
|  |         </xpath> | ||||
|  |     </template> | ||||
|  | 
 | ||||
|  |     <template id="portal_my_events" name="My Events"> | ||||
|  |         <t t-call="portal.portal_layout"> | ||||
|  |             <t t-set="breadcrumbs_searchbar" t-value="True"/> | ||||
|  |             <t t-call="portal.portal_searchbar"> | ||||
|  |                 <t t-set="title">Events</t> | ||||
|  |             </t> | ||||
|  |             <t t-if="not events"> | ||||
|  |                 <p>There are currently no events for your | ||||
|  |                     account. | ||||
|  |                 </p> | ||||
|  |             </t> | ||||
|  |             <t t-if="events" t-call="portal.portal_table"> | ||||
|  |                 <thead> | ||||
|  |                     <tr class="active"> | ||||
|  |                         <th>Attendee</th> | ||||
|  |                         <th>Registration Date</th> | ||||
|  |                         <th>Phone</th> | ||||
|  |                         <th class='d-none d-md-table-cell'>Email</th> | ||||
|  |                         <th class="text-center">Event</th> | ||||
|  |                         <th class="text-center">Status</th> | ||||
|  |                         <th class="text-center">Download Ticket</th> | ||||
|  |                     </tr> | ||||
|  |                 </thead> | ||||
|  |                 <tbody> | ||||
|  |                     <t t-foreach="events" t-as="event"> | ||||
|  |                         <tr> | ||||
|  |                             <td> | ||||
|  |                                 <a t-attf-href="/my/event_data/#{event.id}?{{ keep_query() }}"> | ||||
|  |                                     <span t-field="event.name"/> | ||||
|  |                                 </a> | ||||
|  |                             </td> | ||||
|  |                             <td> | ||||
|  |                                 <span t-field="event.create_date"/> | ||||
|  |                             </td> | ||||
|  |                             <td class='d-none d-md-table-cell'> | ||||
|  |                                 <span t-field="event.phone"/> | ||||
|  |                             </td> | ||||
|  |                             <td class='d-none d-md-table-cell'> | ||||
|  |                                 <span t-field="event.email"/> | ||||
|  |                             </td> | ||||
|  |                             <td class='d-none d-md-table-cell'> | ||||
|  |                                 <span t-field="event.event_id"/> | ||||
|  |                             </td> | ||||
|  |                             <td class='d-none d-md-table-cell text-center'> | ||||
|  |                                 <t t-set="stages" t-value="event.state"/> | ||||
|  |                                 <t t-if="stages == 'draft'"> | ||||
|  |                                     <span class="badge rounded-pill text-bg-info"> | ||||
|  |                                         <i aria-label="Unconfirmed" title="Unconfirmed" | ||||
|  |                                            role="img"/> | ||||
|  |                                         <span class="d-none d-md-inline">Unconfirmed | ||||
|  |                                         </span> | ||||
|  |                                     </span> | ||||
|  |                                 </t> | ||||
|  |                                 <t t-elif="stages == 'cancel'"> | ||||
|  |                                     <span class="badge rounded-pill text-bg-info"> | ||||
|  |                                         <i aria-label="Cancelled" title="Cancelled" | ||||
|  |                                            role="img"/> | ||||
|  |                                         <span class="d-none d-md-inline">Cancelled | ||||
|  |                                         </span> | ||||
|  |                                     </span> | ||||
|  |                                 </t> | ||||
|  |                                 <t t-elif="stages == 'open'"> | ||||
|  |                                     <span class="badge rounded-pill text-bg-info"> | ||||
|  |                                         <i aria-label="Confirmed" title="Confirmed" | ||||
|  |                                            role="img"/> | ||||
|  |                                         <span class="d-none d-md-inline">Confirmed | ||||
|  |                                         </span> | ||||
|  |                                     </span> | ||||
|  |                                 </t> | ||||
|  |                                 <t t-elif="stages == 'done'"> | ||||
|  |                                     <span class="badge rounded-pill text-bg-info"> | ||||
|  |                                         <i aria-label="Attended" title="Attended" | ||||
|  |                                            role="img"/> | ||||
|  |                                         <span class="d-none d-md-inline">Attended | ||||
|  |                                         </span> | ||||
|  |                                     </span> | ||||
|  |                                 </t> | ||||
|  |                             </td> | ||||
|  |                             <td class="text-center"> | ||||
|  |                                 <div class="btn-group  flex-grow-1 me-1 mb-1"> | ||||
|  |                                     <a class="btn btn-secondary btn-block o_download_btn" | ||||
|  |                                        t-attf-href="/download/event_data/#{event.id}?{{ keep_query() }}" | ||||
|  |                                        title="Download"> | ||||
|  |                                         <i class="fa fa-download"/> | ||||
|  |                                         Download | ||||
|  |                                     </a> | ||||
|  |                                 </div> | ||||
|  |                             </td> | ||||
|  |                         </tr> | ||||
|  |                     </t> | ||||
|  |                 </tbody> | ||||
|  |             </t> | ||||
|  |         </t> | ||||
|  |     </template> | ||||
|  | 
 | ||||
|  |     <template id="event_portal_form" name="Event Portal Template" | ||||
|  |               inherit_id="portal.portal_sidebar" primary="True"> | ||||
|  |         <xpath expr="//div[hasclass('o_portal_sidebar')]" position="inside"> | ||||
|  |             <div class="row mt16 o_portal_event_sidebar"> | ||||
|  |                 <!-- Sidebar --> | ||||
|  |                 <t t-call="portal.portal_record_sidebar"> | ||||
|  |                     <t t-set="classes" t-value="'col-lg-auto d-print-none'"/> | ||||
|  |                     <t t-set="title"> | ||||
|  |                     </t> | ||||
|  |                     <t t-set="entries"> | ||||
|  |                         <ul class="list-group list-group-flush flex-wrap flex-row flex-lg-column"> | ||||
|  |                             <li class="list-group-item flex-grow-1"> | ||||
|  |                                 <div class="o_download_pdf btn-toolbar flex-sm-nowrap"> | ||||
|  |                                     <div class="btn-group  flex-grow-1 me-1 mb-1"> | ||||
|  |                                         <a class="btn btn-secondary btn-block o_download_btn" | ||||
|  |                                            t-attf-href="/download/event_data/#{event.id}?{{ keep_query() }}" | ||||
|  |                                            title="Download"> | ||||
|  |                                             <i class="fa fa-download"/> | ||||
|  |                                             Download | ||||
|  |                                         </a> | ||||
|  |                                     </div> | ||||
|  |                                 </div> | ||||
|  |                             </li> | ||||
|  |                             <li | ||||
|  |                                     class="list-group-item flex-grow-1"> | ||||
|  |                                 <div class="small mb-1"> | ||||
|  |                                     <strong class="text-muted"> | ||||
|  |                                         Salesperson | ||||
|  |                                     </strong> | ||||
|  |                                 </div> | ||||
|  |                                 <div class="row"> | ||||
|  |                                     <div class="col flex-grow-0 pe-2"> | ||||
|  |                                         <img class="rounded-circle mt-1 o_portal_contact_img" | ||||
|  |                                              t-att-src="image_data_uri(event.partner_id.image_1920)" | ||||
|  |                                              alt="Contact"/> | ||||
|  |                                     </div> | ||||
|  |                                     <div class="col ps-0"> | ||||
|  |                                         <span t-field="event.partner_id" | ||||
|  |                                               t-options='{"widget": "contact", "fields": ["name", "phone"], "no_marker": True}'/> | ||||
|  |                                         <a href="#discussion" class="small"> | ||||
|  |                                             <i class="fa fa-fw fa-comments"/> | ||||
|  |                                             <b>Send message</b> | ||||
|  |                                         </a> | ||||
|  |                                     </div> | ||||
|  |                                 </div> | ||||
|  |                             </li> | ||||
|  |                         </ul> | ||||
|  |                     </t> | ||||
|  |                 </t> | ||||
|  |                 <!-- Page Content --> | ||||
|  |                 <div id="event_content" class="col-12 col-lg"> | ||||
|  |                     <div class="o_portal_html_view shadow p-3"> | ||||
|  |                         <table class="o_portal_event" | ||||
|  |                                style="width: 100%; table-layout: fixed; padding: 10px;"> | ||||
|  |                             <tr> | ||||
|  |                                 <td style="text-align: left;padding-bottom: 15px;"> | ||||
|  |                                     <span> | ||||
|  |                                         <b>Contact:</b> | ||||
|  |                                     </span> | ||||
|  |                                     <br/> | ||||
|  |                                     <span t-field="event.partner_id"/> | ||||
|  |                                 </td> | ||||
|  |                                 <td style="text-align: left;"> | ||||
|  |                                     <span> | ||||
|  |                                         <b>Registration Date:</b> | ||||
|  |                                     </span> | ||||
|  |                                     <span t-field="event.create_date"/> | ||||
|  |                                 </td> | ||||
|  |                             </tr> | ||||
|  |                             <tr> | ||||
|  |                                 <td style="text-align: left;padding-bottom: 15px;"> | ||||
|  |                                     <span> | ||||
|  |                                         <b>Event:</b> | ||||
|  |                                     </span> | ||||
|  |                                     <span t-field="event.event_id"/> | ||||
|  |                                 </td> | ||||
|  |                                 <td style="text-align: left"> | ||||
|  |                                     <span> | ||||
|  |                                         <b>Attendee Name:</b> | ||||
|  |                                     </span> | ||||
|  |                                     <span t-field="event.name"/> | ||||
|  |                                 </td> | ||||
|  |                             </tr> | ||||
|  |                             <tr> | ||||
|  |                                 <td style="text-align: left;padding-bottom: 15px;"> | ||||
|  |                                     <span> | ||||
|  |                                         <b>Phone:</b> | ||||
|  |                                     </span> | ||||
|  |                                     <span t-field="event.phone"/> | ||||
|  |                                 </td> | ||||
|  |                                 <td style="text-align: left"> | ||||
|  |                                     <span> | ||||
|  |                                         <b>Email:</b> | ||||
|  |                                     </span> | ||||
|  |                                     <span t-field="event.email"/> | ||||
|  |                                 </td> | ||||
|  |                             </tr> | ||||
|  |                             <tr> | ||||
|  |                                 <td style="text-align: left;padding-bottom: 15px;"> | ||||
|  |                                     <span> | ||||
|  |                                         <b>Attended Date:</b> | ||||
|  |                                     </span> | ||||
|  |                                     <span t-field="event.date_closed"/> | ||||
|  |                                 </td> | ||||
|  |                                 <td style="text-align: left"> | ||||
|  |                                     <span> | ||||
|  |                                         <b>Event ticket:</b> | ||||
|  |                                     </span> | ||||
|  |                                     <span t-field="event.event_ticket_id"/> | ||||
|  |                                 </td> | ||||
|  |                             </tr> | ||||
|  |                         </table> | ||||
|  |                     </div> | ||||
|  |                     <!-- chatter --> | ||||
|  |                     <div id="event_communication" class="mt-4"> | ||||
|  |                         <h2>History</h2> | ||||
|  |                         <t t-call="portal.message_thread"/> | ||||
|  |                     </div> | ||||
|  |                 </div> | ||||
|  |             </div> | ||||
|  |         </xpath> | ||||
|  |     </template> | ||||
|  | </odoo> | ||||