5 <!-- Audittrail Rule form -->
7 <record model="ir.ui.view" id="view_audittrail_rule_form">
8 <field name="name">audittrail.rule.form</field>
9 <field name="model">audittrail.rule</field>
10 <field name="type">form</field>
11 <field name="arch" type="xml">
12 <form string="AuditTrail Rule">
13 <field name="name" select="1" required="1"/>
14 <field name="object_id" select="1"/>
15 <field name="log_read"/>
16 <field name="log_write"/>
17 <field name="log_unlink"/>
18 <field name="log_create"/>
19 <field name="log_action"/>
20 <field name="log_workflow"/>
21 <separator string="Users (if User is not added then it will applicable for all users)" colspan="4" />
22 <field name="user_id" select="1" colspan="4" nolabel="1" />
23 <field name="action_id" colspan="4" readonly="1" groups="base.group_extended"/>
24 <field name="state" select="1" readonly="1" />
25 <group colspan="2" col="2">
26 <button string="_Subscribe" name="subscribe" icon="gtk-ok"
27 type="object" states="draft" />
28 <button string="UnSubscribe" name="unsubscribe" icon="gtk-cancel"
29 type="object" states="subscribed" />
35 <record model="ir.ui.view" id="view_audittrail_rule_tree">
36 <field name="name">audittrail.rule.tree</field>
37 <field name="model">audittrail.rule</field>
38 <field name="type">tree</field>
39 <field name="arch" type="xml">
40 <tree colors="blue:state == 'draft';black:state == 'subscribed'" string="AuditTrail Rules">
42 <field name="object_id"/>
43 <field name="log_read" />
44 <field name="log_write" />
45 <field name="log_unlink" />
46 <field name="log_create" />
47 <field name="log_action"/>
48 <field name="log_workflow"/>
49 <field name="state" />
53 <record id="view_audittrail_rule_search" model="ir.ui.view">
54 <field name="name">audittrail.rule.search</field>
55 <field name="model">audittrail.rule</field>
56 <field name="type">search</field>
57 <field name="arch" type="xml">
58 <search string="Search Audittrail Rule">
60 <filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Rule"/>
61 <filter icon="terp-camera_test" string="Subscribed" domain="[('state','=','subscribed')]" help="Subscribed Rule"/>
62 <separator orientation="vertical"/>
64 <field name="object_id"/>
67 <group expand="0" string="Group By..." groups="base.group_extended">
68 <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
73 <!-- Action for audittrail rule -->
75 <record model="ir.actions.act_window" id="action_audittrail_rule_tree">
76 <field name="name">Audit Rules</field>
77 <field name="res_model">audittrail.rule</field>
78 <field name="type">ir.actions.act_window</field>
79 <field name="view_type">form</field>
80 <field name="view_mode">tree,form</field>
81 <field name="context">{'search_default_draft': 1}</field>
82 <field name="search_view_id" ref="view_audittrail_rule_search"/>
85 <menuitem id="menu_action_audittrail_rule_tree"
86 action="action_audittrail_rule_tree" parent="base.menu_audit" />
87 <!-- AuditTrail Log form -->
89 <record model="ir.ui.view" id="view_audittrail_log_form">
90 <field name="name">audittrail.log.form</field>
91 <field name="model">audittrail.log</field>
92 <field name="type">form</field>
93 <field name="arch" type="xml">
94 <form string="AuditTrail Logs">
95 <field name="timestamp" select="1" required="1" readonly="1"/>
96 <field name="user_id" select="1" readonly="1"/>
97 <field name="method" select="1" readonly="1"/>
98 <field name="name" readonly="1" select="1"/>
99 <field name="res_id" readonly="1"/>
100 <field name="object_id" select="1" readonly="1"/>
101 <field name="line_ids" colspan="4" mode="tree,form"
102 widget="one2many_list" readonly="1" nolabel="1">
103 <form string="Log Lines">
104 <field name="field_id" colspan="4"
107 <field name="field_description" colspan="4"
110 <separator string="Old Value : "
112 <separator string="New Value : "
115 <field name="old_value" nolabel="1"
116 colspan="2" readonly="1" />
117 <field name="new_value" nolabel="1"
118 colspan="2" readonly="1" />
120 <separator string="Old Value Text : "
122 <separator string="New Value Text: "
125 <field name="old_value_text" nolabel="1"
126 colspan="2" readonly="1" />
127 <field name="new_value_text" nolabel="1"
128 colspan="2" readonly="1" />
130 <tree string="Log Lines">
131 <field name="field_description" />
132 <field name="old_value_text" />
133 <field name="new_value_text" />
140 <record model="ir.ui.view" id="view_audittrail_log_tree">
141 <field name="name">audittrail.log.tree</field>
142 <field name="model">audittrail.log</field>
143 <field name="type">tree</field>
144 <field name="arch" type="xml">
145 <tree string="AuditTrail Logs">
146 <field name="timestamp" />
147 <field name="name" />
148 <field name="object_id" />
149 <field name="method" />
150 <field name="user_id" />
155 <record id="view_audittrail_log_search" model="ir.ui.view">
156 <field name="name">audittrail.log.search</field>
157 <field name="model">audittrail.log</field>
158 <field name="type">search</field>
159 <field name="arch" type="xml">
160 <search string="Search Audittrail Log">
163 <field name="object_id"/>
164 <field name="user_id" widget="selection"/>
167 <group expand="0" string="Group By..." groups="base.group_extended">
168 <filter string="User" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
169 <separator orientation="vertical"/>
170 <filter string="Object" icon="terp-stock_align_left_24" domain="[]" context="{'group_by':'object_id'}"/>
171 <filter string="Date" icon="terp-go-month" domain="[]" context="{'group_by':'timestamp'}"/>
176 <!-- Action for Audittrail Log -->
178 <record model="ir.actions.act_window" id="action_audittrail_log_tree">
179 <field name="name">Audit Logs</field>
180 <field name="res_model">audittrail.log</field>
181 <field name="view_type">form</field>
182 <field name="search_view_id" ref="view_audittrail_log_search"/>
184 <menuitem name="Audit Logs" id="menu_action_audittrail_log_tree"
185 action="action_audittrail_log_tree" parent="base.menu_audit" />