diff --git a/addons/website_slides/models/slide_channel_tag.py b/addons/website_slides/models/slide_channel_tag.py index 67c62cf742d..04cea1657f9 100644 --- a/addons/website_slides/models/slide_channel_tag.py +++ b/addons/website_slides/models/slide_channel_tag.py @@ -1,6 +1,8 @@ # -*- coding: utf-8 -*- # Part of Odoo. See LICENSE file for full copyright and licensing details. +from random import randint + from odoo import fields, models @@ -30,4 +32,6 @@ class SlideChannelTag(models.Model): 'Group sequence', related='group_id.sequence', index=True, readonly=True, store=True) channel_ids = fields.Many2many('slide.channel', 'slide_channel_tag_rel', 'tag_id', 'channel_id', string='Channels') - color = fields.Integer(string='Color Index', help="Color to apply to this tag (including in website).") + color = fields.Integer( + string='Color Index', default=lambda self: randint(1, 11), + help="Tag color used in both backend and website. No color means no display in kanban or front-end, to distinguish internal tags from public categorization tags") diff --git a/addons/website_slides/security/website_slides_security.xml b/addons/website_slides/security/website_slides_security.xml index ab800865dd0..f8689d090ce 100644 --- a/addons/website_slides/security/website_slides_security.xml +++ b/addons/website_slides/security/website_slides_security.xml @@ -75,6 +75,17 @@ + + Channel Tag: public/portal: color = published + + ['&', ('color', '!=', False), ('color', '!=', 0)] + + + + + + + Slide: always visible (sub rules exist) diff --git a/addons/website_slides/static/src/js/slides_course_tag_add.js b/addons/website_slides/static/src/js/slides_course_tag_add.js index b62e9cf0809..9fbbbec502e 100644 --- a/addons/website_slides/static/src/js/slides_course_tag_add.js +++ b/addons/website_slides/static/src/js/slides_course_tag_add.js @@ -67,7 +67,7 @@ var TagCourseDialog = Dialog.extend({ route: '/slides/channel/tag/search_read', params: { fields: ['name'], - domain: [['id','not in',self.tagIds]], + domain: [['id', 'not in', self.tagIds], ['color', '!=', 0]], } }); }) diff --git a/addons/website_slides/views/slide_channel_tag_views.xml b/addons/website_slides/views/slide_channel_tag_views.xml index b4c4e9ab12e..7edb459c7c3 100644 --- a/addons/website_slides/views/slide_channel_tag_views.xml +++ b/addons/website_slides/views/slide_channel_tag_views.xml @@ -63,24 +63,24 @@
+
+
-
-
+ + + + + + + + + + +
@@ -95,6 +95,7 @@ +
diff --git a/addons/website_slides/views/slide_channel_views.xml b/addons/website_slides/views/slide_channel_views.xml index 04a6363fc94..371b3f5602c 100644 --- a/addons/website_slides/views/slide_channel_views.xml +++ b/addons/website_slides/views/slide_channel_views.xml @@ -245,7 +245,7 @@
- +
diff --git a/addons/website_slides/views/website_slides_templates_course.xml b/addons/website_slides/views/website_slides_templates_course.xml index 3be29e4f2aa..c65fd96fc70 100644 --- a/addons/website_slides/views/website_slides_templates_course.xml +++ b/addons/website_slides/views/website_slides_templates_course.xml @@ -168,6 +168,7 @@
+
@@ -198,8 +199,8 @@
- - + + @@ -699,8 +700,8 @@
- - + + diff --git a/addons/website_slides/views/website_slides_templates_homepage.xml b/addons/website_slides/views/website_slides_templates_homepage.xml index 48360fae5a6..132602a2dfd 100644 --- a/addons/website_slides/views/website_slides_templates_homepage.xml +++ b/addons/website_slides/views/website_slides_templates_homepage.xml @@ -215,7 +215,8 @@