[MERGE] lp:~openerp-dev/openobject-addons/trunk-clean-search-tools-event-tch
[odoo/odoo.git] / addons / event / event_view.xml
1 <?xml version="1.0"?>
2 <openerp>
3     <data>
4       <act_window
5             id="act_event_list_register_event"
6             name="Registration"
7             res_model="event.registration"
8             src_model="event.event"
9             view_mode="calendar,tree,form,graph"
10             context="{'search_default_event_id': active_id, 'default_event_id': active_id}"
11             view_type="form"/>
12         <menuitem  name="Events" id="event_main_menu"/>
13         <menuitem name="Events Organisation" id="base.menu_event_main" parent="event_main_menu" />
14
15     <!-- EVENTS  -->
16
17     <!-- EVENTS/CONFIGURATION/TYPE OF EVENTS -->
18         <record model="ir.ui.view" id="view_event_type_form">
19             <field name="name">Event type</field>
20             <field name="model">event.type</field>
21             <field name="type">form</field>
22             <field name="arch" type="xml">
23                 <form string="Event Type">
24                     <group col="4">
25                         <field name="name"/>
26                         <field name="default_reply_to"/>
27                         <field name="default_registration_min"/>
28                         <field name="default_email_event" domain="[('model_id.model','=','event.registration')]"/>
29                         <field name="default_registration_max"/>
30                         <field name="default_email_registration" domain="[('model_id.model','=','event.registration')]"/>
31                     </group>
32                 </form>
33             </field>
34         </record>
35
36         <record model="ir.ui.view" id="view_event_type_tree">
37             <field name="name">Event type</field>
38             <field name="model">event.type</field>
39             <field name="type">tree</field>
40             <field name="arch" type="xml">
41                 <tree string="Event Type">
42                     <field name="name"/>
43                 </tree>
44             </field>
45         </record>
46
47         <record model="ir.actions.act_window" id="action_event_type">
48             <field name="name">Types of Events</field>
49             <field name="res_model">event.type</field>
50             <field name="view_type">form</field>
51         </record>
52         <menuitem name="Configuration" id="base.menu_marketing_config_root" parent="event_main_menu" sequence="30"/>
53         <menuitem name="Types of Events" id="menu_event_type" action="action_event_type" parent="base.menu_marketing_config_root" groups="base.group_no_one"/>
54
55     <!-- Events Organisation/CONFIGURATION/EVENTS -->
56
57         <!-- Event Read/Unread actions -->
58         <record id="actions_server_event_event_unread" model="ir.actions.server">
59             <field name="name">Mark unread</field>
60             <field name="condition">True</field>
61             <field name="type">ir.actions.server</field>
62             <field name="model_id" ref="model_event_event"/>
63             <field name="state">code</field>
64             <field name="code">self.message_check_and_set_unread(cr, uid, context.get('active_ids'), context=context)</field>
65         </record>
66         <record id="action_event_event_unread" model="ir.values">
67             <field name="name">action_event_event_unread</field>
68             <field name="action_id" ref="actions_server_event_event_unread"/>
69             <field name="value" eval="'ir.actions.server,' + str(ref('actions_server_event_event_unread'))" />
70             <field name="key">action</field>
71             <field name="model_id" ref="model_event_event" />
72             <field name="model">event.event</field>
73             <field name="key2">client_action_multi</field>
74         </record>
75
76         <record id="actions_server_event_event_read" model="ir.actions.server">
77             <field name="name">Mark read</field>
78             <field name="condition">True</field>
79             <field name="type">ir.actions.server</field>
80             <field name="model_id" ref="model_event_event"/>
81             <field name="state">code</field>
82             <field name="code">self.message_check_and_set_read(cr, uid, context.get('active_ids'), context=context)</field>
83         </record>
84         <record id="action_event_event_read" model="ir.values">
85             <field name="name">action_event_event_read</field>
86             <field name="action_id" ref="actions_server_event_event_read"/>
87             <field name="value" eval="'ir.actions.server,' + str(ref('actions_server_event_event_read'))" />
88             <field name="key">action</field>
89             <field name="model_id" ref="model_event_event" />
90             <field name="model">event.event</field>
91             <field name="key2">client_action_multi</field>
92         </record>
93
94         <record model="ir.ui.view" id="view_event_form">
95             <field name="name">Events</field>
96             <field name="model">event.event</field>
97             <field name="type">form</field>
98             <field name="arch" type="xml">
99                 <form string="Events" version="7.0">
100                     <header>
101                         <button string="Confirm Event" name="button_confirm" states="draft" type="object" class="oe_highlight"/>
102                         <button string="Event Ended" name="button_done" states="confirm" type="object" class="oe_highlight"/>
103                         <button string="Set To Draft" name="button_draft" states="cancel,done" type="object" />
104                         <button string="Cancel Event" name="button_cancel" states="draft,confirm" type="object"/>
105                         <field name="state" widget="statusbar" statusbar_visible="draft,confirm,done"/>
106                     </header>
107                     <sheet>
108                         <div class="oe_right oe_button_box">
109                             <button name="%(event.act_event_list_register_event)d" type="action" string="Registration" icon="gtk-index" help="Register with this event"/>
110                         </div>
111                         <div class="oe_title">
112                             <label for="name" class="oe_edit_only"/>
113                             <h1><field name="name"/></h1>
114                         </div> 
115                         <div>
116                             <h2>From <field name="date_begin" class="oe_inline" /> to <field name="date_end" class="oe_inline"/>
117                             </h2>
118                             <group>
119                                 <group>
120                                     <label for="address_id" string="Location Address"/>
121                                     <div>
122                                         <field name="address_id" widget="many2one_address_google_map" widget_option="{'placeholder':'.oe_google_map'}"/>
123                                         <field name="street" placeholder="Street..."/>
124                                         <div>
125                                              <field name="zip" class="oe_inline" placeholder="Zip"/>
126                                              <field name="city" class="oe_inline" placeholder="City"/>
127                                         </div>
128                                     </div>
129                                 </group>
130                                 <group>
131                                        <field name="type" on_change="onchange_event_type(type,context)"/>
132                                        <field name="register_min"/>
133                                        <field name="register_max"/>
134                                        <label for="register_current" string="Current Registrations"/>
135                                        <div>
136                                            Confirmed: <field name="register_current" class="oe_inline"/>, Unconfirmed: <field name="register_prospect" class="oe_inline"/>
137                                        </div>
138                                    </group>
139                             </group>
140                         </div>
141                         <!-- <div class="oe_right" style="height: 200px"></div> -->
142                         <notebook>
143                             <page string="Event Description">
144                                 <field name="note" colspan="4" nolabel="1"/>
145                             </page>
146                             <page string="Internal Data">
147                                 <group>
148                                     <group>
149                                         <field name="main_speaker_id" domain="[('speaker','=',True)]" context="{'default_speaker':1}"/>
150                                         <field name="speaker_confirmed"/>
151                                     </group>
152                                     <group>
153                                         <field name="register_attended"/>
154                                     </group> 
155                                 </group>
156                                 <field name="registration_ids" colspan="4" nolabel="1" groups="event.group_event_manager,event.group_event_user">
157                                     <tree string="Registration" editable="top">
158                                         <field name="name" />
159                                         <field name="email" />
160                                         <field name="phone"/>
161                                         <field name="nb_register" />
162                                         <field name="state"/>
163                                         <button name="registration_open" string="Confirm Registration" states="draft" type="object" icon="gtk-apply"/>
164                                         <button name="button_reg_close" string="Attented the Event" states="open" type="object" icon="gtk-jump-to"/>
165                                         <button name="button_reg_cancel" string="Cancel Registration" states="draft,open" type="object" icon="gtk-cancel"/>
166                                     </tree>
167                                     <form string="Registration">
168                                         <field name="partner_id" attrs="{'readonly':[('state','!=', 'draft')]}" on_change="onchange_partner_id(partner_id, context)" />
169                                         <field name="name"/>
170                                         <group colspan="4" col="4">
171                                         <field name="email"/>
172                                         <field name="phone"/>
173                                         </group>
174                                         <group colspan="4" col="4">
175                                             <field name="nb_register"/>
176                                         </group>
177                                         <group colspan="4" col="4">
178                                         </group>
179                                             <group col="8" colspan="4">
180                                                 <separator string="" colspan="4"/>
181                                                 <newline/>
182                                                 <field name="state" colspan="2"/>
183                                                 <button name="registration_open" string="Confirm Registration" states="draft" type="object" icon="gtk-apply"/>
184                                                 <button name="button_reg_close" string="Attended the Event" states="open" type="object" icon="gtk-jump-to"/>
185                                                 <button name="button_reg_cancel" string="Cancel Registration" states="draft,open" type="object" icon="gtk-cancel"/>
186                                             </group>
187                                     </form>
188                                 </field>
189                             </page>
190                         </notebook>
191                     </sheet>
192                     <div class="oe_chatter">
193                         <field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
194                     </div>
195                 </form>
196             </field>
197         </record>
198
199         <!-- Event tree view -->
200
201         <record model="ir.ui.view" id="view_event_tree">
202             <field name="name">event.event.tree</field>
203             <field name="model">event.event</field>
204             <field name="type">tree</field>
205             <field name="arch" type="xml">
206                 <tree string="Events" fonts="bold:needaction_pending==True" colors="red:(register_min and register_min&gt;register_current) or (register_max and register_max&lt;register_current);grey:state=='cancel'">
207                     <field name="name" string="Name"/>
208                     <field name="type"/>
209                     <field name="date_begin"/>
210                     <field name="date_end"/>
211                     <field name="register_current"/>
212                     <field name="register_min"/>
213                     <field name="register_max" invisible="1"/>
214                     <field name="main_speaker_id" groups="base.extended"/>
215                     <field name="user_id"/>
216                     <field name="state"/>
217                     <field name="needaction_pending" invisible="1"/>
218                 </tree>
219             </field>
220         </record>
221
222
223         <!-- Event Kanban View -->
224
225     <record model="ir.ui.view" id="view_event_kanban">
226             <field name="name">event.event.kanban</field>
227             <field name="model">event.event</field>
228             <field name="type">kanban</field>
229             <field name="arch" type="xml">
230                 <kanban>
231                     <field name="register_max"/>
232                     <field name="type"/>
233                     <field name="user_id"/>
234                     <field name="register_current"/>
235                     <field name="is_subscribed"/>
236                     <field name="country_id"/>
237                     <field name="date_begin"/>
238                     <field name="state"/>
239                     <field name="register_avail"/>
240                     <templates>
241                     <t t-name="kanban-box">
242                       <div class="oe_module_vignette">
243                         <a type="edit" class="oe_module_icon">
244                            <div class="oe_event_date "><t t-esc="record.date_begin.raw_value.getDate()"/></div>
245                            <div class="oe_event_month_year">
246                              <t t-esc="record.date_begin.raw_value.toString('MMM')"/>
247                              <t t-esc="record.date_begin.raw_value.getFullYear()"/>
248                            </div>
249                            <div class="oe_event_time"><t t-esc="record.date_begin.raw_value.toString('hh:mm tt')"/></div>
250                         </a>
251                         <div class="oe_module_desc">
252                             <h4><a type="edit"><field name="name"/></a></h4>
253                             <p>
254                               <t t-if="record.country_id.raw_value">@<field name="country_id"/><br/></t>
255                               <t t-if="record.user_id.raw_value">Organized by <field name="user_id"/><br/></t>
256                               <t t-if="record.register_avail.raw_value lte 10 and record.register_avail.raw_value gt 0"><i>Only</i></t>
257                               <t t-if="record.register_avail.raw_value == 0"><i>No ticket available.</i></t>
258                               <t t-if="record.register_avail.raw_value != 0">
259                                 <i><b><t t-if="record.register_avail.raw_value != 9999"><field name="register_avail"/></t></b></i>
260                                 <i>
261                                     <t t-if="record.register_avail.raw_value > 1">tickets </t>
262                                     <t t-if="record.register_avail.raw_value == 1 || !record.register_avail.raw_value > 1">ticket </t>
263                                     available.
264                                 </i>
265                               </t>
266                             </p>
267                             <t t-if="record.register_avail.raw_value != 0">
268                               <t t-if="!record.is_subscribed.raw_value">
269                                   <input t-att-id="record.id.raw_value" type="text" name="subscribe" class="no_of_seats" value="1" onchange="document.getElementById('btn_sub' +this.id).setAttribute('data-context',JSON.stringify({'ticket':this.value}))"/>
270                                   <button t-att-id="'btn_sub'+record.id.raw_value" type="object" name="subscribe_to_event" class="oe_mail_button_follow">
271                                   <span >Subscribe</span>
272                                   </button>
273                               </t>
274                             </t>
275                             <t t-if="record.is_subscribed.raw_value">
276                               <button type="object" name="unsubscribe_to_event" class="oe_mail_button_unfollow">
277                                 <span>Subscribed</span>
278                                 <span class="unsubscribe">Unsubscribe</span>
279                               </button>
280                             </t>
281                         </div>
282                       </div>
283                     </t>
284                     </templates>
285                 </kanban>
286             </field>
287         </record>
288
289       <!-- Events  Calendar  View -->
290
291         <record id="view_event_calendar" model="ir.ui.view">
292             <field name="name">event.event.calendar</field>
293             <field name="model">event.event</field>
294             <field name="type">calendar</field>
295             <field eval="2" name="priority"/>
296             <field name="arch" type="xml">
297                 <calendar color="type" date_start="date_begin" date_stop="date_end" string="Event Organization">
298                     <field name="name"/>
299                     <field name="type"/>
300                 </calendar>
301             </field>
302         </record>
303
304         <!-- Event Graph view -->
305
306         <record model="ir.ui.view" id="view_event_graph">
307             <field name="name">Event Graph</field>
308             <field name="model">event.event</field>
309             <field name="type">graph</field>
310             <field name="arch" type="xml">
311                 <graph string="Event by Registration" type="bar" orientation="horizontal">
312                     <field name="name"/>
313                     <field name="register_current" operator="+"/>
314                     <field name="register_prospect" operator="+"/>
315                 </graph>
316             </field>
317         </record>
318
319     <!-- Event Search View -->
320
321         <record model="ir.ui.view" id="view_event_search">
322             <field name="name">Events</field>
323             <field name="model">event.event</field>
324             <field name="type">search</field>
325             <field name="arch" type="xml">
326                 <search string="Events">
327                     <field name="name" string="Events"/>
328                     <field name="type"/>
329                     <field name="user_id"/>
330                     <filter icon="terp-mail-message-new"
331                         string="Inbox" help="Unread messages"
332                         name="needaction_pending"
333                         domain="[('needaction_pending','=',True)]"/>
334                     <separator/>
335                     <filter icon="terp-check" string="Unconfirmed" name="draft" domain="[('state','=','draft')]" help="Events in New state"/>
336                     <filter icon="terp-camera_test" string="Confirmed" domain="[('state','=','confirm')]" help="Confirmed events"/>
337                     <separator/>
338                     <filter icon="terp-personal"
339                               string="My Events"
340                                 help="My Events"
341                               domain="[('user_id','=',uid)]"/>
342                     <separator/>
343                     <filter icon="terp-go-today" string="Upcoming"
344                                 name="upcoming"
345                                 domain="[('date_begin','&gt;=', time.strftime('%%Y-%%m-%%d 00:00:00'))]"
346                                 help="Upcoming events from today" />
347                     <group expand="0" string="Group By...">
348                         <filter string="Responsible"  icon="terp-personal" context="{'group_by': 'user_id'}"/>
349                         <filter string="Event Type" icon="terp-crm"  context="{'group_by':'type'}"/>
350                         <filter string="Status" icon="terp-stock_effects-object-colorize" context="{'group_by':'state'}"/>
351                         <filter string="Starting Date" icon="terp-go-month"
352                             domain="[]" context="{'group_by':'date_begin'}"/>
353                     </group>
354                 </search>
355             </field>
356         </record>
357
358
359         <!-- Events Organisation/CONFIGURATION/EVENTS  -->
360        <record model="ir.actions.act_window" id="action_event_view">
361            <field name="name">Events</field>
362            <field name="type">ir.actions.act_window</field>
363            <field name="res_model">event.event</field>
364            <field name="view_type">form</field>
365            <field name="view_mode">kanban,calendar,tree,form,graph</field>
366            <field name="context">{"search_default_upcoming":1}</field>
367            <field name="search_view_id" ref="view_event_search"/>
368            <field name="help">Event is the low level object used by meeting and others documents that should be synchronized with mobile devices or calendar applications through caldav. Most of the users should work in the Calendar menu, and not in the list of events.</field>
369        </record>
370
371       <act_window
372             id="act_register_event_partner"
373             name="Subscribe"
374             res_model="event.registration"
375             src_model="res.partner"
376             view_mode="tree,form,calendar,graph"
377             context="{'search_default_partner_id': [active_id], 'default_partner_id': active_id}"
378             view_type="form"/>
379
380        <menuitem name="Events" id="menu_event_event" action="action_event_view" parent="base.menu_event_main" />
381
382     <!-- EVENTS/REGISTRATIONS/EVENTS  -->
383
384         <!-- Registration Read/Unread actions -->
385         <record id="actions_server_event_registration_unread" model="ir.actions.server">
386             <field name="name">Mark unread</field>
387             <field name="condition">True</field>
388             <field name="type">ir.actions.server</field>
389             <field name="model_id" ref="model_event_registration"/>
390             <field name="state">code</field>
391             <field name="code">self.message_check_and_set_unread(cr, uid, context.get('active_ids'), context=context)</field>
392         </record>
393         <record id="action_event_registration_unread" model="ir.values">
394             <field name="name">action_event_registration_unread</field>
395             <field name="action_id" ref="actions_server_event_registration_unread"/>
396             <field name="value" eval="'ir.actions.server,' + str(ref('actions_server_event_registration_unread'))" />
397             <field name="key">action</field>
398             <field name="model_id" ref="model_event_registration" />
399             <field name="model">event.registration</field>
400             <field name="key2">client_action_multi</field>
401         </record>
402
403         <record id="actions_server_event_registration_read" model="ir.actions.server">
404             <field name="name">Mark read</field>
405             <field name="condition">True</field>
406             <field name="type">ir.actions.server</field>
407             <field name="model_id" ref="model_event_registration"/>
408             <field name="state">code</field>
409             <field name="code">self.message_check_and_set_read(cr, uid, context.get('active_ids'), context=context)</field>
410         </record>
411         <record id="action_event_registration_read" model="ir.values">
412             <field name="name">action_event_registration_read</field>
413             <field name="action_id" ref="actions_server_event_registration_read"/>
414             <field name="value" eval="'ir.actions.server,' + str(ref('actions_server_event_registration_read'))" />
415             <field name="key">action</field>
416             <field name="model_id" ref="model_event_registration" />
417             <field name="model">event.registration</field>
418             <field name="key2">client_action_multi</field>
419         </record>
420
421         <record model="ir.ui.view" id="view_event_registration_tree">
422             <field name="name">event.registration.tree</field>
423             <field name="model">event.registration</field>
424             <field name="type">tree</field>
425             <field name="arch" type="xml">
426                 <tree string="Registration" fonts="bold:needaction_pending==True">
427                     <field name="create_date"/>
428                     <field name="partner_id"/>
429                     <field name="name"/>
430                     <field name="email"/>
431                     <field name="event_id" />
432                     <field name="nb_register"/>
433                     <field name="user_id"/>
434                     <field name="origin"/>
435                     <field name="state"/>
436                     <field name="needaction_pending" invisible="1"/>
437                 </tree>
438             </field>
439         </record>
440
441         <record model="ir.ui.view" id="view_event_registration_form">
442             <field name="name">event.registration.form</field>
443             <field name="model">event.registration</field>
444             <field name="type">form</field>
445             <field name="arch" type="xml">
446                 <form version="7.0">
447                     <header>
448                         <button name="registration_open" string="Confirm" states="draft" type="object" class="oe_highlight"/>
449                         <button name="button_reg_close" string="Attended" states="open" type="object" class="oe_highlight"/>
450                         <button string="Set To Unconfirmed" name="do_draft" states="cancel,done" type="object" />
451                         <button name="button_reg_cancel" string="Cancel Registration" states="draft,open" type="object"/>
452                         <field name="state" nolabel="1" colspan="2" widget="statusbar" statusbar_visible="draft,open,done"/>
453                     </header>
454                     <sheet string="Registration">
455                         <label for="event_id" class="oe_edit_only"/>
456                         <h1>
457                             <field name="event_id" on_change="onchange_event(event_id, context)" domain="[('state','in',('draft','confirm'))]"/>
458                         </h1>
459                         <group>
460                             <group>
461                                 <field name="partner_id" attrs="{'readonly':[('state','!=', 'draft')]}" on_change="onchange_partner_id(partner_id, context)"/>
462                                 <field name="name"/>
463                                 <field name="phone"/>
464                                 <label for="email"/>
465                                 <div>
466                                     <field name="email" class="oe_inline"/>
467                                     <button class="oe_inline oe_right" string="Send Email"
468                                       name="%(mail.action_email_compose_message_wizard)d"
469                                       icon="terp-mail-message-new" context= '{"default_email_to":email}' type="action"/>
470                                 </div>
471                             </group>
472                             <group>
473                                 <field name="nb_register"/>
474                                 <field name="user_id" attrs="{'readonly':[('state','!=', 'draft')]}"/>
475                             </group>
476                             <group groups="base.group_no_one">
477                                 <field name="create_date"/>
478                                 <field name="date_closed"/>
479                             </group>
480                         </group>
481                     </sheet>
482                     <div class="oe_chatter">
483                         <field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
484                     </div>
485                 </form>
486             </field>
487         </record>
488
489          <!-- Calendar view of event registration -->
490         <record id="view_event_registration_calendar" model="ir.ui.view">
491             <field name="name">event.registration.calendar</field>
492             <field name="model">event.registration</field>
493             <field name="type">calendar</field>
494             <field eval="2" name="priority"/>
495             <field name="arch" type="xml">
496                 <calendar color="event_id" date_start="event_begin_date" date_stop="event_end_date" string="Event Registration">
497                     <field name="event_id"/>
498                     <field name="name"/>
499                 </calendar>
500             </field>
501         </record>
502
503         <record model="ir.ui.view" id="view_event_registration_graph">
504             <field name="name">Registration Graph</field>
505             <field name="model">event.registration</field>
506             <field name="type">graph</field>
507             <field name="arch" type="xml">
508                 <graph string="Registration" type="bar" orientation="horizontal">
509                     <field name="event_id"/>
510                     <field name= "nb_register" operator="+"/>
511                 </graph>
512             </field>
513         </record>
514
515
516         <!-- Search view of event registration -->
517         <record model="ir.ui.view" id="view_registration_search">
518             <field name="name">Registrations</field>
519             <field name="model">event.registration</field>
520             <field name="type">search</field>
521             <field name="arch" type="xml">
522                 <search string="Event Registration">
523                     <field name="name" string="Participant"
524                             filter_domain="['|','|','|',('name','ilike',self),('partner_id','ilike',self),('email','ilike',self),('origin','ilike',self)]"/>
525                     <field name="event_id"/>
526                     <field name="user_id"/>
527                     <filter icon="terp-mail-message-new"
528                             string="Inbox" help="Unread messages"
529                             name="needaction_pending"
530                             domain="[('needaction_pending','=',True)]"/>
531                     <separator/>
532                     <filter icon="terp-check" string="New" name="draft" domain="[('state','=','draft')]" help="Registrations in unconfirmed state"/>
533                     <filter icon="terp-camera_test" string="Confirmed" domain="[('state','=','open')]" help="Confirmed registrations"/>
534                     <separator/>
535                     <filter icon="terp-personal"
536                               string="My Registrations"
537                                 help="My Registrations"
538                               domain="[('user_id','=',uid)]"/>
539                     <group expand="0" string="Group By...">
540                         <filter string="Responsible"  icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
541                         <filter string="Partner" icon="terp-partner" domain="[]" context="{'group_by':'partner_id'}"/>
542                         <filter string="Event" icon="terp-crm" domain="[]" context="{'group_by':'event_id'}"/>
543                         <filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
544                    </group>
545                 </search>
546             </field>
547         </record>
548
549         <record model="ir.actions.act_window" id="action_registration">
550           <field name="name">Registrations</field>
551           <field name="res_model">event.registration</field>
552           <field name="view_type">form</field>
553           <field name="domain"></field>
554           <field name="view_mode">tree,form,calendar,graph</field>
555           <field name="context">{}</field>
556           <field name="search_view_id" ref="view_registration_search"/>
557         </record>view_
558
559         <menuitem
560             name="Registrations"
561             id="menu_action_registration" parent="base.menu_event_main"
562             action="action_registration" groups="event.group_event_manager,event.group_event_user"/>
563
564
565         <menuitem name="Reporting" id="base.menu_report_association" parent="event_main_menu" sequence="20"/>
566     </data>
567 </openerp>