website_slides/views/slide_slide_views.xml

419 lines
26 KiB
XML
Raw Permalink Normal View History

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<!-- SLIDE.TAG -->
<record id="view_slide_tag_form" model="ir.ui.view">
<field name="name">slide.tag.form</field>
<field name="model">slide.tag</field>
<field name="arch" type="xml">
<form string="Tag">
<sheet>
<group>
<field name="name"/>
</group>
</sheet>
</form>
</field>
</record>
<record id="view_slide_tag_tree" model="ir.ui.view">
<field name="name">slide.tag.tree</field>
<field name="model">slide.tag</field>
<field name="arch" type="xml">
<tree string="Tags" editable="bottom">
<field name="name" placeholder="e.g 'HowTo'"/>
</tree>
</field>
</record>
<record id="action_slide_tag" model="ir.actions.act_window">
<field name="name">Content Tags</field>
<field name="res_model">slide.tag</field>
<field name="view_mode">tree,form</field>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Create a Content Tag
</p>
<p>
Use Content Tags to classify your Content.
</p>
</field>
</record>
<!-- SLIDE.SLIDE -->
<record id="view_slide_slide_form" model="ir.ui.view">
<field name="name">slide.slide.form</field>
<field name="model">slide.slide</field>
<field name="arch" type="xml">
<form string="Lesson">
<sheet>
<field name="channel_type" invisible="1" readonly="1"/>
<field name="channel_allow_comment" invisible="1" readonly="1"/>
<div class="oe_button_box" name="button_box">
<button name="%(slide_slide_partner_action_from_slide)d"
class="oe_stat_button" type="action" icon="fa-graduation-cap"
invisible="slide_views == 0">
<field name="slide_views" widget="statinfo" string="Attendees"/>
</button>
<button disabled="1" icon="fa-thumbs-up" class="oe_stat_button"
invisible="channel_type == 'training' or likes == 0">
<field class="ms-1" name="likes" widget="statinfo" string="Likes"/>
</button>
<button disabled="1" icon="fa-thumbs-down" class="oe_stat_button"
invisible="channel_type == 'training' or dislikes == 0">
<field class="ms-1" name="dislikes" widget="statinfo" string="Dislikes"/>
</button>
<button disabled="1" icon="fa-comments" class="oe_stat_button"
invisible="not channel_allow_comment or comments_count == 0">
<field class="ms-1" name="comments_count" widget="statinfo" string="Comments"/>
</button>
<button name="action_view_embeds" class="oe_stat_button" type="object" icon="fa-share-alt"
invisible="embed_count == 0">
<div class="o_stat_info">
<span class="o_stat_value"><field name="embed_count"/></span>
<span class="o_stat_text">Embed Views</span>
</div>
</button>
<field name="is_published" widget="website_redirect_button"
invisible="is_category or not channel_id"/>
</div>
<widget name="web_ribbon" title="Archived" bg_color="text-bg-danger" invisible="active"/>
<field name="image_1920" widget="image" class="oe_avatar" options='{"preview_image": "image_256"}'
invisible="is_category"/>
<div class="oe_title pe-xl-0">
<div>
<label for="name" string="Content Title"/>
</div>
<h1>
<field name="name" default_focus="1" placeholder="e.g. Setting up your computer" class="me-0"/>
<field name="is_category" invisible="1"/>
</h1>
<field name="tag_ids" invisible="is_category" widget="many2many_tags" placeholder="Tags..."/>
</div>
<notebook invisible="is_category">
<page name="document" string="Document">
<group>
<group name="lesson_details">
<field name="active" invisible="1"/>
<field name="channel_id"/>
<field name="slide_category" string="Content Type"/>
<field name="slide_type" invisible="1"/>
<div class="text-muted" colspan="2" invisible="slide_category != 'quiz'">
You can add questions to this quiz in the 'Quiz' tab.
</div>
<label for="source_type" string="" invisible="slide_category not in ['infographic', 'document']"/>
<field name="source_type" widget="radio" nolabel="1" invisible="slide_category not in ['infographic', 'document']" />
<field name="video_url" invisible="slide_category != 'video'" readonly="slide_category != 'video'" required="slide_category == 'video'"
placeholder='e.g "www.youtube.com/watch?v=ebBez6bcSEc"'
widget="url"/>
<field name="document_google_url" invisible="source_type != 'external' or slide_category != 'document'" readonly="source_type != 'external' or slide_category != 'document'"
placeholder='e.g "https://drive.google.com/file/..."'
widget="url"/>
<field name="image_google_url" invisible="source_type != 'external' or slide_category != 'infographic'" readonly="source_type != 'external' or slide_category != 'infographic'"
placeholder='e.g "https://drive.google.com/file/..."'
widget="url"/>
<field name="document_binary_content" string="" options="{'accepted_file_extensions': '.pdf'}"
invisible="source_type == 'external' or slide_category != 'document'"
readonly="source_type == 'external' or slide_category != 'document'"/>
<field name="image_binary_content" string="" options="{'accepted_file_extensions': 'image/*'}"
invisible="source_type == 'external' or slide_category != 'infographic'"
readonly="source_type == 'external' or slide_category != 'infographic'"/>
</group>
<group name="related_details">
<field name="user_id" string="Responsible" domain="[('share', '=', False)]" widget="many2one_avatar"/>
<label for="completion_time"/>
<div>
<field name="completion_time" widget="float_time" class="oe_inline"/>
<span> hours</span>
</div>
<field name="slide_resource_downloadable" invisible="slide_category != 'document' or source_type != 'local_file'"/>
<field name="date_published" string="Published Date" invisible="not date_published" groups="base.group_no_one"/>
<field name="is_preview"/>
<field name="public_views"/>
<field name="total_views"/>
</group>
</group>
</page>
<page name="description" string="Description">
<field name="description" placeholder="e.g. In this video, we'll give you the keys on how Odoo can help you to grow your business. At the end, we'll propose you a quiz to test your knowledge."/>
</page>
<page string="Additional Resources" name="external_links" >
<group>
<field name="slide_resource_ids" widget="one2many" nolabel="1" colspan="2">
<tree editable="top">
<field name="resource_type"/>
<field name="name" required="1"/>
<field name="file_name" column_invisible="True"/>
<field name="data" readonly="resource_type == 'url'" filename="file_name"/>
<field name="link" string="Link"
readonly="resource_type == 'file'"
required="resource_type == 'url'"/>
</tree>
</field>
</group>
</page>
<page name="quiz" string="Quiz">
<group name="quiz_details">
<group name="quiz_rewards" string="Points Rewards">
<group>
<field string="First Try" name="quiz_first_attempt_reward"/>
<field string="Second Try" name="quiz_second_attempt_reward"/>
<field string="Third Try" name="quiz_third_attempt_reward"/>
<field string="Fourth Try &amp; More" name="quiz_fourth_attempt_reward"/>
</group>
</group>
<group name="questions" string="Questions">
<field name="question_ids" nolabel="1" colspan="2">
<tree>
<field name="sequence" widget="handle"/>
<field name="question" string="Question"/>
<field name="answer_ids" string="Answers" widget="many2many_tags"/>
</tree>
</field>
</group>
</group>
</page>
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids"/>
<field name="message_ids"/>
</div>
</form>
</field>
</record>
<record id="view_slide_slide_form_wo_channel_id" model="ir.ui.view">
<field name="name">slide.slide.form.wo.channel_id</field>
<field name="model">slide.slide</field>
<field name="inherit_id" ref="view_slide_slide_form"/>
<field name="priority" eval="50"/>
<field name="mode">primary</field>
<field name="arch" type="xml">
<field name="channel_id" position="attributes">
<attribute name="invisible">1</attribute>
<attribute name="required">0</attribute>
</field>
</field>
</record>
<record id="slide_slide_view_kanban" model="ir.ui.view">
<field name="name">slide.slide.view.kanban</field>
<field name="model">slide.slide</field>
<field name="arch" type="xml">
<kanban edit="false" group_create="0"
records_draggable="0"
class="o_slide_kanban"
sample="1">
<field name="id"/>
<field name="channel_id"/>
<field name="slide_category"/>
<field name="user_id"/>
<field name="image_128"/>
<templates>
<t t-name="kanban-box">
<div class="oe_kanban_global_click o_kanban_record_has_image_fill">
<t t-set="placeholder" t-value="'/website_slides/static/src/img/channel-training-default.jpg'"/>
<t t-if="record.image_128.raw_value" t-set="image" t-value="kanban_image('slide.slide', 'image_128', record.id.raw_value, placeholder)"/>
<t t-else="" t-set="image" t-value="'/website_slides/static/src/img/channel-training-default.jpg'"/>
<div class="o_kanban_image_fill_left d-none d-md-block">
<img t-attf-src="#{image}" t-att-alt="record.id.value"/>
<img class="o_kanban_image_inner_pic"
t-att-alt="record.channel_id.value"
t-att-src="kanban_image('slide.channel', 'image_128', record.channel_id.raw_value)"/>
</div>
<div class="o_kanban_image d-md-none">
<img class="rounded-circle" t-attf-src="#{image}" t-att-alt="record.id.value"/>
<img class="o_kanban_image_inner_pic"
t-att-alt="record.channel_id.value"
t-att-src="kanban_image('slide.channel', 'image_128', record.channel_id.raw_value)"/>
</div>
<div class="oe_kanban_details d-flex flex-column">
<strong class="o_kanban_record_title oe_partner_heading"><field name="name"/></strong>
<div class="text-mutex"><field name="channel_id"/></div>
<div class="o_kanban_tags_section mb-2">
<span class="oe_kanban_list_many2many">
<field name="tag_ids" widget="many2many_tags"/>
</span>
</div>
<div class="o_kanban_record_bottom mt-auto d-flex justify-content-between align-items-end">
<span>
<t t-if="record.slide_category.raw_value == 'infographic'">
<i class="fa fa-file-image-o me-2" aria-label="Infographic" role="img" title="Infographic"/>
</t>
<t t-elif="record.slide_category.raw_value == 'article'">
<i class="fa fa-file-code-o me-2" aria-label="article" role="img" title="Article"/>
</t>
<t t-elif="record.slide_category.raw_value == 'video'">
<i class="fa fa-file-video-o me-2" aria-label="Video" role="img" title="Video"/>
</t>
<t t-elif="record.slide_category.raw_value == 'quiz'">
<i class="fa fa-flag me-2" aria-label="Quiz" role="img" title="Quiz"/>
</t>
<t t-else=""><i class="fa fa-file-pdf-o me-2" aria-label="Document" role="img" title="Document"/></t>
<field name="slide_category"/>
</span>
<span>
<i class="fa fa-clock-o me-2" aria-label="Duration" role="img" title="Duration"/><field name="completion_time" widget="float_time"/>
</span>
<span>
<i class="fa fa-question me-2" aria-label="Number of Questions" role="img" title="Number of Questions"/><field name="questions_count"/>
</span>
<span>
<i class="fa fa-eye me-2" aria-label="Views" role="img" title="Views"/><field name="total_views"/>
</span>
<field name="user_id" widget="many2one_avatar_user"/>
</div>
</div>
</div>
</t>
</templates>
</kanban>
</field>
</record>
<record id="view_slide_slide_tree" model="ir.ui.view">
<field name="name">slide.slide.tree</field>
<field name="model">slide.slide</field>
<field name="arch" type="xml">
<tree string="Contents" sample="1" multi_edit="1">
<field name="name" readonly="1"/>
<field name="channel_id" readonly="1"/>
<field name="category_id" readonly="1" optional="hide"/>
<field name="user_id" widget="many2one_avatar_user"/>
<field name="is_published"/>
<field name="date_published" readonly="1"/>
<field name="completion_time" sum="Total" readonly="1" widget="float_time"/>
</tree>
</field>
</record>
<record id="slide_slide_view_tree_report" model="ir.ui.view">
<field name="name">slide.slide.view.tree.report</field>
<field name="model">slide.slide</field>
<field name="priority" eval="20"/>
<field name="arch" type="xml">
<tree string="Contents" sample="1">
<field name="name"/>
<field name="user_id" widget="many2one_avatar_user"/>
<field name="channel_id"/>
<field name="category_id" optional="hide"/>
<field name="date_published"/>
<field name="total_views" string="# Views" sum="Total Views"/>
<field name="questions_count" string="# Questions" sum="Total Questions"/>
<field name="completion_time" sum="Total Duration" widget="float_time"/>
</tree>
</field>
</record>
<record id="view_slide_slide_search" model="ir.ui.view">
<field name="name">slide.slide.filter</field>
<field name="model">slide.slide</field>
<field name="arch" type="xml">
<search string="Search Contents">
<field name="name"/>
<field name="channel_id"/>
<field name="user_id"/>
<field name="tag_ids"/>
<filter name="filter_user_id_uid" string="My Content" domain="[('user_id', '=', uid)]"/>
<separator/>
<filter name="published" string="Published" domain="[('is_published', '=', True)]"/>
<filter name="not_published" string="Waiting for validation" domain="[('is_published', '=', False)]"/>
<separator/>
<filter string="Archived" name="inactive" domain="[('active','=',False)]"/>
<group expand="0" string="Group By">
<filter string="Course" name="groupby_channel" domain="[]" context="{'group_by': 'channel_id'}"/>
<filter string="Category" name="groupby_category" domain="[]" context="{'group_by': 'category_id'}"/>
<filter string="Type" name="groupby_type" domain="[]" context="{'group_by': 'slide_category'}"/>
</group>
</search>
</field>
</record>
<record id="slide_slide_view_graph" model="ir.ui.view">
<field name="name">slide.slide.view.graph</field>
<field name="model">slide.slide</field>
<field name="arch" type="xml">
<graph string="Graph of Contents" stacked="0" sample="1">
<field name="channel_id"/>
<field name="slide_category"/>
<field name="total_views" type="measure"/>
<field name="quiz_first_attempt_reward" invisible="1"/>
<field name="quiz_second_attempt_reward" invisible="1"/>
<field name="quiz_third_attempt_reward" invisible="1"/>
<field name="quiz_fourth_attempt_reward" invisible="1"/>
<field name="sequence" invisible="1"/>
</graph>
</field>
</record>
<record id="slide_slide_view_pivot" model="ir.ui.view">
<field name="name">slide.slide.view.pivot</field>
<field name="model">slide.slide</field>
<field name="arch" type="xml">
<pivot sample="1">
<field name="channel_id" type="row"/>
<field name="total_views" type="measure"/>
</pivot>
</field>
</record>
<record id="slide_slide_action" model="ir.actions.act_window">
<field name="name">Contents</field>
<field name="res_model">slide.slide</field>
<field name="view_mode">kanban,tree,form</field>
<field name="context">{'search_default_own_publications':True}</field>
<field name="domain">[('is_category', '=', False)]</field>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Add Content
</p>
<p>
Content are the lessons that compose a course
<br/>and can be of different types (presentations, documents, videos, ...).
</p>
</field>
</record>
<record id="slide_slide_action_report" model="ir.actions.act_window">
<field name="name">Contents</field>
<field name="res_model">slide.slide</field>
<field name="view_mode">graph,tree,form,pivot</field>
<field name="context">{"search_default_published": 1}</field>
<field name="domain">[('is_category', '=', False)]</field>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
No data yet!
</p><p>
Create new content for your eLearning
</p>
</field>
</record>
<record id="slide_slide_action_report_view_graph" model="ir.actions.act_window.view">
<field name="sequence" eval="0"/>
<field name="view_mode">graph</field>
<field name="view_id" ref="slide_slide_view_graph"/>
<field name="act_window_id" ref="slide_slide_action_report"/>
</record>
<record id="slide_slide_action_report_view_tree" model="ir.actions.act_window.view">
<field name="sequence" eval="1"/>
<field name="view_mode">tree</field>
<field name="view_id" ref="slide_slide_view_tree_report"/>
<field name="act_window_id" ref="slide_slide_action_report"/>
</record>
<record id="slide_slide_action_report_view_form" model="ir.actions.act_window.view">
<field name="sequence" eval="2"/>
<field name="view_mode">form</field>
<field name="view_id" ref="view_slide_slide_form"/>
<field name="act_window_id" ref="slide_slide_action_report"/>
</record>
<record id="slide_slide_action_report_view_pivot" model="ir.actions.act_window.view">
<field name="sequence" eval="3"/>
<field name="view_mode">pivot</field>
<field name="view_id" ref="slide_slide_view_pivot"/>
<field name="act_window_id" ref="slide_slide_action_report"/>
</record>
</data>
</odoo>