[MOD] event module should be in marketing application IF Association is not installed...
[odoo/odoo.git] / addons / event / event_view.xml
1 <?xml version="1.0"?>
2 <openerp>
3     <data>
4         <!--menuitem name="Association" id="base.menu_association" icon="terp-calendar" sequence="9"/>
5         <menuitem name="Events Organisation" id="menu_event_main" parent="base.menu_association" /-->
6         <menuitem name="Marketing" icon="terp-crm" id="base.marketing_menu" sequence="17"/>
7         <menuitem name="Events Organisation" id="base.menu_event_main" parent="base.marketing_menu" />
8
9     <!-- EVENTS  -->
10
11     <!-- EVENTS/CONFIGURATION/TYPE OF EVENTS -->
12         <record model="ir.ui.view" id="view_event_type_form">
13             <field name="name">Event type</field>
14             <field name="model">event.type</field>
15             <field name="type">form</field>
16             <field name="arch" type="xml">
17                 <form string="Event Type">
18                     <field name="name" select="1"/>
19                 </form>
20             </field>
21         </record>
22
23         <record model="ir.ui.view" id="view_event_type_tree">
24             <field name="name">Event type</field>
25             <field name="model">event.type</field>
26             <field name="type">tree</field>
27             <field name="arch" type="xml">
28                 <tree string="Event Type">
29                     <field name="name"/>
30                 </tree>
31             </field>
32         </record>
33
34         <record model="ir.actions.act_window" id="action_event_type">
35             <field name="res_model">event.type</field>
36             <field name="view_type">form</field>
37         </record>
38         <menuitem name="Configuration" id="base.menu_event_config" parent="base.marketing_menu" sequence="30" groups="base.group_extended"/>
39         <menuitem name="Types of Events" id="menu_event_type" action="action_event_type" parent="base.menu_event_config" groups="base.group_extended,crm.group_crm_manager"/>
40
41     <!-- Events Organisation/CONFIGURATION/EVENTS -->
42
43         <record model="ir.ui.view" id="view_event_form">
44             <field name="name">Events</field>
45             <field name="model">event.event</field>
46             <field name="type">form</field>
47             <field name="arch" type="xml">
48                 <form string="Events">
49                     <group col="6" colspan="4">
50                         <field name="name"/>
51                         <field name="date_begin"/>
52                         <field name="date_end"/>
53                         <field name="type" widget="selection"/>
54                         <field name="language"/>
55                         <field name="parent_id"/>
56                     </group>
57                     <notebook colspan="4">
58                     <page string="Event">
59                         <group colspan="4" col="4">                            
60                             <separator string="Invoice Information" colspan="4"/>
61                             <field name="product_id" on_change="onchange_product(product_id)" colspan="4"/>
62                             <field name="unit_price"/>
63                             <field name="pricelist_id" domain="[('type','=','sale')]" groups="base.group_extended"/>
64                         </group>
65                         <group colspan="2" col="2">
66                             <separator string="Contact" colspan="4"/>
67                             <field name="user_id"/>
68                             <field name="section_id" widget="selection" on_change="do_team_change(section_id)"/>
69                             <field name="company_id" groups="base.group_multi_company" widget="selection"/>
70                         </group>
71                         <group colspan="2" col="2">
72                             <separator string="Location" colspan="4"/>
73                             <field name="country_id" />
74                             <field name="address_id" domain="[('country_id','=',country_id)]"/>
75
76                         </group>
77                         <separator string="Description" colspan="4"/>
78                         <field name="note" colspan="4" nolabel="1"/>
79                         <field name="state" select="1"/>
80                         <group col="4" colspan="2">
81                            <button string="Confirm Event" name="button_confirm" states="draft" type="object" icon="gtk-apply"/>
82                            <button string="Cancel Event" name="button_cancel" states="draft,confirm" type="object" icon="gtk-cancel"/>
83                            <button string="Event Done" name="button_done" states="confirm" type="object" icon="gtk-jump-to"/>
84                            <button string="Set To Draft" name="button_draft" states="confirm,cancel,done" type="object" icon="gtk-convert"/>
85                         </group>
86                     </page>
87                     <page string="Speakers">
88                         <field name="main_speaker_id" domain="[('speaker','=',True)]"/>
89                         <field name="speaker_confirmed"/>
90                         <separator string="Other Speakers" colspan="4"/>
91                         <field name="speaker_ids" domain="[('speaker','=',True)]" colspan="4" nolabel="1"/>
92                     </page>
93                     <page string="Registrations">
94                         <field name="register_min"/>
95                         <field name="register_max"/>
96                         <field name="register_current"/>
97                         <field name="register_prospect"/>
98                         <field name="registration_ids" colspan="4" nolabel="1" readonly="1">
99                             <form string="Registration">
100                                 <field name="name"/>
101                                 <field name="date" string="Date"/>
102                                 <field name="partner_id" required="1" on_change="onchange_partner_id(partner_id,event_id)"/>
103                                 <field name="partner_invoice_id" on_change="onchange_partner_invoice_id(event_id, partner_invoice_id)"/>
104                                 <group colspan="4" col="4">
105                                     <field name="event_product"/>
106                                     <field name="nb_register"/>
107                                     <field name="unit_price"/>
108                                     <field name="price_subtotal"/>
109                                 </group>
110                                 <group col="8" colspan="4">
111                                     <separator string="" colspan="4"/>
112                                     <newline/>
113                                     <field name="state" select="1" colspan="2"/>
114                                     <button name="button_reg_close" string="Close Registration" states="open" type="object" icon="gtk-close"/>
115                                     <button name="check_confirm" string="Confirm Registration" states="draft" type="object" icon="gtk-apply"/>
116                                     <button name="button_reg_cancel" string="Cancel Registration" states="draft,open" type="object" icon="gtk-cancel"/>
117                                 </group>
118                             </form>
119                             <tree string="Registration">
120                                     <field name="create_date" string="Registration Date"/>
121                                     <field name="partner_id" required="1" string="Partner" on_change="onchange_partner_id(partner_id,event_id)"/>
122                                     <field name="event_product"/>
123                                     <field name="nb_register"/>
124                                     <field name="unit_price"/>
125                                     <field name="price_subtotal"/>
126                                     <field name="state"/>
127                                     <button name="button_reg_close" string="Close Registration" states="open" type="object" icon="gtk-close"/>
128                                     <button name="check_confirm" string="Confirm Registration" states="draft" type="object" icon="gtk-apply"/>
129                                     <button name="button_reg_cancel" string="Cancel Registration" states="draft,open" type="object" icon="gtk-cancel"/>
130                             </tree>
131                         </field>
132                     </page>
133                     <page string="Mailing">
134                         <field name="reply_to" />
135                         <newline/>
136                         <group col="4" colspan="4">
137                             <group col="2" colspan="2">
138                                 <separator string="Auto Registration Email" colspan="4"/>
139                                 <field name="mail_auto_registr" colspan="4"/>
140                                 <group colspan="4" attrs="{'readonly':[('mail_auto_registr','=',False)]}">
141                                     <separator string="Registration Email Body" colspan="4"/>
142                                     <field name="mail_registr" colspan="4" nolabel="1" />
143                                 </group>
144                             </group>
145                             <group col="2" colspan="2">
146                                 <separator string="Auto Confirmation Email" colspan="4"/>
147                                 <field name="mail_auto_confirm" colspan="4"/>
148                                 <group colspan="4" attrs="{'readonly':[('mail_auto_confirm','=',False)]}">
149                                     <separator string="Confirmation Email Body" colspan="4"/>
150                                     <field name="mail_confirm" nolabel="1" colspan="4"/>
151                                 </group>
152                             </group>
153                         </group>
154                     </page>                   
155                     </notebook>
156             </form>
157             </field>
158         </record>
159
160         <!-- Event tree view -->
161
162         <record model="ir.ui.view" id="view_event_tree">
163             <field name="name">event.event.tree</field>
164             <field name="model">event.event</field>
165             <field name="type">tree</field>
166             <field name="arch" type="xml">
167                 <tree string="Events" colors="red:register_min>register_current;black:register_min&lt;=register_current">
168                     <field name="name" string="Name"/>
169                     <field name="main_speaker_id"/>
170                     <field name="language"/>
171                     <field name="type"/>
172                     <field name="date_begin"/>
173                     <field name="date_end"/>
174                     <field name="register_min"/>
175                     <field name="register_current"/>
176                     <field name="state"/>
177                     <button string="Confirm Event" help="Confirm Event" name="button_confirm" states="draft" type="object" icon="gtk-apply"/>
178                     <button string="Cancel Event" help="Cancel Event" name="button_cancel" states="draft,confirm" type="object" icon="gtk-cancel"/>
179                     <button string="Event Done" help="Event Done" name="button_done" states="confirm" type="object" icon="gtk-jump-to"/>
180                     <button string="Set To Draft" help="Set To Draft" name="button_draft" states="confirm,cancel,done" type="object" icon="gtk-convert"/>
181                 </tree>
182             </field>
183         </record>
184
185       <!-- Events  Calendar  View -->
186
187         <record id="view_event_calendar" model="ir.ui.view">
188             <field name="name">event.event.calendar</field>
189             <field name="model">event.event</field>
190             <field name="type">calendar</field>
191             <field eval="2" name="priority"/>
192             <field name="arch" type="xml">
193                 <calendar color="user_id" date_start="date_begin" string="Event Organization">
194                     <field name="name"/>
195                     <field name="type" widget="selection"/>
196                 </calendar>
197             </field>
198         </record>
199
200         <!-- Event Graph view -->
201
202         <record model="ir.ui.view" id="view_event_graph">
203             <field name="name">Event Graph</field>
204             <field name="model">event.event</field>
205             <field name="type">graph</field>
206             <field name="arch" type="xml">
207                 <graph string="Event by Registration" type="bar" orientation="horizontal">
208                     <field name="name"/>
209                     <field name="register_current" operator="+"/>
210                     <field name="register_prospect" operator="+"/>
211                 </graph>
212             </field>
213         </record>
214
215     <!-- Event Search View -->
216
217         <record model="ir.ui.view" id="view_event_search">
218             <field name="name">Events</field>
219             <field name="model">event.event</field>
220             <field name="type">search</field>
221             <field name="arch" type="xml">
222                 <search string="Events">
223                     <group col="10" colspan="4">
224                         <filter icon="terp-check" string="Current" name="draft" domain="[('state','in',('draft', 'confirm'))]" help="Current Events"/>
225                         <filter icon="terp-camera_test" string="Open" domain="[('state','=','confirm')]" help="Open Events"/>
226                         <separator orientation="vertical"/>
227                         <field name="name" string="Event" select="1"/>
228                         <field name="state" select="1"/>
229                         <field name="user_id" widget="selection">
230                                <filter icon="terp-personal"
231                                     string="My Events"
232                                     help="My Events"
233                                     domain="[('user_id','=',uid)]"/>
234                         </field>
235                         <field name="date_begin" select="1"/>
236                     </group>
237                     <newline/>
238                     <group expand="0" string="Group By..." colspan="4" col="12">
239                         <filter string="Event Type" icon="terp-crm"  context="{'group_by':'type'}"/>
240                         <filter string="state" icon="terp-stock_effects-object-colorize" context="{'group_by':'state'}"/>
241                         <separator orientation="vertical"/>
242                         <filter string="Responsible"  icon="terp-personal" context="{'group_by': 'user_id'}"/>
243                         <separator orientation="vertical"/>
244                         <filter string="Creation" icon="terp-go-month"
245                             domain="[]" context="{'group_by':'date_begin'}"/>
246                     </group>
247                 </search>
248             </field>
249         </record>
250
251     <!-- Events Organisation/CONFIGURATION/EVENTS  -->
252
253        <record model="ir.actions.act_window" id="action_event_view">
254            <field name="name">Events</field>
255            <field name="type">ir.actions.act_window</field>
256            <field name="res_model">event.event</field>
257            <field name="view_type">form</field>
258            <field name="view_mode">tree,form,calendar,graph</field>
259            <field name="context">{"search_default_draft": "1"}</field>
260            <field name="search_view_id" ref="view_event_search"/>
261        </record>
262
263       <act_window
264             id="act_event_list_register_event"
265             name="Registration"
266             res_model="event.registration"
267             src_model="event.event"
268             view_mode="tree,form,calendar,graph"
269             domain="[('event_id', '=', active_id)]"
270             view_type="form"/>
271
272       <act_window
273             id="act_register_event_partner"
274             name="Subscribe"
275             res_model="event.registration"
276             src_model="res.partner"
277             view_mode="tree,form,calendar,graph"
278             domain="[('partner_id', '=', active_id)]"
279             view_type="form"/>
280
281        <menuitem name="Events" id="menu_event_event" action="action_event_view" parent="base.menu_event_main" />
282
283     <!-- EVENTS/REGISTRATIONS/EVENTS  -->
284
285
286         <record model="ir.ui.view" id="view_event_registration_tree">
287             <field name="name">event.registration.tree</field>
288             <field name="model">event.registration</field>
289             <field name="type">tree</field>
290             <field name="arch" type="xml">
291                 <tree string="Registration">
292                     <field name="date" string="Date"/>
293                     <field name="event_id"/>
294                     <field name="partner_id"/>
295                     <field name="nb_register"/>
296                     <field name="price_subtotal"/>
297                     <field name="state"/>
298                     <button name="button_reg_close" string="Close Registration" states="open" type="object" icon="gtk-close"/>
299                     <button name="check_confirm" string="Confirm Registration" states="draft" type="object" icon="gtk-apply"/>
300                     <button name="button_reg_cancel" string="Cancel Registration" states="draft,open" type="object" icon="gtk-cancel"/>
301                 </tree>
302             </field>
303         </record>
304
305         <record model="ir.ui.view" id="view_event_registration_form">
306             <field name="name">event.registration.form</field>
307             <field name="model">event.registration</field>
308             <field name="type">form</field>
309             <field name="arch" type="xml">
310                 <form string="Registration">
311                     <group col="6" colspan="4">
312                         <field name="event_id" on_change="onchange_event(event_id, partner_invoice_id)" domain="[('state','in',('draft','confirm'))]"/>
313                         <field name="create_date" string="Registration Date"/>
314                         <field name="name"/>
315                         <field name="partner_id" required="1" on_change="onchange_partner_id(partner_id,event_id)" />
316                         <field name="user_id"/>
317                         <field name="tobe_invoiced"/>
318                     </group>
319                     <notebook colspan="4">
320                         <page string="Registration">
321                             <field name="date" />
322                             <field name="date_deadline" />
323                             <group colspan="2" col="2">
324                                 <separator string="Registration Cost" colspan="4"/>
325                                 <field name="nb_register"/>
326                                 <field name="unit_price"/>
327                                 <field name="price_subtotal"/>
328                             </group>
329                             <group colspan="2" col="2" attrs="{'invisible':[('tobe_invoiced','=',False)]}">
330                                 <separator string="Invoice" colspan="4"/>
331                                 <field name="event_product" attrs="{'required':[('tobe_invoiced','=',True)]}"/>
332                                 <field name="partner_invoice_id" attrs="{'required':[('tobe_invoiced','=',True)]}" on_change="onchange_partner_invoice_id(event_id, partner_invoice_id)"/>
333                                 <field name="invoice_id"/>                                
334                            </group>
335                             <separator string="Description" colspan="4"/>
336                             <field name="description" colspan="4" nolabel="1"/>
337                             <separator string="" colspan="4"/>
338                             <group col="8" colspan="4">                                
339                                 <field name="state" select="1" colspan="2"/>
340                                 <button name="button_reg_close" string="Close Registration" states="open" type="object" icon="gtk-close"/>
341                                 <button name="check_confirm" string="Confirm Registration" states="draft" type="object" icon="gtk-apply"/>
342                                 <button name="button_reg_cancel" string="Cancel Registration" states="draft,open" type="object" icon="gtk-cancel"/>
343                             </group>
344                         </page>
345                         <page string="Extra Info">
346                             <separator string="Contact" colspan="4"/>
347                             <field name="contact_id" on_change="onchange_contact_id(contact_id, partner_id)" />
348                             <field name="email_from"/>
349                             <field name="badge_ids" colspan="4" nolabel="1">
350                                 <tree string="Badges" editable="bottom">
351                                     <field name="name"/>
352                                     <field name="title"/>
353                                     <field name="address_id"/>
354                                 </tree>
355                                 <form string="Badges">
356                                     <field name="name"/>
357                                     <field name="title"/>
358                                     <field name="address_id"/>
359                                 </form>
360                             </field>
361                             <group col="2" colspan="2" groups="base.group_extended">
362                                <separator string="Dates" colspan="2"/>                               
363                                <field name="date_closed"/>
364                             </group>
365                             <group col="2" colspan="2" groups="base.group_extended">
366                                <separator string="Misc" colspan="2"/>
367                                <field name="id"/>
368                                <field name="active"/>
369                             </group>
370                         </page>
371                         <page string="Emails" groups="base.group_extended">
372                             <group colspan="4">
373                                  <field colspan="4" name="email_cc" string="CC" widget="char" size="512"/>
374                             </group>
375                             <field name="message_ids" colspan="4" nolabel="1" mode="tree,form">
376                                 <tree string="Communication history">
377                                     <field name="display_text" string="History Information"/>
378                                     <button
379                                         string="Reply"
380                                         name="%(crm.action_crm_send_mail)d"
381                                         context="{'mail':'reply', 'model': 'event.registration', 'include_original' : True}"
382                                         icon="terp-mail-replied" type="action" />
383                                 </tree>
384                                 <form string="Communication history">
385                                     <group col="4" colspan="4">
386                                         <field name="email_from"/>
387                                         <field name="date"/>
388                                         <field name="email_to" widget="char" size="512"/>
389                                         <field name="email_cc" widget="char" size="512"/>
390                                         <field name="name" colspan="4" widget="char" size="512"/>
391                                     </group>
392                                     <notebook colspan="4">
393                                         <page string="Details">
394                                             <field name="description" colspan="4" nolabel="1"/>
395                                         </page>
396                                         <page string="Attachments">
397                                             <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/>
398                                         </page>
399                                     </notebook>
400                                     <button colspan="4"
401                                         string="Reply"
402                                         name="%(crm.action_crm_send_mail)d"
403                                         context="{'mail':'reply', 'model': 'event.registration', 'include_original' : True}"
404                                         icon="terp-mail-replied" type="action" />
405                                 </form>
406                             </field>
407                               <button colspan="4" string="Send New Email"
408                                 name="%(crm.action_crm_send_mail)d"
409                                 context="{'mail':'new', 'model': 'event.registration'}"
410                                 icon="terp-mail-message-new" type="action" />
411                            </page>
412                     </notebook>
413                 </form>
414             </field>
415         </record>
416
417  <!-- Calendar view of event registration -->
418
419         <record id="view_event_registration_calendar" model="ir.ui.view">
420             <field name="name">event.registration.calendar</field>
421             <field name="model">event.registration</field>
422             <field name="type">calendar</field>
423             <field eval="2" name="priority"/>
424             <field name="arch" type="xml">
425                 <calendar color="event_id" date_start="date" date_delay="duration" string="Event Registration">
426                     <field name="event_id"/>
427                     <field name="partner_invoice_id"/>
428                 </calendar>
429             </field>
430         </record>
431
432         <record model="ir.ui.view" id="view_event_registration_graph">
433             <field name="name">Registration Graph</field>
434             <field name="model">event.registration</field>
435             <field name="type">graph</field>
436             <field name="arch" type="xml">
437                 <graph string="Registration" type="bar" orientation="horizontal">
438                     <field name="event_id"/>
439                     <field name = "nb_register" operator="+"/>
440                 </graph>
441             </field>
442         </record>
443
444
445 <!-- Search view of event registration form-->
446
447         <record model="ir.ui.view" id="view_registration_search">
448             <field name="name">Registrations</field>
449             <field name="model">event.registration</field>
450             <field name="type">search</field>
451             <field name="arch" type="xml">
452                 <search string="Event Registration">
453                     <group col="12" colspan="4">
454                         <filter icon="terp-check" string="Current" name="draft" domain="[('state','in',('draft', 'open'))]" help="Current Registrations"/>
455                         <filter icon="terp-camera_test" string="Open" domain="[('state','=','open')]" help="Open Registrations"/>
456                         <separator orientation="vertical"/>
457                         <field name="partner_id" />
458                         <field name="event_id" widget="selection"/>
459                         <field name="state" select="1"/>
460
461                         <field name="user_id" widget="selection">
462                               <filter icon="terp-personal"
463                                     string="My Registration"
464                                     help="My Registration"
465                                     domain="[('user_id','=',uid)]"/>
466                         </field>
467                     </group>
468                     <newline/>
469                     <group expand="0" string="Group By...">
470                         <filter string="Event" icon="terp-crm" domain="[]" context="{'group_by':'event_id'}"/>
471                         <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
472                         <separator orientation="vertical"/>
473                         <filter string="Partner" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
474                         <filter string="Responsible"  icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
475                    </group>
476                 </search>
477             </field>
478         </record>
479
480         <record model="ir.actions.act_window" id="action_registration">
481           <field name="name">Registrations</field>
482           <field name="res_model">event.registration</field>
483           <field name="view_type">form</field>
484           <field name="domain"></field>
485           <field name="view_mode">tree,form,calendar,graph</field>
486           <field name="context">{"search_default_draft": "1"}</field>
487           <field name="search_view_id" ref="view_registration_search"/>
488         </record>
489
490         <menuitem
491             name="Registrations"
492             id="menu_action_registration" parent="base.menu_event_main"
493             action="action_registration"/>
494         <menuitem name="Reporting" id="base.menu_report_association" parent="base.marketing_menu" sequence="20"/>
495     </data>
496 </openerp>