summaryrefslogtreecommitdiff
path: root/addons/website_slides_forum/views
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/views
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/website_slides_forum/views')
-rw-r--r--addons/website_slides_forum/views/assets.xml8
-rw-r--r--addons/website_slides_forum/views/forum_views.xml68
-rw-r--r--addons/website_slides_forum/views/slide_channel_views.xml22
-rw-r--r--addons/website_slides_forum/views/website_slides_forum_templates.xml81
-rw-r--r--addons/website_slides_forum/views/website_slides_menu_views.xml23
-rw-r--r--addons/website_slides_forum/views/website_slides_templates.xml28
6 files changed, 230 insertions, 0 deletions
diff --git a/addons/website_slides_forum/views/assets.xml b/addons/website_slides_forum/views/assets.xml
new file mode 100644
index 00000000..9c36aa33
--- /dev/null
+++ b/addons/website_slides_forum/views/assets.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+ <template id="assets_frontend" inherit_id="website.assets_frontend" name="Website slide forum frontend assets">
+ <xpath expr="//script[last()]" position="after">
+ <script type="text/javascript" src="/website_slides_forum/static/src/js/website_slides_forum.editor.js"></script>
+ </xpath>
+ </template>
+</odoo>
diff --git a/addons/website_slides_forum/views/forum_views.xml b/addons/website_slides_forum/views/forum_views.xml
new file mode 100644
index 00000000..482f35cf
--- /dev/null
+++ b/addons/website_slides_forum/views/forum_views.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+ <record id="forum_forum_view_form" model="ir.ui.view">
+ <field name="name">forum.forum.view.form.inherit.slides</field>
+ <field name="model">forum.forum</field>
+ <field name="inherit_id" ref="website_forum.view_forum_forum_form"/>
+ <field name="arch" type="xml">
+ <xpath expr="//group[@name='group_order']" position="after">
+ <group string="eLearning" name="group_slides">
+ <field name="slide_channel_id" readonly="True"/>
+ </group>
+ </xpath>
+ <xpath expr="//field[@name='privacy']" position="attributes">
+ <attribute name="attrs">{'invisible': [('slide_channel_id', '!=', False)], 'required': [('slide_channel_id', '!=', 'False')]}</attribute>
+ </xpath>
+ <xpath expr="//field[@name='authorized_group_id']" position="attributes">
+ <attribute name="attrs">{'invisible': ['|', ('privacy', '!=', 'private'), ('slide_channel_id', '!=', False)], 'required': [('privacy', '=', 'private')]}</attribute>
+ </xpath>
+ <xpath expr="//field[@name='privacy']" position="before">
+ <field name="visibility" attrs="{'invisible': [('slide_channel_id', '=', False)]}"/>
+ </xpath>
+ </field>
+ </record>
+
+ <record id="forum_forum_action_channel" model="ir.actions.act_window">
+ <field name="name">eLearning Forums</field>
+ <field name="res_model">forum.forum</field>
+ <field name="view_mode">tree,form</field>
+ <field name="domain">[('slide_channel_ids', '!=', 'False')]</field>
+ </record>
+
+ <record id="forum_post_action_channel" model="ir.actions.act_window">
+ <field name="name">eLearning Forum Posts</field>
+ <field name="res_model">forum.post</field>
+ <field name="view_mode">tree,form</field>
+ <field name="domain">[('forum_id.slide_channel_ids', '!=', 'False')]</field>
+ <field name="context">{'search_default_questions': 1}</field>
+ <field name="help" type="html">
+ <p class="o_view_nocontent_smiling_face">
+ Create a new forum post
+ </p>
+ </field>
+ </record>
+
+ <record id="forum_post_view_graph_slides" model="ir.ui.view">
+ <field name="name">forum.post.view.graph.slides</field>
+ <field name="model">forum.post</field>
+ <field name="arch" type="xml">
+ <graph string="eLearning Forum Posts" sample="1">
+ <field name="create_date" interval="month" type="col"/>
+ <field name="forum_id" type="row"/>
+ </graph>
+ </field>
+ </record>
+
+ <record id="forum_post_action_report" model="ir.actions.act_window">
+ <field name="name">eLearning Forum Posts</field>
+ <field name="res_model">forum.post</field>
+ <field name="view_mode">graph</field>
+ <field name="view_id" ref="forum_post_view_graph_slides"/>
+ <field name="domain">[('forum_id.slide_channel_ids', '!=', 'False')]</field>
+ <field name="help" type="html">
+ <p class="o_view_nocontent_smiling_face">
+ No data yet!
+ </p>
+ </field>
+ </record>
+</odoo>
diff --git a/addons/website_slides_forum/views/slide_channel_views.xml b/addons/website_slides_forum/views/slide_channel_views.xml
new file mode 100644
index 00000000..29a56ef1
--- /dev/null
+++ b/addons/website_slides_forum/views/slide_channel_views.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+ <record id="website_slides_forum_channel_inherit_view_form" model="ir.ui.view">
+ <field name="name">website.slides_forum.view.form.inherit.slide.channel</field>
+ <field name="model">slide.channel</field>
+ <field name="inherit_id" ref="website_slides.view_slide_channel_form"/>
+ <field name="arch" type="xml">
+ <xpath expr="//button[@name='action_view_ratings']" position="after">
+ <button name="action_redirect_to_forum"
+ type="object"
+ class="oe_stat_button"
+ attrs="{'invisible': [('forum_id', '=', False)]}"
+ icon="fa-comment">
+ <field string="Forum Posts" name="forum_total_posts" widget="statinfo"/>
+ </button>
+ </xpath>
+ <xpath expr="//field[@name='allow_comment']" position="after">
+ <field string="Forum" name="forum_id"/>
+ </xpath>
+ </field>
+ </record>
+</odoo>
diff --git a/addons/website_slides_forum/views/website_slides_forum_templates.xml b/addons/website_slides_forum/views/website_slides_forum_templates.xml
new file mode 100644
index 00000000..9589a39f
--- /dev/null
+++ b/addons/website_slides_forum/views/website_slides_forum_templates.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo><data>
+ <template id="website_slides_forum_header" inherit_id="website_forum.header">
+ <xpath expr="//div[hasclass('o_forum_nav_header_container')]" position="before">
+ <t t-if="forum.slide_channel_id">
+ <div class="o_wforum_elearning_navtabs_container">
+ <div class="container">
+ <ul class="nav nav-tabs o_wprofile_nav_tabs mt-0 flex-nowrap" role="tablist" id="profile_extra_info_tablist">
+ <li class="nav-item">
+ <a t-att-href="'/slides/%s%s' % (slug(forum.slide_channel_id), '/%s' % slug(category) if category else '')"
+ t-att-class="'nav-link o_wprofile_navlink'" style="border-left: 0px">
+ <i class="fa fa-home"/> Course</a>
+ </li>
+ <li t-if="forum.slide_channel_id.allow_comment" class="nav-item">
+ <a t-att-href="'/slides/%s?active_tab=review' % (slug(forum.slide_channel_id))"
+ t-att-class="'nav-link o_wprofile_navlink'" style="border-left: 0px">
+ Reviews<t t-if="forum.slide_channel_id.rating_count"> (<t t-esc="forum.slide_channel_id.rating_count"/>)</t>
+ </a>
+ </li>
+ <li class="nav-item">
+ <a t-att-href="'/forum/%s' % (slug(forum))" t-att-class="'nav-link active o_wprofile_navlink'" style="border-left: 0px">Forum</a>
+ </li>
+ </ul>
+ </div>
+ </div>
+ </t>
+ </xpath>
+ </template>
+
+ <template name="Split regular forums/courses" id="website_slides_forum_index" inherit_id="website_forum.forum_all" active="True" customize_show="True">
+ <xpath expr="//div[@id='o_wforum_forums_index_list']/*[@t-if='forums']" position="replace">
+ <t t-if="forums">
+ <t t-set="courses_discussions" t-value="forums.filtered(lambda f: f.slide_channel_id)"/>
+ <t t-set="regular_forums" t-value="forums - courses_discussions"/>
+
+ <div class="row mb-4">
+ <t t-if="len(regular_forums) == 1">
+ <t t-set="forum" t-value="regular_forums"/>
+ <div class="col-md-10 col-lg-8 mb-2">
+ <div class="row align-items-start">
+ <div class="col-12 col-sm-4">
+ <a t-attf-href="/forum/#{slug(forum)}">
+ <div t-attf-class="h-100 w-100 o_editable #{not forum.image_1920 and 'rounded o_wforum_forum_card_bg shadow-sm flex-shrink-0'}">
+ <div t-if="forum.image_1920 or editable" t-attf-class="h-100"
+ t-field="forum.image_1920" t-options="{'widget': 'image', 'preview_image': 'image_256', 'class': 'w-100 h-100 o_object_fit_cover rounded'}" />
+ </div>
+ </a>
+ </div>
+ <div class="col-12 col-sm-7 mt-2 mt-sm-0">
+ <a t-attf-href="/forum/#{slug(forum)}" class="text-reset" t-att-title="forum.name">
+ <h3 class="h2" t-field="forum.name"/>
+ </a>
+ <p t-attf-class="m-0 lead #{not forum.description and 'css_non_editable_mode_hidden'}"
+ placeholder="Description"
+ t-field="forum.teaser"/>
+ </div>
+ </div>
+ </div>
+ </t>
+ <t t-else="">
+ <t t-call="website_forum.forum_all_all_entries">
+ <t t-set="_forums" t-value="regular_forums"/>
+ </t>
+ </t>
+ </div>
+
+ <div class="d-flex border-bottom pb-1 pt-3 mb-3">
+ <h2 class="h4 mb-0 text-muted">Courses Discussions</h2>
+ <div class="flex-grow-1 text-right">
+ <a href="/slides" title="See all Courses">Check our Courses <i class="fa fa-chevron-right"/></a>
+ </div>
+ </div>
+ <div class="row">
+ <t t-call="website_forum.forum_all_all_entries">
+ <t t-set="_forums" t-value="courses_discussions"/>
+ </t>
+ </div>
+ </t>
+ </xpath>
+ </template>
+</data></odoo>
diff --git a/addons/website_slides_forum/views/website_slides_menu_views.xml b/addons/website_slides_forum/views/website_slides_menu_views.xml
new file mode 100644
index 00000000..e3a8b9dd
--- /dev/null
+++ b/addons/website_slides_forum/views/website_slides_menu_views.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+ <menuitem name="Forum"
+ id="website_slides_menu_forum"
+ parent="website_slides.website_slides_menu_root"
+ sequence="2"/>
+ <menuitem name="Forums"
+ id="website_slides_menu_forum_forum"
+ parent="website_slides_menu_forum"
+ sequence="1"
+ action="forum_forum_action_channel"/>
+ <menuitem name="Posts"
+ id="website_slides_menu_forum_post"
+ parent="website_slides_menu_forum"
+ sequence="2"
+ action="forum_post_action_channel"/>
+
+ <menuitem name="Forum"
+ id="website_slides_menu_report_forum"
+ parent="website_slides.website_slides_menu_report"
+ sequence="8"
+ action="forum_post_action_report"/>
+</odoo>
diff --git a/addons/website_slides_forum/views/website_slides_templates.xml b/addons/website_slides_forum/views/website_slides_templates.xml
new file mode 100644
index 00000000..09971c6f
--- /dev/null
+++ b/addons/website_slides_forum/views/website_slides_templates.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" ?>
+<odoo><data>
+ <template id='course_main' inherit_id="website_slides.course_main">
+ <!-- Channel (training) main template: add link to forum -->
+ <xpath expr="//li[hasclass('o_wslides_course_header_nav_review_training')]" position="after">
+ <li class="nav-item" t-if="channel.forum_id">
+ <a t-att-href="'/forum/%s' % (slug(channel.forum_id))"
+ t-att-class="'nav-link'" target="new">Forum</a>
+ </li>
+ </xpath>
+ <!-- Channel (documentation) main template: add link to forum -->
+ <xpath expr="//li[hasclass('o_wslides_course_header_nav_review_documentation')]" position="after">
+ <li class="nav-item" t-if="channel.forum_id">
+ <a t-att-href="'/forum/%s' % (slug(channel.forum_id))"
+ t-att-class="'nav-link'" target="new">Forum</a>
+ </li>
+ </xpath>
+ </template>
+
+ <template id="slide_fullscreen" inherit_id="website_slides.slide_fullscreen">
+ <xpath expr="//a[hasclass('o_wslides_fs_review')]" position="after">
+ <a t-if="slide.channel_id.forum_id" id="fullscreen_forum_button" class="d-flex align-items-center px-3" t-attf-href="/forum/#{slug(slide.channel_id.forum_id)}" target="new">
+ <i class="fa fa-comments"/><span class="ml-1 d-none d-md-inline-block">New Post</span>
+ </a>
+ </xpath>
+ </template>
+
+</data></odoo>