summaryrefslogtreecommitdiff
path: root/addons/website_slides_forum/controllers/main.py
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/website_slides_forum/controllers/main.py
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/website_slides_forum/controllers/main.py')
-rw-r--r--addons/website_slides_forum/controllers/main.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/addons/website_slides_forum/controllers/main.py b/addons/website_slides_forum/controllers/main.py
new file mode 100644
index 00000000..2331f11c
--- /dev/null
+++ b/addons/website_slides_forum/controllers/main.py
@@ -0,0 +1,33 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo.http import request
+from odoo.addons.website_slides.controllers.main import WebsiteSlides
+
+
+class WebsiteSlidesForum(WebsiteSlides):
+
+ def _slide_channel_prepare_values(self, **kwargs):
+ channel = super(WebsiteSlidesForum, self)._slide_channel_prepare_values(**kwargs)
+ if bool(kwargs.get('link_forum')):
+ forum = request.env['forum.forum'].create({
+ 'name': kwargs.get('name')
+ })
+ channel['forum_id'] = forum.id
+ return channel
+
+ # Profile
+ # ---------------------------------------------------
+
+ def _prepare_user_profile_parameters(self, **post):
+ post = super(WebsiteSlidesForum, self)._prepare_user_profile_parameters(**post)
+ if post.get('channel_id'):
+ channel = request.env['slide.channel'].browse(int(post.get('channel_id')))
+ if channel.forum_id:
+ post.update({
+ 'forum_id': channel.forum_id.id,
+ 'no_forum': False
+ })
+ else:
+ post.update({'no_forum': True})
+ return post