[MERGE] Merged with main addons.
[odoo/odoo.git] / addons / mail / mail_message_view.xml
1 <?xml version="1.0"?>
2 <openerp>
3     <data>
4         <!-- mail.message tree: short view !-->
5         <record model="ir.ui.view" id="view_message_tree_short">
6             <field name="name">mail.message.tree.short</field>
7             <field name="model">mail.message</field>
8             <field name="type">tree</field>
9             <field name="priority">20</field>
10             <field name="arch" type="xml">
11                 <tree string="Messages">
12                     <field name="date"/>
13                     <field name="subject"/>
14                     <field name="user_id"/>
15                     <field name="model"/>
16                     <field name="res_id"/>
17                 </tree>
18             </field>
19         </record>
20
21         <!-- mail.message form: short view !-->
22         <record model="ir.ui.view" id="view_message_form_short">
23             <field name="name">mail.message.form.short</field>
24             <field name="model">mail.message</field>
25             <field name="type">form</field>
26             <field name="priority">20</field>
27             <field name="arch" type="xml">
28                 <form string="Message" version="7.0">
29                     <sheet>
30                         <group>
31                             <group>
32                                 <field name="subject"/>
33                                 <field name="date"/>
34                                 <field name="type"/>
35                                 <field name="body_text"/>
36                             </group>
37                             <group>
38                                 <field name="user_id" string="User"/>
39                                 <field name="model"/>
40                                 <field name="res_id"/>
41                                 <field name="parent_id"/>
42                             </group>
43                         </group>
44                     </sheet>
45                 </form>
46             </field>
47         </record>
48
49         <!-- mail.message search: short view !-->
50         <record model="ir.ui.view" id="view_message_search_short">
51             <field name="name">mail.message.search.short</field>
52             <field name="model">mail.message</field>
53             <field name="type">search</field>
54             <field name="priority">20</field>
55             <field name="arch" type="xml">
56                 <search string="Messages Search">
57                     <field name="user_id"/>
58                     <field name="model"/>
59                     <field name="date"/>
60                 </search>
61             </field>
62         </record>
63
64         <!-- mail.message search: wall view !-->
65         <record model="ir.ui.view" id="view_message_search_wall">
66             <field name="name">mail.message.search.wall</field>
67             <field name="model">mail.message</field>
68             <field name="type">search</field>
69             <field name="priority">25</field>
70             <field name="arch" type="xml">
71                 <search string="Messages Search">
72                     <field name="user_id"/>
73                     <field name="body"/>
74                 </search>
75             </field>
76         </record>
77
78         <record model="ir.ui.view" id="view_email_message_form">
79             <field name="name">mail.message.form</field>
80             <field name="model">mail.message</field>
81             <field name="type">form</field>
82             <field name="arch" type="xml">
83                 <form string="Email message" version="7.0">
84                     <sheet>
85                         <label for="subject" class="oe_edit_only"/>
86                         <h1><field name="subject"/></h1>
87                         <label for="user_id"/>
88                         <h2><field name="user_id" class="oe_inline" string="User"/> on <field name="date" class="oe_inline"/></h2>
89                         <group col="4">
90                             <field name="partner_id" readonly="1" attrs="{'invisible':[('partner_id', '=', False)]}"/>
91                             <field name="type"/>
92                         </group>
93                         <notebook colspan="4">
94                             <page string="Details">
95                                 <group string="Recipients">
96                                     <field name="email_from"/>
97                                     <field name="email_to"/>
98                                     <field name="email_cc" attrs="{'invisible':[('email_cc', '=', False)]}"/>
99                                     <field name="email_bcc" attrs="{'invisible':[('email_bcc', '=', False)]}"/>
100                                     <field name="reply_to" attrs="{'invisible':[('reply_to', '=', False)]}"/>
101                                 </group>
102                                 <group col="4" string="Message Details">
103                                     <field name="model"/>
104                                     <button name="open_document" string="Open" type="object" icon="gtk-jump-to" colspan="2"/>
105                                     <field name="res_id"/>
106                                     <field name="message_id" colspan="4" attrs="{'invisible':[('message_id', '=', False)]}"/>
107                                     <field name="references" colspan="4" widget="char" size="512" attrs="{'invisible':[('references', '=', False)]}"/>
108                                 </group>
109                                 <notebook>
110                                     <page string="Body (Rich)" attrs="{'invisible':[('subtype','=','plain')]}">
111                                         <field name="body_html" widget="text_html"/>
112                                     </page>
113                                     <page string="Body (Plain)">
114                                         <field name="body_text" widget="text"/>
115                                     </page>
116                                 </notebook>
117                                 <group col="5">
118                                     <field name="state" colspan="2"/>
119                                     <field name="subtype" attrs="{'invisible':[('subtype', '=', False)]}"/>
120                                     <button name="%(action_email_compose_message_wizard)d" string="Reply" type="action" icon="terp-mail-replied"
121                                         context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" states='received,sent,exception,cancel'/>
122                                 </group>
123                             </page>
124                             <page string="Attachments">
125                                 <field name="attachment_ids"/>
126                             </page>
127                             <page string="Advanced" groups="base.group_no_one">
128                                 <group col="2" colspan="4">
129                                     <field name="mail_server_id" attrs="{'invisible':[('mail_server_id', '=', False)]}"/>
130                                     <field name="auto_delete"/>
131                                     <field name="headers" colspan="4" attrs="{'invisible':[('headers', '=', False)]}"/>
132                                     <field name="original" colspan="4" attrs="{'invisible':[('original', '=', False)]}"/>
133                                 </group>
134                             </page>
135                         </notebook>
136                     </sheet>
137                 </form>
138             </field>
139         </record>
140
141         <record model="ir.ui.view" id="view_email_message_tree">
142             <field name="name">mail.message.tree</field>
143             <field name="model">mail.message</field>
144             <field name="type">tree</field>
145             <field name="arch" type="xml">
146                 <tree string="Emails" colors="grey:state in ('sent', 'cancel');blue:state=='outgoing';red:state=='exception';black:state=='received'">
147                     <field name="date"/>
148                     <field name="subject"/>
149                     <field name="email_from"/>
150                     <field name="user_id" string="User"/>
151                     <field name="message_id" invisible="1"/>
152                     <field name="partner_id" invisible="1"/>
153                     <field name="model" invisible="1"/>
154                     <field name="res_id" invisible="1"/>
155                     <field name="state"/>
156                     <button name="send" string="Send Now" type="object" icon="gtk-media-play" states='outgoing'/>
157                     <button name="mark_outgoing" string="Retry" type="object" icon="gtk-redo" states='exception,cancel'/>
158                     <button name="cancel" string="Cancel" type="object" icon="terp-gtk-stop" states='outgoing'/>
159                     <button name="open_document" string="Open Related Document" type="object" icon="gtk-jump-to"/>
160                     <button name="open_attachment" string="Open Attachments" type="object" icon="gtk-jump-to"/>
161                 </tree>
162             </field>
163         </record>
164
165         <record model="ir.ui.view" id="view_email_message_search">
166             <field name="name">mail.message.search</field>
167             <field name="model">mail.message</field>
168             <field name="type">search</field>
169             <field name="arch" type="xml">
170                 <search string="Email Search">
171                     <filter icon="terp-camera_test" name="received" string="Received" domain="[('state','=','received')]"/>
172                     <filter icon="terp-call-start" name="outgoing" string="Outgoing" domain="[('state','=','outgoing')]"/>
173                     <filter icon="terp-check" name="sent" string="Sent" domain="[('state','=','sent')]"/>
174                     <separator orientation="vertical"/>
175                     <filter icon="terp-gtk-stop" name="exception" string="Failed" domain="[('state','=','exception')]"/>
176                     <separator orientation="vertical"/>
177                     <filter icon="terp-camera_test" name="type_email" string="Email" domain="[('type','=','email')]"/>
178                     <filter icon="terp-camera_test" name="type_comment" string="Comment" domain="[('type','=','comment')]"/>
179                     <filter icon="terp-camera_test" name="type_notification" string="Notification" domain="[('type','=','notification')]"/>
180                     <separator orientation="vertical"/>
181                     <field name="email_from"/>
182                     <field name="email_to"/>
183                     <field name="subject"/>
184                     <field name="date"/>
185                     <newline/>
186                     <group expand="0" string="Extended Filters...">
187                         <field name="user_id" string="User"/>
188                         <field name="partner_id" string="Partner Name"/>
189                         <field name="model"/>
190                         <field name="res_id"/>
191                     </group>
192                     <newline/>
193                     <group expand="0" string="Group By...">
194                         <filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
195                         <filter string="Partner" icon="terp-partner" domain="[]" context="{'group_by':'partner_id'}"/>
196                         <filter string="User" name="User" icon="terp-personal" context="{'group_by':'user_id'}"/>
197                         <separator orientation="vertical"/>
198                         <filter string="Thread" icon="terp-mail-" domain="[]" context="{'group_by':'message_id'}"/>
199                         <separator orientation="vertical"/>
200                         <filter string="Month" help="Creation Month" icon="terp-go-month" domain="[]" context="{'group_by':'date'}"/>
201                     </group>
202                 </search>
203             </field>
204         </record>
205
206         <record id="action_view_all_messages_short" model="ir.actions.act_window">
207             <field name="name">Messages</field>
208             <field name="res_model">mail.message</field>
209             <field name="view_type">form</field>
210             <field name="view_mode">tree,form</field>
211             <field name="context">{'tree_view_ref': 'mail.view_message_tree_short', 'form_view_ref': 'mail.view_message_form_short'}</field>
212             <field name="search_view_id" ref="view_message_search_short"/>
213         </record>
214
215         <record id="action_view_mail_message" model="ir.actions.act_window">
216             <field name="name">Messages</field>
217             <field name="res_model">mail.message</field>
218             <field name="view_type">form</field>
219             <field name="view_mode">tree,form</field>
220             <field name="context">{'search_default_received': 1, 'search_default_type_email': 1}</field>
221             <field name="search_view_id" ref="view_email_message_search"/>
222         </record>
223
224         <act_window domain="[('partner_id', '=', active_id), ('email_from', '!=', False)]"
225             context="{'default_partner_id': active_id}"
226             id="act_res_partner_emails" name="Emails"
227             res_model="mail.message"
228             src_model="res.partner"
229             view_id="view_email_message_tree"/>
230
231         <!-- Add menu entry in Settings/Email -->
232         <menuitem name="Messages" id="menu_email_message" parent="base.menu_email" action="action_view_mail_message" />
233         
234         <!-- Add menu entry in Settings/Email -->
235         <menuitem name="Feeds" id="menu_email_message_all" parent="base.menu_email" action="action_view_all_messages_short" groups="base.group_no_one"/>
236
237         <record id="action_mail_all_feeds" model="ir.actions.client">
238             <field name="name">News Feed</field>
239             <field name="tag">mail.all_feeds</field>
240             <field name="params" eval="{'search_view_id': ref('view_message_search_wall')}"/>
241         </record>
242
243         <record id="action_mail_my_feeds" model="ir.actions.client">
244             <field name="name">My Feeds</field>
245             <field name="tag">mail.all_feeds</field>
246             <field name="params" eval="{'search_view_id': ref('view_message_search_wall'), 'my_feeds': True}"/>
247         </record>
248     </data>
249 </openerp>