<?xml version="1.0" encoding="utf-8" ?> <!-- Copyright 2016 Antonio Espinosa - <antonio.espinosa@tecnativa.com> License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). --> <odoo> <record model="ir.ui.view" id="view_mail_tracking_email_form"> <field name="name">mail.tracking.email.form</field> <field name="model">mail.tracking.email</field> <field name="arch" type="xml"> <form string="MailTracking event" create="false" edit="false" delete="false" > <header> <field name="state" widget="statusbar" /> </header> <sheet> <group> <field name="name" /> </group> <group> <group> <field name="mail_message_id" /> <field name="mail_id" /> <field name="partner_id" /> <field name="recipient" /> <field name="sender" /> </group> <group> <field name="timestamp" /> <field name="time" /> <field name="date" /> </group> </group> <group attrs="{'invisible': [('bounce_type', '=', False)]}"> <field name="bounce_type" /> <field name="bounce_description" /> </group> <group attrs="{'invisible': [('error_type', '=', False)]}"> <field name="error_smtp_server" attrs="{'invisible': [('error_smtp_server', '=', False)]}" /> <field name="error_type" /> <field name="error_description" /> </group> <label for="tracking_event_ids" /> <div> <field name="tracking_event_ids"> <tree decoration-muted="event_type == 'deferral'" decoration-danger="event_type in ('hard_bounce', 'soft_bounce', 'spam', 'reject')" decoration-info="event_type in ('unsub', 'click', 'open')" > <field name="time" /> <field name="event_type" /> <field name="ip" /> <field name="url" /> <field name="user_country_id" string="Country" /> <field name="os_family" string="OS" /> <field name="ua_family" string="User agent" /> </tree> </field> </div> </sheet> <footer /> </form> </field> </record> <record model="ir.ui.view" id="view_mail_tracking_email_tree"> <field name="name">mail.tracking.email.tree</field> <field name="model">mail.tracking.email</field> <field name="arch" type="xml"> <tree create="false" edit="false" delete="false" decoration-muted="state in (False, 'deferred')" decoration-success="state == 'opened'" decoration-danger="state in ('rejected', 'spam', 'bounced', 'soft-bounced', 'error')" decoration-info="state == 'unsub'" > <field name="time" /> <field name="date" invisible="1" /> <field name="name" /> <field name="sender" string="Sender" /> <field name="recipient" string="Recipient" /> <field name="state" /> </tree> </field> </record> <record model="ir.ui.view" id="view_mail_tracking_email_search"> <field name="name">mail.tracking.email.search</field> <field name="model">mail.tracking.email</field> <field name="arch" type="xml"> <search string="MailTracking email search"> <field name="display_name" string="Email" filter_domain="['|', ('sender', 'ilike', self), ('recipient', 'ilike', self)]" /> <field name="sender" string="Sender" filter_domain="[('sender', 'ilike', self)]" /> <field name="recipient_address" string="Recipient Address" filter_domain="[('recipient_address', '=', self)]" /> <field name="name" string="Subject" /> <field name="time" string="Time" /> <field name="date" string="Date" /> <filter name="sent" string="Sent" domain="[('state', 'in', ('sent',))]" /> <filter name="deferred" string="Deferred" domain="[('state', '=', 'deferred')]" /> <filter name="delivered" string="Delivered" domain="[('state', 'in', ('delivered', 'opened'))]" /> <filter name="unsub" string="Unsubscribed" domain="[('state', '=', 'unsub')]" /> <filter name="exception" string="Failed" domain="[('state', 'in', ('error', 'rejected', 'spam', 'bounced', 'soft-bounced'))]" /> <separator /> <group expand="0" string="Group By"> <filter string="State" name="group_by_state" domain="[]" context="{'group_by': 'state'}" /> <filter string="Subject" name="group_by_subject" domain="[]" context="{'group_by': 'name'}" /> <filter string="Sender" name="group_by_sender" domain="[]" context="{'group_by': 'sender'}" /> <filter string="Month" name="group_by_month" domain="[]" context="{'group_by': 'date'}" /> </group> </search> </field> </record> <record id="action_view_mail_tracking_email" model="ir.actions.act_window"> <field name="name">MailTracking emails</field> <field name="res_model">mail.tracking.email</field> <field name="view_mode">tree,form</field> <field name="search_view_id" ref="view_mail_tracking_email_search" /> </record> <!-- Add menu entry in Settings/Email --> <menuitem name="Tracking emails" id="menu_mail_tracking_email" parent="base.menu_email" action="action_view_mail_tracking_email" /> </odoo>