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