bb0412a2247747c7a80054b8c8c13bd29cf3b70c
[odoo/odoo.git] / addons / base_calendar / base_calendar_view.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <openerp>
3     <data>
4
5         <!--        Attendee form view-->
6
7         <record id="base_calendar_attendee_form_view" model="ir.ui.view">
8             <field name="name">calendar.attendee.form</field>
9             <field name="model">calendar.attendee</field>
10             <field name="type">form</field>
11             <field name="arch" type="xml">
12                 <form string="Invitation details">
13                     <group col="6" colspan="4">
14                         <field name="email" string="Invitation To"/>
15                         <field name="cutype" string="Invitation type" />
16                         <field name="rsvp" />
17                         <field name="role" string="Role" />
18                         <field name="sent_by_uid" string="Invitation From" />
19                     </group>
20                     <notebook colspan="4">
21                         <page string="Invitation">
22                             <separator string="Invitation Detail" colspan="4" />
23                             <group colspan="4" col="4">
24                                 <field name="user_id" string="Invited User"/>
25                                 <newline/>
26                                 <field name="partner_address_id"
27                                     string="Contact" />
28                                 <field name="partner_id"
29                                     string="Partner" readonly="1" />
30                             </group>
31                             <separator string="Event Detail" colspan="4" />
32                             <group colspan="4" col="4">
33                                 <field name="event_date" />
34                                 <field name="event_end_date" />
35                                 <field name="language"/>
36                                 <field name="ref" colspan="4" readonly="1"/>
37                             </group>
38                         </page>
39                         <page string="Delegation Info">
40                             <separator string="Delegated From" colspan="4" />
41                             <field name="parent_ids" nolabel="1"
42                                 colspan="4" readonly="1" />
43                             <separator string="Delegated To" colspan="4" />
44                             <field name="child_ids" nolabel="1"
45                                 colspan="4" readonly="1" />
46                         </page>
47                     </notebook>
48                     <group col="6" colspan="4">
49                             <field name="state" />
50                             <button name="do_tentative"
51                                 states="needs-action,declined,accepted"
52                                 string="Uncertain" type="object"
53                                 icon="terp-crm" />
54                             <button name="do_accept" string="Accept"
55                                 states="needs-action,tentative,declined"
56                                 type="object" icon="gtk-apply" />
57                             <button name="do_decline" string="Decline"
58                                 states="needs-action,tentative,accepted"
59                                 type="object" icon="gtk-cancel" />
60                             <button
61                                 name="%(base_calendar.action_view_calendar_invite_attendee_wizard)d"
62                                 string="Delegate" type="action"
63                                 icon="gtk-sort-descending"
64                                 states="needs-action,tentative,declined,accepted"
65                                 context="{'model' : 'calendar.attendee', 'attendee_field' : 'child_ids'}" />
66                     </group>
67                 </form>
68             </field>
69         </record>
70
71         <!--        Attendee tree view-->
72
73         <record id="base_calendar_attendee_tree_view" model="ir.ui.view">
74             <field name="name">calendar.attendee.tree</field>
75             <field name="model">calendar.attendee</field>
76             <field name="type">tree</field>
77             <field name="arch" type="xml">
78                 <tree string="Invitation details">
79                     <field name="email" string="Invitation To"/>
80                     <field name="user_id" string="Internal User" />
81                     <field name="partner_address_id" string="Contact" />
82                     <field name="role" />
83                     <field name="state" />
84                     <field name="cutype" invisible="1"/>
85                     <field name="rsvp" invisible="1"/>
86                 </tree>
87             </field>
88         </record>
89
90         <!--        Attendee search view-->
91
92         <record id="base_calendar_attendee_search_view" model="ir.ui.view">
93             <field name="name">calendar.attendee.search</field>
94             <field name="model">calendar.attendee</field>
95             <field name="type">search</field>
96             <field name="arch" type="xml">
97                 <search string="Search Invitations">
98                    <filter icon="terp-check" string="Accepted"
99                        domain="[('state','=', 'accepted')]"
100                        separator="1" help="Accepted Invitations" />
101                    <filter icon="terp-dialog-close" string="Declined"
102                        domain="[('state','=', 'declined')]"
103                        separator="1" help="Declined Invitations" />
104                    <separator orientation="vertical"/>
105                    <field name="email" select='1'/>
106                    <field name="user_id" select="1"/>
107                    <separator orientation="vertical"/>
108                    <field name="cutype" string="Invitation type" select="1"/>
109                    <field name="event_date" select="1"/>
110                    <newline/>
111                     <group expand="0" string="Group By...">
112                         <filter string="Type" icon="terp-stock_symbol-selection" help="Invitation Type"
113                             domain="[]" context="{'group_by':'cutype'}" />
114                         <filter string="Role" icon="terp-gtk-select-all"
115                             domain="[]" context="{'group_by':'role'}" />
116                         <filter string="Required Reply" icon="terp-mail-replied"
117                             domain="[]" context="{'group_by':'rsvp'}" />
118                         <separator orientation="vertical" />
119                         <filter string="User" icon="terp-personal" domain="[]"
120                             context="{'group_by':'user_id'}" />
121                         <filter string="Contact" icon="terp-gtk-jump-to-ltr" domain="[]"
122                             context="{'group_by':'partner_address_id'}" />
123                         <filter string="State" icon="terp-stock_effects-object-colorize" help="Invitation Type"
124                             domain="[]" context="{'group_by':'state'}" />
125                     </group>
126                </search>
127             </field>
128         </record>
129         <record id="action_view_attendee_form" model="ir.actions.act_window">
130              <field name="name">Event Invitations</field>
131              <field name="type">ir.actions.act_window</field>
132              <field name="res_model">calendar.attendee</field>
133              <field name="view_type">form</field>
134              <field name="view_mode">tree,form</field>
135              <field name="view_id" ref="base_calendar.base_calendar_attendee_tree_view" />
136              <field name="context">{'default_sent_by_uid': uid}</field>
137          </record>
138
139         <!-- Calenadar's menu -->
140           <menuitem id="base.menu_calendar_configuration" name="Calendar"
141             parent="base.menu_base_config" sequence="15" />
142
143         <!-- Invitation menu -->
144
145            <menuitem id="menu_attendee_invitations"
146             name="Event Invitations" parent="base.menu_calendar_configuration"
147             sequence="10" action="action_view_attendee_form" />
148
149         <!--        ALARM FORM VIEW-->
150
151         <record id="res_alarm_form_view" model="ir.ui.view">
152             <field name="name">res.alarm.form</field>
153             <field name="model">res.alarm</field>
154             <field name="type">form</field>
155             <field name="arch" type="xml">
156                 <form string="Reminder details">
157                     <field name="name" />
158                     <field name="active" />
159                     <separator string="Reminder Details" colspan="4" />
160                     <field name="trigger_duration" select="1" />
161                     <field name="trigger_interval" select="1" />
162                     <field name="trigger_occurs" select="1" />
163                     <field name="trigger_related" select="1" />
164                 </form>
165             </field>
166         </record>
167
168         <!--        ALARM TREE VIEW-->
169
170         <record id="res_alarm_tree_view" model="ir.ui.view">
171             <field name="name">res.alarm.tree</field>
172             <field name="model">res.alarm</field>
173             <field name="type">tree</field>
174             <field name="arch" type="xml">
175                 <tree string="Reminder details">
176                 <field name="name" select="1"/>
177                 <field name="trigger_interval" select="1"/>
178                 <field name="trigger_duration" select="1"/>
179                 <field name="trigger_occurs" select="1"/>
180                 <field name="trigger_related" select="1"/>
181                 </tree>
182             </field>
183         </record>
184         <record id="action_res_alarm_view" model="ir.actions.act_window">
185             <field name="name">Available Alarms</field>
186             <field name="type">ir.actions.act_window</field>
187             <field name="res_model">res.alarm</field>
188             <field name="view_type">form</field>
189             <field name="view_mode">tree,form</field>
190         </record>
191
192         <!--        Menu for Alarms-->
193
194          <menuitem id="menu_crm_meeting_avail_alarm"
195             groups="base.group_extended"
196             action="base_calendar.action_res_alarm_view"
197             parent="base.menu_calendar_configuration" />
198
199         <!-- Event Form View-->
200
201         <record model="ir.ui.view" id="event_form_view">
202             <field name="name">Event Form</field>
203             <field name="model">calendar.event</field>
204             <field name="type">form</field>
205             <field name="arch" type="xml">
206                 <form string="Events">
207                     <group col="6" colspan="4">
208                         <field name="name" select="1" string="Summary"
209                             colspan="4" required="1" />
210                         <field name="allday" colspan="2" on_change="onchange_allday(allday)" />
211                         <newline/>
212                         <field name="date" string="Start Date" required="1" select="1"
213                             on_change="onchange_dates(date,duration,False,allday)" />
214                         <field name="duration" widget="float_time"
215                             on_change="onchange_dates(date,duration,False,allday)" attrs="{'invisible': [('allday', '=', True)]}"/>
216                         <field name="date_deadline" string="End Date" required="1"
217                             on_change="onchange_dates(date,False,date_deadline)" />
218                         <field name="location" />
219                         <field name="alarm_id" string="Reminder"
220                             widget="selection" />
221                         <group colspan="2" col="4" >
222                                <field name="rrule_type" string="Recurrency"
223                                     colspan="1" attrs="{'readonly':[('recurrent_uid','!=',False)]}"/>
224                                <button string="Edit All"
225                                    help="Edit all Ourrences of recurrent Events"
226                                    attrs="{'invisible':[('rrule_type','in', ('none', False))]}"
227                                    name="open_event" icon="gtk-edit"
228                                    type="object" />
229                                <button string="ExRule"
230                                     help="Add Exception Rule"
231                                     name="%(base_calendar.action_base_calendar_set_exrule)d" icon="gtk-zoom-out"  type="action"
232                                     context="{'model' : 'calendar.event'}"
233                                     attrs="{'invisible':[('rrule_type','in', ('none', False))]}"/>
234                         </group>
235                     </group>
236                     <group col="4" colspan="4" name="rrule" attrs="{'invisible': [('rrule_type','!=','custom')]}">
237                         <separator string="Select data for Custom Rule" colspan="8"/>
238                         <group col="8" colspan="4">
239                             <field name="freq" />
240                             <field name="interval" />
241                             <field name="count" />
242                             <field name="end_date" />
243                         </group>
244                         <group col="14" colspan="4" name="Select weekdays"
245                             attrs="{'invisible' : [('freq','!=','weekly')]}">
246                             <field name="mo" colspan="1" />
247                             <field name="tu" colspan="1" />
248                             <field name="we" colspan="1" />
249                             <field name="th" colspan="1" />
250                             <field name="fr" colspan="1" />
251                             <field name="sa" colspan="1" />
252                             <field name="su" colspan="1" />
253                             <newline />
254                         </group>
255                         <group col="10" colspan="4"
256                             attrs="{'invisible' : [('freq','!=','monthly'), ('freq','!=','yearly')]}">
257                             <group col="2" colspan="1">
258                                 <field name="select1" />
259                             </group>
260                             <group col="2" colspan="1"
261                                 attrs="{'invisible' : [('select1','=','day')]}">
262                                 <field name="day"
263                                     attrs="{'required' : [('select1','=','date')]}" />
264                             </group>
265                             <group col="3" colspan="1"
266                                 attrs="{'invisible' : [('select1','=','date')]}">
267                                 <field name="byday" string="The"
268                                     attrs="{'required' : [('select1','=','day')]}" />
269                                 <field name="week_list" nolabel="1"
270                                     attrs="{'required' : [('select1','=','day')]}" />
271                             </group>
272                             <group col="1" colspan="1"
273                                 attrs="{'invisible' : [('freq','!=','yearly')]}">
274                                 <field name="month_list" string="of"
275                                     colspan="1"
276                                     attrs="{'required' : [('freq','=','yearly')]}" />
277                             </group>
278                         </group>
279                     </group>
280                     <notebook colspan="4">
281                     <page string="Event">
282                         <group col="6" colspan="4">
283                              <separator colspan="6" string="Visibility"/>
284                              <field name="user_id" string="Responsible User" />
285                              <field name="show_as" string="Show time as"/>
286                              <field name="class" string="Privacy"/>
287                              <field name="recurrent_id" invisible="1" />
288                              <field name="recurrent_uid" invisible="1" />
289                         </group>
290                         <separator string="Description" colspan="4" />
291                         <field name="description" nolabel="1" colspan="4" />
292                         <separator colspan="4" string="" />
293                            <group col="5" colspan="4">
294                                <field name="state" select="2" />
295                                <button name="do_tentative"
296                                    states="confirmed,cancelled"
297                                    string="Uncertain"
298                                    type="object"
299                                    icon="terp-crm" />
300                                <button name="do_confirm"
301                                    string="Confirm"
302                                    states="tentative,cancelled"
303                                    type="object"
304                                    icon="gtk-apply" />
305                                <button name="do_cancel"
306                                    string="Cancel"
307                                    states="tentative,confirmed"
308                                    type="object"
309                                    icon="gtk-cancel" />
310                            </group>
311                         </page>
312                         <page string="Invitation Detail">
313                             <button string="Invite People"
314                                 name="%(base_calendar.action_view_calendar_invite_attendee_wizard)d"
315                                 icon="terp-partner" type="action"
316                                 context="{'model' : 'calendar.event', 'attendee_field':'attendee_ids'}" colspan="2"/>
317                             <field name="attendee_ids" colspan="4"
318                                 nolabel="1" widget="one2many" mode="tree,form">
319                                 <tree string="Invitation details" editable="top">
320                                     <field name="email" />
321                                     <field name="role" width="200" select="1" />
322                                     <field name="state" />
323                                 </tree>
324                                 <form string="Invitation details">
325                                     <notebook colspan="4">
326                                         <page string="Details">
327                                             <field name="email" />
328                                             <field name="rsvp" select="1" />
329                                             <field name="cutype" select="1" />
330                                             <field name="role" select="1" />
331                                             <separator colspan="4" string="" />
332                                             <group col="6" colspan="4">
333                                                 <field name="state" select="2" />
334                                                 <button name="do_tentative"
335                                                     states="needs-action,declined,accepted"
336                                                     string="Uncertain"
337                                                     type="object"
338                                                     icon="terp-crm" />
339                                                 <button name="do_accept"
340                                                     string="Accept"
341                                                     states="needs-action,tentative,declined"
342                                                     type="object"
343                                                     icon="gtk-apply" />
344                                                 <button name="do_decline"
345                                                     string="Decline"
346                                                     states="needs-action,tentative,accepted"
347                                                     type="object"
348                                                     icon="gtk-cancel" />
349                                                 <button
350                                                     name="%(base_calendar.action_view_calendar_invite_attendee_wizard)d"
351                                                     string="Delegate"
352                                                     type="action"
353                                                     icon="gtk-sort-descending"
354                                                     states="needs-action,tentative,declined,accepted"
355                                                     context="{'model' : 'calendar.attendee', 'attendee_field' : 'child_ids'}" />
356                                             </group>
357                                         </page>
358                                     </notebook>
359                                 </form>
360                             </field>
361                         </page>
362                     </notebook>
363                 </form>
364             </field>
365         </record>
366
367         <!-- Event Tree View  -->
368
369         <record model="ir.ui.view" id="event_tree_view">
370             <field name="name">Event Tree</field>
371             <field name="model">calendar.event</field>
372             <field name="type">tree</field>
373             <field name="arch" type="xml">
374                 <tree string="Events">
375                     <field name="name" string="Subject" />
376                     <field name="date" string="Event Date" />
377                     <field name="location" />
378                     <field name="show_as" />
379                     <field name="class" string="Privacy" />
380                     <field name="user_id" invisible="1"/>
381                     <field name="state" invisible="1"/>
382                 </tree>
383             </field>
384         </record>
385
386         <!-- Event Calendar View  -->
387
388         <record model="ir.ui.view" id="event_calendar_view">
389             <field name="name">Events Calendar</field>
390             <field name="model">calendar.event</field>
391             <field name="type">calendar</field>
392             <field name="priority" eval="2"/>
393             <field name="arch" type="xml">
394                 <calendar string="Events" date_start="date" color="show_as" date_delay="duration">
395                     <field name="name"/>
396                     <field name="class"/>
397                     <field name="show_as"/>
398                 </calendar>
399             </field>
400         </record>
401
402         <!--     Event Search View-->
403
404         <record id="view_calendar_event_filter" model="ir.ui.view">
405             <field name="name">Calendar Events Search</field>
406             <field name="model">calendar.event</field>
407             <field name="type">search</field>
408             <field name="arch" type="xml">
409                 <search string="Search Events">
410                        <group col="12" colspan="4">
411                            <filter icon="terp-go-today" string="My Events"
412                                domain="[('user_id','=',uid)]"
413                                help="My Events" />
414                            <separator orientation="vertical"/>
415                            <filter icon="terp-check" string="Confirmed"
416                                domain="[('state','=','confirmed')]"
417                                help="Confirmed Events" />
418                            <separator orientation="vertical"/>
419                            <field name="name" select="1" string="Summary"/>
420                            <field name="location" select="1" string="Location"/>
421                            <separator orientation="vertical"/>
422                            <field name="user_id" select="1"/>
423                            <separator orientation="vertical"/>
424                            <field name="show_as" select="1"/>
425                            <field name="class" select="1"/>
426                        </group>
427                        <newline/>
428                         <group expand="0" string="Group By...">
429                             <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]"
430                                 context="{'group_by':'state'}" />
431                             <filter string="Date" icon="terp-go-month"
432                                 domain="[]" context="{'group_by':'date'}" />
433                             <filter string="Availability" icon="terp-camera_test"
434                                 domain="[]" context="{'group_by':'show_as'}" />
435                             <filter string="Privacy" icon="terp-locked"
436                                 domain="[]" context="{'group_by':'class'}" />
437                             <separator orientation="vertical" />
438                             <filter string="Responsible" icon="terp-personal" domain="[]"
439                                 context="{'group_by':'user_id'}" />
440                         </group>
441                 </search>
442             </field>
443         </record>
444
445
446         <!-- Event action  -->
447
448         <record id="action_view_event" model="ir.actions.act_window">
449                 <field name="name">Events</field>
450                 <field name="type">ir.actions.act_window</field>
451                 <field name="res_model">calendar.event</field>
452                 <field name="view_type">form</field>
453                 <field name="view_mode">tree,form,calendar</field>
454                 <field name="search_view_id" ref="view_calendar_event_filter"/>
455             </record>
456
457         <!-- Event menu  -->
458
459         <menuitem id="menu_events"
460                 name="Events" parent="base.menu_calendar_configuration"
461                 sequence="5" action="action_view_event" />
462
463      </data>
464  </openerp>