Files
odoo_source/addons/mail/views/mail_alias_views.xml
T
Thibault Delavallée 529121247f [IMP] mail: improve mail alias views
Purpose is to improve understanding and modification of alias records in
backend by improving form view.

In this commit we add missing fields in tree view, notably about alias owner.
Add buttons allowing to open the updated thread or the alias owner directly
from tree view to ease daily management of aliases. Cleanup filters.

Prepares Task-36879 (Mail: Support MultiCompany Aliases)

Part-of: odoo/odoo#105992
2022-11-18 13:59:53 +01:00

97 lines
4.9 KiB
XML

<?xml version="1.0"?>
<odoo>
<data>
<!-- Alias Form View -->
<record model="ir.ui.view" id="view_mail_alias_form">
<field name="name">mail.alias.form</field>
<field name="model">mail.alias</field>
<field name="arch" type="xml">
<form string="Alias">
<sheet>
<div class="oe_button_box" name="button_box">
<button name="open_document" string="Open Document"
type="object" class="oe_link" icon="fa-sitemap"
attrs="{'invisible': ['|', ('alias_model_id', '=', False), ('alias_force_thread_id', '=', 0)]}"/>
<button name="open_parent_document" string="Open Parent Document"
type="object" class="oe_link" icon="fa-sitemap"
attrs="{'invisible': ['|', ('alias_parent_model_id', '=', False), ('alias_parent_thread_id', '=', 0)]}"/>
</div>
<h2><field name="alias_name" class="oe_inline"/>@<field name="alias_domain" class="oe_inline"/></h2>
<group>
<field name="alias_model_id"/>
<field name="alias_force_thread_id"/>
<field name="alias_defaults"/>
<field name="alias_contact"/>
<field name="alias_user_id"/>
<field name="alias_parent_model_id"/>
<field name="alias_parent_thread_id"/>
</group>
<label for="alias_bounced_content" attrs="{'invisible':[('alias_contact', '=', 'everyone')]}"/>
<field name="alias_bounced_content" attrs="{'invisible':[('alias_contact', '=', 'everyone')]}"/>
</sheet>
</form>
</field>
</record>
<!-- Alias List View -->
<record model="ir.ui.view" id="view_mail_alias_tree">
<field name="name">mail.alias.tree</field>
<field name="model">mail.alias</field>
<field name="arch" type="xml">
<tree string="Alias">
<field name="alias_name"/>
<field name="alias_model_id"/>
<field name="alias_force_thread_id" optional="hide"/>
<field name="alias_user_id"/>
<field name="alias_parent_model_id"/>
<field name="alias_parent_thread_id" optional="hide"/>
<field name="alias_defaults" optional="hide"/>
<field name="alias_contact"/>
<button name="open_document" type="object"
string="Open Document" icon="fa-sitemap"
attrs="{'invisible': ['|', ('alias_model_id', '=', False), ('alias_force_thread_id', '=', 0)]}"/>
<button name="open_parent_document" type="object"
string="Open Owner" icon="fa-sitemap"
attrs="{'invisible': ['|', ('alias_parent_model_id', '=', False), ('alias_parent_thread_id', '=', 0)]}"/>
</tree>
</field>
</record>
<!-- Alias Search View -->
<record model="ir.ui.view" id="view_mail_alias_search">
<field name="name">mail.alias.search</field>
<field name="model">mail.alias</field>
<field name="arch" type="xml">
<search string="Search Alias">
<field name="alias_name"/>
<field name="alias_model_id"/>
<field name="alias_force_thread_id"/>
<field name="alias_parent_model_id"/>
<field name="alias_parent_thread_id"/>
<separator/>
<filter string="Active" name="active" domain="[('alias_name', '!=', False)]"/>
<group expand="0" string="Group By">
<filter string="Owner" name="groupby_user_id"
context="{'group_by': 'alias_user_id'}"/>
<filter string="Document Model" name="groupby_alias_model_id"
context="{'group_by': 'alias_model_id'}"/>
<filter string="Container Model" name="groupby_alias_model_id"
context="{'group_by': 'alias_parent_model_id'}"/>
</group>
</search>
</field>
</record>
<record id="action_view_mail_alias" model="ir.actions.act_window">
<field name="name">Aliases</field>
<field name="res_model">mail.alias</field>
<field name="context">{
'search_default_active': True,
}
</field>
</record>
</data>
</odoo>