[MERGE] addons 16 survey
[odoo/odoo.git] / addons / base_calendar / crm_meeting_view.xml
1 <?xml version="1.0"?>
2 <openerp>
3     <data>
4
5     <!-- Read/Unread actions -->
6
7     <record id="actions_server_crm_meeting_read" model="ir.actions.server">
8         <field name="name">Mark read</field>
9         <field name="condition">True</field>
10         <field name="type">ir.actions.server</field>
11         <field name="model_id" ref="model_crm_meeting"/>
12         <field name="state">code</field>
13         <field name="code">self.message_mark_as_read(cr, uid, context.get('active_ids'), context=context)</field>
14     </record>
15     <record id="action_crm_meeting_read" model="ir.values">
16         <field name="name">action_crm_meeting_read</field>
17         <field name="action_id" ref="actions_server_crm_meeting_read"/>
18         <field name="value" eval="'ir.actions.server,' + str(ref('actions_server_crm_meeting_read'))"/>
19         <field name="key">action</field>
20         <field name="model_id" ref="model_crm_meeting"/>
21         <field name="model">crm.meeting</field>
22         <field name="key2">client_action_multi</field>
23     </record>
24
25     <record id="actions_server_crm_meeting_unread" model="ir.actions.server">
26         <field name="name">Mark unread</field>
27         <field name="condition">True</field>
28         <field name="type">ir.actions.server</field>
29         <field name="model_id" ref="model_crm_meeting"/>
30         <field name="state">code</field>
31         <field name="code">self.message_mark_as_unread(cr, uid, context.get('active_ids'), context=context)</field>
32     </record>
33     <record id="action_crm_meeting_unread" model="ir.values">
34         <field name="name">action_crm_meeting_unread</field>
35         <field name="action_id" ref="actions_server_crm_meeting_unread"/>
36         <field name="value" eval="'ir.actions.server,' + str(ref('actions_server_crm_meeting_unread'))"/>
37         <field name="key">action</field>
38         <field name="model_id" ref="model_crm_meeting"/>
39         <field name="model">crm.meeting</field>
40         <field name="key2">client_action_multi</field>
41     </record>
42
43     <!-- CRM Meetings Types Form View -->
44
45     <record id="view_crm_meeting_type_tree" model="ir.ui.view">
46         <field name="name">Meeting Types Tree</field>
47         <field name="model">crm.meeting.type</field>
48         <field name="arch" type="xml">
49             <tree string="Meeting Types" editable="bottom">
50                 <field name="name"/>
51             </tree>
52         </field>
53     </record>
54
55     <record id="action_crm_meeting_type" model="ir.actions.act_window">
56         <field name="name">Meeting Types</field>
57         <field name="res_model">crm.meeting.type</field>
58         <field name="view_type">form</field>
59         <field name="view_id" ref="view_crm_meeting_type_tree"/>
60     </record>
61
62     <menuitem id="menu_crm_meeting_type" parent="base.menu_calendar_configuration" sequence="1"
63         action="action_crm_meeting_type" groups="base.group_no_one"/>
64
65     <!-- CRM Meetings Form View -->
66
67     <record model="ir.ui.view" id="view_crm_meeting_form">
68         <field name="name">CRM - Meetings Form</field>
69         <field name="model">crm.meeting</field>
70         <field name="arch" type="xml">
71             <form string="Meetings" version="7.0">
72                 <field name="state" invisible="True"/>
73                 <sheet>
74                     <div class="oe_title">
75                         <div class="oe_edit_only">
76                             <label for="name"/>
77                         </div>
78                         <h1>
79                             <field name="name"/>
80                         </h1>
81                         <label for="partner_ids" class="oe_edit_only"/>
82                         <h2>
83                             <field name="partner_ids" widget="many2many_tags"
84                                 context="{'force_email':True}"
85                                 on_change="onchange_partner_ids(partner_ids)"/>
86                         </h2>
87                     </div>
88                     <notebook>
89                     <page string="Meeting Details">
90                         <group>
91                             <group>
92                                 <field name="date" string="Starting at"
93                                     on_change="onchange_dates(date, duration, False, allday)"/>
94                                 <label for="duration"/>
95                                 <div>
96                                     <field name="duration" widget="float_time"
97                                         on_change="onchange_dates(date,duration,False,allday)"
98                                         class="oe_inline" attrs="{'invisible': [('allday','=',True)]}"/>
99                                     <label string="hours" attrs="{'invisible': [('allday','=',True)]}"/>
100                                     (<field name="allday" on_change="onchange_dates(date,False,False,allday)" class="oe_inline"/>
101                                     <label for="allday" string="All Day?"/>)
102                                 </div>
103                                 <field name="date_deadline" groups="base.group_no_one"
104                                     attrs="{'invisible': ['|', ('allday','=',True), ('duration','&lt;', 24)]}"
105                                     on_change="onchange_dates(date,False,date_deadline)"/>
106                             </group>
107                             <group>
108                                 <field name="user_id" groups="base.group_no_one"/>
109                                 <field name="categ_ids" widget="many2many_tags"/>
110                                 <field name="location"/>
111                                 <field name="organizer" groups="base.group_no_one"/>
112                             </group>
113
114                         </group>
115                         <label for="description"/>
116                         <field name="description"/>
117                     </page>
118                     <page string="Options">
119                         <group>
120                             <group col="1">
121                                 <group>
122                                     <field name="recurrency"
123                                         attrs="{'readonly': [('recurrent_uid','!=',False)]}"/>
124                                 </group>
125                                 <group attrs="{'invisible': [('recurrency','=',False)]}">
126                                     <label for="interval"/>
127                                     <div>
128                                         <field name="interval" attrs="{'required': [('recurrency','==',True)]}" class="oe_inline"/>
129                                         <field name="rrule_type" attrs="{'required': [('recurrency','==',True)]}" class="oe_inline"/>
130                                     </div>
131                                     <label string="Until" for="end_type"/>
132                                     <div>
133                                         <field name="end_type" attrs="{'required': [('recurrency','==',True)]}" class="oe_inline"/>
134                                         <field name="count" attrs="{'invisible': [('end_type', '!=', 'count')], 'required': [('recurrency','==',True)]}" class="oe_inline"/>
135                                         <field name="end_date" attrs="{'invisible': [('end_type', '!=', 'end_date')], 'required': [('end_type', '=', 'end_date')]}" class="oe_inline"/>
136                                     </div>
137                                     <label string="Select Weekdays" attrs="{'invisible' :[('rrule_type','not in', ['weekly'])]}"/>
138                                     <group col="2" colspan="1" name="weekdays" attrs="{'invisible' :[('rrule_type','not in', ['weekly'])]}">
139                                         <field name="mo"/>
140                                         <field name="tu"/>
141                                         <field name="we"/>
142                                         <field name="th"/>
143                                         <field name="fr"/>
144                                         <field name="sa"/>
145                                         <field name="su"/>
146                                     </group>
147
148                                     <label string="Day of Month"
149                                         attrs="{'invisible': [('rrule_type','!=','monthly')]}"/>
150
151                                     <div attrs="{'invisible': [('rrule_type','!=','monthly')]}">
152                                         <field name="select1"/>
153                                         <field name="day"
154                                             attrs="{'required': [('select1','=','date'), ('rrule_type','=','monthly')],
155                                                 'invisible': [('select1','=','day')]}"/>
156                                         <field name="byday" string="The"
157                                             attrs="{'required': [('select1','=','day'), ('rrule_type','=','monthly')], 'invisible': [('select1','=','date')]}"/>
158                                         <field name="week_list" nolabel="1"
159                                             attrs="{'required': [('select1','=','day'), ('rrule_type','=','monthly')], 'invisible': [('select1','=','date')]}"/>
160                                     </div>
161
162                                 </group>
163                             </group>
164                             <group>
165                                 <field name="alarm_id" widget="selection" groups="base.group_no_one"/>
166                                 <field name="class"/>
167                                 <field name="show_as"/>
168                                 <field name="rrule" invisible="1" readonly="1"/>
169                                 <field name="recurrent_id" invisible="1"/>
170                                 <field name="recurrent_uid" invisible="1"/>
171                             </group>
172                         </group>
173                     </page>
174                     <page string="Invitations" groups="base.group_no_one">
175                         <field name="attendee_ids" widget="one2many" mode="tree">
176                             <tree string="Invitation details" editable="top">
177                                 <field name="partner_id"/>
178                                 <field name="email" string="Mail To"/>
179                                 <field name="state"/>
180                                 <button name="do_tentative"
181                                     states="needs-action,declined,accepted"
182                                     string="Uncertain" type="object"
183                                     icon="terp-crm"/>
184                                 <button name="do_accept" string="Accept"
185                                     states="needs-action,tentative,declined"
186                                     type="object" icon="gtk-apply"/>
187                                 <button name="do_decline" string="Decline"
188                                     states="needs-action,tentative,accepted"
189                                     type="object" icon="gtk-cancel"/>
190                             </tree>
191                             <form string="Invitation details" version="7.0">
192                                 <header>
193                                     <button name="do_tentative" type="object"
194                                         states="needs-action,declined,accepted"
195                                         string="Uncertain"/>
196                                     <button name="do_accept" type="object"
197                                         states="needs-action,tentative,declined"
198                                         string="Accept"/>
199                                     <button name="do_decline" type="object"
200                                         states="needs-action,tentative,accepted"
201                                         string="Decline"/>
202                                     <field name="state" widget="statusbar" statusbar_visible="draft,open,done"/>
203                                 </header>
204                                 <group>
205                                     <group>
206                                         <field name="email"/>
207                                         <field name="rsvp"/>
208                                         <field name="cutype"/>
209                                         <field name="role"/>
210                                     </group>
211                                     <group>
212                                         <field name="partner_id"/>
213                                         <field name="user_id"/>
214                                     </group>
215                                 </group>
216                             </form>
217                         </field>
218                     </page>
219
220                     </notebook>
221                 </sheet>
222                 <div class="oe_chatter">
223                     <field name="message_follower_ids" widget="mail_followers"/>
224                     <field name="message_ids" widget="mail_thread"/>
225                 </div>
226             </form>
227         </field>
228     </record>
229
230     <!-- CRM Meeting Tree View  -->
231
232     <record model="ir.ui.view" id="view_crm_meeting_tree">
233         <field name="name">CRM - Meetings Tree</field>
234         <field name="model">crm.meeting</field>
235         <field name="arch" type="xml">
236             <tree string="Meetings" fonts="bold:message_unread==True">
237                 <field name="name" string="Subject"/>
238                 <field name="user_id"/>
239                 <field name="date"/>
240                 <field name="state" invisible="True"/>
241                 <field name="duration"/>
242                 <field name="message_unread" invisible="1"/>
243             </tree>
244         </field>
245     </record>
246
247     <!-- CRM Meeting Calendar -->
248
249     <record model="ir.ui.view" id="view_crm_meeting_calendar">
250         <field name="name">CRM - Meetings Calendar</field>
251         <field name="model">crm.meeting</field>
252         <field name="priority" eval="2"/>
253         <field name="arch" type="xml">
254             <calendar string="Meetings" date_start="date" color="user_id" date_stop="date_deadline" date_delay="duration">
255                 <field name="name"/>
256                 <field name="user_id"/>
257             </calendar>
258         </field>
259     </record>
260
261     <!-- CRM Meeting Gantt  -->
262
263     <record id="view_crm_meeting_gantt" model="ir.ui.view">
264         <field name="name">CRM - Meetings Gantt</field>
265         <field name="model">crm.meeting</field>
266         <field name="arch" type="xml">
267             <gantt date_delay="duration" date_start="date" string="Meetings"/>
268         </field>
269     </record>
270
271     <!-- CRM Meeting Search View  -->
272
273     <record id="view_crm_meeting_search" model="ir.ui.view">
274         <field name="name">CRM - Meetings Search</field>
275         <field name="model">crm.meeting</field>
276         <field name="arch" type="xml">
277             <search string="Search Meetings">
278                 <field name="name" string="Meeting" filter_domain="[('name','ilike',self)]"/>
279                 <filter string="Unread Messages" name="message_unread" domain="[('message_unread','=',True)]"/>
280                 <separator/>
281                 <filter string="My Meetings" help="My Meetings" domain="[('user_id','=',uid)]"/>
282                 <field name="user_id"/>
283                 <field name="partner_ids"/>
284             </search>
285         </field>
286     </record>
287
288     <!-- CRM Meetings action and menu -->
289
290     <record id="action_crm_meeting" model="ir.actions.act_window">
291         <field name="name">Meetings</field>
292         <field name="res_model">crm.meeting</field>
293         <field name="view_mode">calendar,tree,form,gantt</field>
294         <field name="view_id" ref="view_crm_meeting_calendar"/>
295         <field name="search_view_id" ref="view_crm_meeting_search"/>
296         <field name="context">{"calendar_default_user_id": uid}</field>
297         <field name="help" type="html">
298           <p class="oe_view_nocontent_create">
299             Click to schedule a new meeting.
300           </p><p>
301             The calendar is shared between employees and fully integrated with
302             other applications such as the employee holidays or the business
303             opportunities.
304           </p>
305         </field>
306     </record>
307     <record model="ir.actions.act_window.view" id="action_view_crm_meeting_calendar">
308         <field name="act_window_id" ref="action_crm_meeting"/>
309         <field name="sequence" eval="1"/>
310         <field name="view_mode">calendar</field>
311         <field name="view_id" ref="view_crm_meeting_calendar"/>
312     </record>
313     <record model="ir.actions.act_window.view" id="action_view_crm_meeting_tree">
314         <field name="act_window_id" ref="action_crm_meeting"/>
315         <field name="sequence" eval="2"/>
316         <field name="view_mode">tree</field>
317         <field name="view_id" ref="view_crm_meeting_tree"/>
318     </record>
319     <record model="ir.actions.act_window.view" id="action_view_crm_meeting_form">
320         <field name="act_window_id" ref="action_crm_meeting"/>
321         <field name="sequence" eval="3"/>
322         <field name="view_mode">form</field>
323         <field name="view_id" ref="view_crm_meeting_form"/>
324     </record>
325     <record model="ir.actions.act_window.view" id="action_view_crm_meeting_gantt">
326         <field name="act_window_id" ref="action_crm_meeting"/>
327         <field name="sequence" eval="4"/>
328         <field name="view_mode">gantt</field>
329         <field name="view_id" ref="view_crm_meeting_gantt"/>
330     </record>
331
332     <menuitem name="Calendar"
333         id="mail_menu_calendar" parent="mail.mail_my_stuff"
334         sequence="10" action="action_crm_meeting"/>
335
336     </data>
337 </openerp>