[IMP] mail: chatter/wall: added reload after posting a comment.
[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="user_id"/>
34                                 <field name="date"/>
35                                 <field name="type"/>
36                                 <field name="content_subtype"/>
37                                 <field name="partner_ids" widget="many2many_tags"/>
38                             </group>
39                             <group>
40                                 <field name="model"/>
41                                 <field name="res_id"/>
42                                 <field name="parent_id"/>
43                                 <field name="body_text"/>
44                                 <field name="body_html"/>
45                             </group>
46                         </group>
47                     </sheet>
48                 </form>
49             </field>
50         </record>
51
52         <!-- mail.message search: short view !-->
53         <record model="ir.ui.view" id="view_message_search_short">
54             <field name="name">mail.message.search.short</field>
55             <field name="model">mail.message</field>
56             <field name="type">search</field>
57             <field name="priority">20</field>
58             <field name="arch" type="xml">
59                 <search string="Messages Search">
60                     <field name="model" string="Message"/>
61                     <separator orientation="vertical"/>
62                     <field name="date"/>
63                     <separator orientation="vertical"/>
64                     <field name="user_id"/>
65                 </search>
66             </field>
67         </record>
68
69         <!-- mail.message search: wall view !-->
70         <record model="ir.ui.view" id="view_message_search_wall">
71             <field name="name">mail.message.search.wall</field>
72             <field name="model">mail.message</field>
73             <field name="type">search</field>
74             <field name="priority">25</field>
75             <field name="arch" type="xml">
76                 <search string="Messages Search">
77                     <field name="user_id"/>
78                     <field name="body"/>
79                     <field name="type"/>
80                     <filter icon="terp-personal+" string="My Feeds"
81                             name="my_feeds" help="My Feeds"
82                             domain="[('user_id','=',uid)]"/>
83                     <filter icon="terp-personal+" string="Comments"
84                             name="comments" help="Comments"
85                             domain="[('type', '=', 'comment')]"/>
86                     <filter icon="terp-personal+" string="Notifications"
87                             name="notifications" help="Notifications"
88                             domain="[('type', '=', 'notification')]"/>
89                     <filter icon="terp-personal+" string="Emails"
90                             name="emails" help="Emails"
91                             domain="[('type', '=', 'email')]"/>
92                     <filter icon="terp-go-today" string="Today"
93                             name="today" help="Today"
94                             domain="[   ('date', '&lt;=', datetime.date.today().strftime('%%Y-%%m-%%d 23:59:59')),
95                                         ('date', '&gt;=', datetime.date.today().strftime('%%Y-%%m-%%d 00:00:00'))
96                                     ]"/>
97                     <filter icon="terp-go-week" string="This week"
98                             name="7_days" help="This week"
99                             domain="[   ('date', '&lt;=', datetime.date.today().strftime('%%Y-%%m-%%d 23:59:59')),
100                                         ('date', '&gt;=', (datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d 00:00:00'))
101                                     ]"/>
102                 </search>
103             </field>
104         </record>
105
106         <record model="ir.ui.view" id="view_email_message_form">
107             <field name="name">mail.message.form</field>
108             <field name="model">mail.message</field>
109             <field name="type">form</field>
110             <field name="arch" type="xml">
111                 <form string="Email message" version="7.0">
112                     <sheet>
113                         <label for="subject" class="oe_edit_only"/>
114                         <h2><field name="subject"/></h2>
115                                                 <div>
116                             by <field name="user_id" class="oe_inline" string="User"/> on <field name="date" class="oe_inline"/>
117                             <button name="%(action_email_compose_message_wizard)d" string="Reply" type="action" icon="terp-mail-replied"
118                                 context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" states='received,sent,exception,cancel'/>
119                         </div>
120                         <notebook colspan="4">
121                             <page string="Message Details">
122                                 <group>
123                                     <group>
124                                         <field name="email_from"/>
125                                         <field name="email_to"/>
126                                         <field name="email_cc"/>
127                                         <field name="email_bcc"/>
128                                         <field name="reply_to"/>
129                                     </group>
130                                     <group>
131                                         <field name="partner_id" readonly="1"/>
132                                         <field name="partner_ids" widget="many2many_tags"/>
133                                     </group>
134                                 </group>
135                                 <notebook>
136                                     <page string="Body (Rich)">
137                                         <field name="body_html" widget="text_html"/>
138                                     </page>
139                                     <page string="Body (Plain)">
140                                         <field name="body_text" widget="text"/>
141                                     </page>
142                                 </notebook>
143                             </page>
144                             <page string="Advanced" groups="base.group_no_one">
145                                 <group>
146                                     <group>
147                                         <field name="auto_delete"/>
148                                         <field name="type"/>
149                                         <field name="content_subtype"/>
150                                         <field name="state" colspan="2"/>
151                                         <field name="mail_server_id"/>
152                                         <field name="original"/>
153                                         <field name="model"/>
154                                         <field name="res_id"/>
155                                         <button name="open_document" string="Open" type="object" icon="gtk-jump-to" colspan="2"
156                                             attrs="{'invisible':['|', ('model', '=', ''), ('res_id', '=', False)]}"/>
157                                     </group>
158                                     <group>
159                                         <field name="message_id"/>
160                                         <field name="references"/>
161                                         <field name="headers"/>
162                                     </group>
163                                 </group>
164                             </page>
165                             <page string="Attachments">
166                                 <field name="attachment_ids"/>
167                             </page>
168                         </notebook>
169                     </sheet>
170                 </form>
171             </field>
172         </record>
173
174         <record model="ir.ui.view" id="view_email_message_tree">
175             <field name="name">mail.message.tree</field>
176             <field name="model">mail.message</field>
177             <field name="type">tree</field>
178             <field name="arch" type="xml">
179                 <tree string="Emails" colors="grey:state in ('sent', 'cancel');blue:state=='outgoing';red:state=='exception';black:state=='received'">
180                     <field name="date"/>
181                     <field name="subject"/>
182                     <field name="email_from"/>
183                     <field name="user_id" string="User"/>
184                     <field name="message_id" invisible="1"/>
185                     <field name="partner_id" invisible="1"/>
186                     <field name="model" invisible="1"/>
187                     <field name="res_id" invisible="1"/>
188                     <field name="state"/>
189                     <button name="send" string="Send Now" type="object" icon="gtk-media-play" states='outgoing'/>
190                     <button name="mark_outgoing" string="Retry" type="object" icon="gtk-redo" states='exception,cancel'/>
191                     <button name="cancel" string="Cancel" type="object" icon="terp-gtk-stop" states='outgoing'/>
192                     <button name="open_document" string="Open Related Document" type="object" icon="gtk-jump-to"/>
193                     <button name="open_attachment" string="Open Attachments" type="object" icon="gtk-jump-to"/>
194                 </tree>
195             </field>
196         </record>
197
198         <record model="ir.ui.view" id="view_email_message_search">
199             <field name="name">mail.message.search</field>
200             <field name="model">mail.message</field>
201             <field name="type">search</field>
202             <field name="arch" type="xml">
203                 <search string="Email Search">
204                     <field name="email_from" filter_domain="['|' '|',('email_from','ilike',self), ('email_to','ilike',self), ('subject','ilike',self)]" string="Email"/>
205                     <separator orientation="vertical"/>
206                     <field name="date"/>
207                     <separator orientation="vertical"/>
208                     <filter icon="terp-camera_test" name="received" string="Received" domain="[('state','=','received')]"/>
209                     <filter icon="terp-call-start" name="outgoing" string="Outgoing" domain="[('state','=','outgoing')]"/>
210                     <filter icon="terp-check" name="sent" string="Sent" domain="[('state','=','sent')]"/>
211                     <filter icon="terp-gtk-stop" name="exception" string="Failed" domain="[('state','=','exception')]"/>
212                     <filter icon="terp-camera_test" name="type_email" string="Email" domain="[('type','=','email')]"/>
213                     <filter icon="terp-camera_test" name="type_comment" string="Comment" domain="[('type','=','comment')]"/>
214                     <filter icon="terp-camera_test" name="type_notification" string="Notification" domain="[('type','=','notification')]"/>
215                     <newline/>
216                     <group expand="0" string="Extended Filters...">
217                         <field name="user_id" string="User"/>
218                         <field name="partner_id" string="Partner Name"/>
219                         <field name="model"/>
220                         <field name="res_id"/>
221                     </group>
222                     <newline/>
223                     <group expand="0" string="Group By...">
224                         <filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
225                         <filter string="Partner" icon="terp-partner" domain="[]" context="{'group_by':'partner_id'}"/>
226                         <filter string="User" name="User" icon="terp-personal" context="{'group_by':'user_id'}"/>
227                         <separator orientation="vertical"/>
228                         <filter string="Thread" icon="terp-mail-" domain="[]" context="{'group_by':'message_id'}"/>
229                         <separator orientation="vertical"/>
230                         <filter string="Month" help="Creation Month" icon="terp-go-month" domain="[]" context="{'group_by':'date'}"/>
231                     </group>
232                 </search>
233             </field>
234         </record>
235
236         <record id="action_view_all_messages_short" model="ir.actions.act_window">
237             <field name="name">Messages</field>
238             <field name="res_model">mail.message</field>
239             <field name="view_type">form</field>
240             <field name="view_mode">tree,form</field>
241             <field name="context">{'tree_view_ref': 'mail.view_message_tree_short', 'form_view_ref': 'mail.view_message_form_short'}</field>
242             <field name="search_view_id" ref="view_message_search_short"/>
243         </record>
244
245         <record id="action_view_mail_message" model="ir.actions.act_window">
246             <field name="name">Messages</field>
247             <field name="res_model">mail.message</field>
248             <field name="view_type">form</field>
249             <field name="view_mode">tree,form</field>
250             <field name="context">{'search_default_received': 1, 'search_default_type_email': 1}</field>
251             <field name="search_view_id" ref="view_email_message_search"/>
252         </record>
253
254         <act_window domain="[('partner_id', '=', active_id), ('email_from', '!=', False)]"
255             context="{'default_partner_id': active_id}"
256             id="act_res_partner_emails" name="Emails"
257             res_model="mail.message"
258             src_model="res.partner"
259             view_id="view_email_message_tree"/>
260
261         <!-- Add menu entry in Settings/Email -->
262         <menuitem name="Messages" id="menu_email_message" parent="base.menu_email" action="action_view_mail_message" />
263         
264         <!-- Add menu entry in Settings/Email -->
265         <menuitem name="Feeds" id="menu_email_message_all" parent="base.menu_email" action="action_view_all_messages_short" groups="base.group_no_one"/>
266
267         <record id="action_mail_all_feeds" model="ir.actions.client">
268             <field name="name">News Feed</field>
269             <field name="tag">mail.wall</field>
270             <field name="params" eval="{'search_view_id': ref('view_message_search_wall')}"/>
271         </record>
272
273         <record id="action_mail_my_feeds" model="ir.actions.client">
274             <field name="name">My Feeds</field>
275             <field name="tag">mail.wall</field>
276             <field name="params" eval="{'search_view_id': ref('view_message_search_wall'), 'my_feeds': True}"/>
277         </record>
278     </data>
279 </openerp>