212 lines
8.3 KiB
XML
212 lines
8.3 KiB
XML
<?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_event_form">
|
|
<field name="name">mail.tracking.event.form</field>
|
|
<field name="model">mail.tracking.event</field>
|
|
<field name="arch" type="xml">
|
|
<form
|
|
string="MailTracking event"
|
|
create="false"
|
|
edit="false"
|
|
delete="false"
|
|
>
|
|
<sheet>
|
|
<group>
|
|
<group>
|
|
<field name="tracking_email_id" />
|
|
<field name="recipient" />
|
|
<field name="event_type" />
|
|
</group>
|
|
<group>
|
|
<field name="timestamp" />
|
|
<field name="time" />
|
|
<field name="date" />
|
|
</group>
|
|
</group>
|
|
<group attrs="{'invisible': [('event_type', 'not in', ('sent',))]}">
|
|
<field name="smtp_server" />
|
|
</group>
|
|
<group
|
|
attrs="{'invisible': [('event_type', 'not in', ('open', 'click'))]}"
|
|
>
|
|
<field name="url" />
|
|
</group>
|
|
<group
|
|
attrs="{'invisible': [('event_type', 'not in', ('open', 'click'))]}"
|
|
>
|
|
<group>
|
|
<field name="mobile" />
|
|
<field name="ip" />
|
|
<field name="user_country_id" />
|
|
</group>
|
|
<group>
|
|
<field name="user_agent" />
|
|
<field name="ua_family" />
|
|
<field name="ua_type" />
|
|
<field name="os_family" />
|
|
</group>
|
|
</group>
|
|
<group
|
|
string="Error"
|
|
attrs="{'invisible': [('error_type', '=', False)]}"
|
|
>
|
|
<field name="error_type" />
|
|
<field name="error_description" />
|
|
<field name="error_details" />
|
|
</group>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<record model="ir.ui.view" id="view_mail_tracking_event_tree">
|
|
<field name="name">mail.tracking.event.tree</field>
|
|
<field name="model">mail.tracking.event</field>
|
|
<field name="arch" type="xml">
|
|
<tree
|
|
create="false"
|
|
edit="false"
|
|
delete="false"
|
|
decoration-muted="event_type == 'deferred'"
|
|
decoration-danger="event_type in ('hard_bounce', 'soft_bounce', 'spam', 'reject')"
|
|
decoration-info="event_type in ('unsub', 'click', 'open')"
|
|
>
|
|
<field name="time" />
|
|
<field name="tracking_email_id" />
|
|
<field name="recipient" />
|
|
<field name="event_type" />
|
|
<field
|
|
name="error_details"
|
|
invisible="not context.get('event_error_filter', False)"
|
|
/>
|
|
<field name="date" invisible="1" />
|
|
<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>
|
|
</record>
|
|
|
|
<record model="ir.ui.view" id="view_mail_tracking_event_search">
|
|
<field name="name">mail.tracking.event.search</field>
|
|
<field name="model">mail.tracking.event</field>
|
|
<field name="arch" type="xml">
|
|
<search string="MailTracking event search">
|
|
<field
|
|
name="tracking_email_id"
|
|
string="Message"
|
|
filter_domain="[('tracking_email_id', 'ilike', self)]"
|
|
/>
|
|
<field name="recipient" string="Recipient" />
|
|
<field name="time" string="Time" />
|
|
<field name="date" string="Date" />
|
|
<field name="ip" string="IP" />
|
|
<field name="url" string="URL" />
|
|
<filter
|
|
name="sent"
|
|
string="Sent"
|
|
domain="[('event_type', '=', 'sent')]"
|
|
/>
|
|
<filter
|
|
name="delivered"
|
|
string="Delivered"
|
|
domain="[('event_type', '=', 'delivered')]"
|
|
/>
|
|
<filter
|
|
name="click"
|
|
string="Click"
|
|
domain="[('event_type', '=', 'click')]"
|
|
/>
|
|
<filter
|
|
name="open"
|
|
string="Open"
|
|
domain="[('event_type', '=', 'open')]"
|
|
/>
|
|
<filter
|
|
name="unsub"
|
|
string="Unsubscribe"
|
|
domain="[('event_type', '=', 'unsub')]"
|
|
/>
|
|
<filter
|
|
name="bounce"
|
|
string="Bounce"
|
|
domain="[('event_type', 'in', ('hard_bounce', 'soft_bounce'))]"
|
|
/>
|
|
<filter
|
|
name="exception"
|
|
string="Failed"
|
|
domain="[('event_type', 'in', ('reject', 'spam'))]"
|
|
context="{'event_error_filter': True}"
|
|
/>
|
|
<separator />
|
|
<group expand="0" string="Group By">
|
|
<filter
|
|
string="Type"
|
|
name="group_by_type"
|
|
domain="[]"
|
|
context="{'group_by': 'event_type'}"
|
|
/>
|
|
<filter
|
|
string="Message"
|
|
name="group_by_message"
|
|
domain="[]"
|
|
context="{'group_by': 'tracking_email_id'}"
|
|
/>
|
|
<filter
|
|
string="OS"
|
|
name="group_by_os"
|
|
domain="[('os_family', '!=', False)]"
|
|
context="{'group_by': 'os_family'}"
|
|
/>
|
|
<filter
|
|
string="User agent"
|
|
name="group_by_user_agent"
|
|
domain="[('ua_family', '!=', False)]"
|
|
context="{'group_by': 'ua_family'}"
|
|
/>
|
|
<filter
|
|
string="User agent type"
|
|
name="group_by_user_agent_type"
|
|
domain="[('ua_type', '!=', False)]"
|
|
context="{'group_by': 'ua_type'}"
|
|
/>
|
|
<filter
|
|
string="Country"
|
|
name="group_by_country"
|
|
domain="[('user_country_id', '!=', False)]"
|
|
context="{'group_by': 'user_country_id'}"
|
|
/>
|
|
<filter
|
|
string="Month"
|
|
name="group_by_date"
|
|
domain="[]"
|
|
context="{'group_by': 'date'}"
|
|
/>
|
|
</group>
|
|
</search>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="action_view_mail_tracking_event" model="ir.actions.act_window">
|
|
<field name="name">MailTracking events</field>
|
|
<field name="res_model">mail.tracking.event</field>
|
|
<field name="view_mode">tree,form</field>
|
|
<field name="search_view_id" ref="view_mail_tracking_event_search" />
|
|
</record>
|
|
|
|
<!-- Add menu entry in Settings/Email -->
|
|
<menuitem
|
|
name="Tracking events"
|
|
id="menu_mail_tracking_event"
|
|
parent="base.menu_email"
|
|
action="action_view_mail_tracking_event"
|
|
/>
|
|
|
|
|
|
</odoo>
|