odoo/addons/rating_project/views/project_view.xml

111 lines
6.1 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<record id="rating_rating_action_task" model="ir.actions.act_window">
<field name="name">Customer Ratings</field>
<field name="res_model">rating.rating</field>
<field name="view_mode">kanban,pivot,graph</field>
<field name="domain">[('res_model', '=', 'project.task'), ('res_id', '=', active_id), ('consumed', '=', True)]</field>
<field name="help" type="html">
<p>
Customer ratings on tasks. If you have no rating, change your project Settings to activate it.
</p>
</field>
</record>
<record id="project_task_view_form_inherit_rating" model="ir.ui.view">
<field name="name">project.task.view.form.inherit.rating</field>
<field name="model">project.task</field>
<field name="inherit_id" ref="project.view_task_form2"/>
<field name="arch" type="xml">
<xpath expr="//div[@name='button_box']" position="inside">
<button name="%(rating_rating_action_task)d" type="action"
attrs="{'invisible': [('rating_count', '=', 0)]}"
class="oe_stat_button" icon="fa-smile-o">
<field name="rating_count" string="Rating" widget="statinfo"/>
</button>
</xpath>
</field>
</record>
<record id="project_task_view_kanban_inherit_rating" model="ir.ui.view">
<field name="name">project.task.view.kanban.inherit.rating</field>
<field name="model">project.task</field>
<field name="inherit_id" ref="project.view_task_kanban"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='color']" position="after">
<field name="rating_last_value"/>
<field name="rating_ids"/>
</xpath>
<xpath expr="//div[@class='oe_kanban_bottom_left']" position="inside">
<b t-if="record.rating_ids.raw_value.length">
<span style="font-weight:bold;" class="fa fa-fw mt4 fa-smile-o text-success" t-if="record.rating_last_value.value == 10" title="Latest Rating: Satisfied"/>
<span style="font-weight:bold;" class="fa fa-fw mt4 fa-meh-o text-warning" t-if="record.rating_last_value.value == 5" title="Latest Rating: Not Satisfied"/>
<span style="font-weight:bold;" class="fa fa-fw mt4 fa-frown-o text-danger" t-if="record.rating_last_value.value == 1" title="Latest Rating: Higly Dissatisfied"/>
</b>
</xpath>
</field>
</record>
<!-- project.project form view with rating satisfaction state button -->
<record id="view_project_project_rating_form" model="ir.ui.view">
<field name="name">project.project.rating.form.view</field>
<field name="model">project.project</field>
<field name="inherit_id" ref="project.edit_project"/>
<field name="priority" eval="20"/>
<field name="arch" type="xml">
<div name="button_box" position="inside">
<button name="action_view_task_rating"
attrs="{'invisible': ['|', '|', ('rating_status', '=', 'no'), ('use_tasks','=', False), ('percentage_satisfaction_task', '=', -1)]}"
class="oe_stat_button oe_percent"
type="object"
icon="fa-smile-o">
<field string="% On tasks" name="percentage_satisfaction_task" widget="statinfo"/>
</button>
</div>
<xpath expr="//field[@name='partner_id']" position="after">
<label for="rating_status"/>
<div>
<field name="rating_status" widget="radio"/>
<p attrs="{'invisible': [('rating_status','not in',('periodic','stage'))]}" class="text-muted oe_edit_only">
Edit project's stages and set an email template
on the stages on which you want to activate the rating.
</p>
</div>
<field name="rating_status_period" class="oe_inline"
attrs="{'required': [('rating_status','=','periodic')], 'invisible': [('rating_status','!=','periodic')]}"/>
</xpath>
</field>
</record>
<!-- inherit project.task.type form view to add email template for task -->
<record id="view_project_task_type_rating_form" model="ir.ui.view">
<field name="name">project.task.type.form.view.inherit</field>
<field name="model">project.task.type</field>
<field name="inherit_id" ref="project.task_type_edit"/>
<field name="priority" eval="20"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='mail_template_id']" position="after">
<field name="rating_template_id"/>
<field name="auto_validation_kanban_state" attrs="{'invisible': [('rating_template_id','=', False)]}"/>
</xpath>
</field>
</record>
<record id="rating_rating_action_project" model="ir.actions.act_window">
<field name="name">Customer Ratings</field>
<field name="res_model">rating.rating</field>
<field name="view_mode">kanban,pivot,graph</field>
<field name="domain">[('res_model','in',['project.task', 'project.issue']), ('consumed', '=', True)]</field>
<field name="help" type="html">
<p>
Customer ratings on tasks/issues. If you have no rating, change your project Settings to activate it.
</p>
</field>
</record>
<menuitem id="rating_rating_menu_project" action="rating_rating_action_project" parent="project.menu_project_report" sequence="40"/>
</data>
</odoo>