diff --git a/addons/website_event_online/__init__.py b/addons/website_event_online/__init__.py
index 5b9ba23c97a..5a31f331a2a 100644
--- a/addons/website_event_online/__init__.py
+++ b/addons/website_event_online/__init__.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
-from . import models
from . import controllers
+from . import models
from . import tests
diff --git a/addons/website_event_online/__manifest__.py b/addons/website_event_online/__manifest__.py
index e5f8ce7c482..115bf41a466 100644
--- a/addons/website_event_online/__manifest__.py
+++ b/addons/website_event_online/__manifest__.py
@@ -15,8 +15,11 @@
],
'data': [
'security/ir.model.access.csv',
+ 'views/assets.xml',
'views/event_event_views.xml',
'views/event_registration_views.xml',
+ 'views/event_tag_views.xml',
+ 'views/event_type_views.xml',
'views/website_visitor_views.xml',
'views/event_templates_event.xml',
],
@@ -24,6 +27,7 @@
'data/website_visitor_demo.xml',
'data/event_demo.xml',
'data/event_registration_demo.xml',
+ 'data/event_tag_demo.xml',
],
'application': False,
'installable': True,
diff --git a/addons/website_event_online/data/event_tag_demo.xml b/addons/website_event_online/data/event_tag_demo.xml
new file mode 100644
index 00000000000..391eb867aa6
--- /dev/null
+++ b/addons/website_event_online/data/event_tag_demo.xml
@@ -0,0 +1,32 @@
+
+
+
+ 1
+
+
+ 2
+
+
+ 3
+
+
+ 4
+
+
+
+ 5
+
+
+ 6
+
+
+ 7
+
+
+
+ 8
+
+
+ 9
+
+
diff --git a/addons/website_event_online/models/__init__.py b/addons/website_event_online/models/__init__.py
index fa937cadda2..e6dbdc4c033 100644
--- a/addons/website_event_online/models/__init__.py
+++ b/addons/website_event_online/models/__init__.py
@@ -3,4 +3,5 @@
from . import event_event
from . import event_registration
+from . import event_tag
from . import website_visitor
diff --git a/addons/website_event_online/models/event_tag.py b/addons/website_event_online/models/event_tag.py
new file mode 100644
index 00000000000..4ac8cf42272
--- /dev/null
+++ b/addons/website_event_online/models/event_tag.py
@@ -0,0 +1,10 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo import models, fields
+
+
+class EventTag(models.Model):
+ _inherit = ['event.tag']
+
+ color = fields.Integer(string='Color Index')
diff --git a/addons/website_event_online/static/src/scss/website_event_templates.scss b/addons/website_event_online/static/src/scss/website_event_templates.scss
new file mode 100644
index 00000000000..55e714cce79
--- /dev/null
+++ b/addons/website_event_online/static/src/scss/website_event_templates.scss
@@ -0,0 +1,51 @@
+// Color tags according to assigned background color.
+
+.o_wevent_index, .o_wevent_event {
+
+ // Simple colored tags according to assigned background color
+ @for $size from 1 through length($o-colors) {
+ .o_tag_color_#{$size - 1} {
+ @if $size == 1 {
+ & {
+ background-color: white;
+ color: nth($o-colors, $size);
+ box-shadow: inset 0 0 0 2px nth($o-colors, $size);
+ }
+ &::after {
+ background-color: nth($o-colors, $size);
+ }
+ } @else {
+ &, &::after {
+ background-color: nth($o-colors, $size);
+ color: $white;
+ }
+ }
+ }
+ }
+
+ // Complex colored tags according to assigned background color with hover effect
+ @for $size from 1 through length($o-colors) {
+ .o_tag_color_hovered_#{$size - 1} {
+ $background-color: white;
+ // no color selected
+ @if $size == 1 {
+ & {
+ color: black;
+ background-color: $background-color;
+ box-shadow: inset 0 0 0 1px nth($o-colors, $size);
+ }
+ } @else {
+ $background-color: nth($o-colors, $size);
+ & {
+ color: white;
+ background-color: $background-color;
+ }
+ }
+ @at-root a#{&} {
+ &:hover {
+ background-color: darken($background-color, 20%);
+ }
+ }
+ }
+ }
+}
diff --git a/addons/website_event_online/views/assets.xml b/addons/website_event_online/views/assets.xml
new file mode 100644
index 00000000000..d0f9161a9c6
--- /dev/null
+++ b/addons/website_event_online/views/assets.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/website_event_online/views/event_event_views.xml b/addons/website_event_online/views/event_event_views.xml
index 6d45652b57c..4ed754e39b0 100644
--- a/addons/website_event_online/views/event_event_views.xml
+++ b/addons/website_event_online/views/event_event_views.xml
@@ -14,6 +14,9 @@
+
+ {'color_field': 'color', 'no_quick_create': True}
+
diff --git a/addons/website_event_online/views/event_tag_views.xml b/addons/website_event_online/views/event_tag_views.xml
new file mode 100644
index 00000000000..ebaffa264c0
--- /dev/null
+++ b/addons/website_event_online/views/event_tag_views.xml
@@ -0,0 +1,48 @@
+
+
+
+ event.tag.category.view.form.inherit.online
+ event.tag.category
+
+
+
+
+
+
+
+
+
+ event.tag.category.view.tree.inherit.online
+ event.tag.category
+
+
+
+ many2many_tags
+ {'color_field': 'color'}
+
+
+
+
+
+ event.tag.view.list.inherit.online
+ event.tag
+
+
+
+
+
+
+
+
+
+ event.tag.view.form.inherit.online
+ event.tag
+
+
+
+
+
+
+
+
+
diff --git a/addons/website_event_online/views/event_templates_event.xml b/addons/website_event_online/views/event_templates_event.xml
index b7c71afd11e..00665d0fbdd 100644
--- a/addons/website_event_online/views/event_templates_event.xml
+++ b/addons/website_event_online/views/event_templates_event.xml
@@ -12,4 +12,12 @@
+
+
+
+
+
+
+
+
diff --git a/addons/website_event_online/views/event_type_views.xml b/addons/website_event_online/views/event_type_views.xml
new file mode 100644
index 00000000000..b87ae0c0107
--- /dev/null
+++ b/addons/website_event_online/views/event_type_views.xml
@@ -0,0 +1,15 @@
+
+
+
+
+ event.type.view.form.inherit.online
+ event.type
+
+
+
+ {'color_field': 'color', 'no_quick_create': True}
+
+
+
+
+