5 <record id="act_event_list_register_event" model="ir.actions.act_window">
6 <field name="res_model">event.registration</field>
7 <field name="view_type">form</field>
8 <field name="name">Registrations</field>
9 <field name="view_mode">tree,form,calendar,graph</field>
10 <field name="context">{'search_default_event_id': active_id, 'default_event_id': active_id}</field>
12 <menuitem name="Events" parent="base.marketing_menu" id="event_main_menu" sequence="2"/>
16 <!-- EVENTS/CONFIGURATION/TYPE OF EVENTS -->
17 <record model="ir.ui.view" id="view_event_type_form">
18 <field name="name">Event type</field>
19 <field name="model">event.type</field>
20 <field name="arch" type="xml">
21 <form string="Event Type">
24 <field name="default_reply_to"/>
25 <field name="default_registration_min"/>
26 <field name="default_email_event" domain="[('model_id.model','=','event.registration')]"/>
27 <field name="default_registration_max"/>
28 <field name="default_email_registration" domain="[('model_id.model','=','event.registration')]"/>
34 <record model="ir.ui.view" id="view_event_type_tree">
35 <field name="name">Event type</field>
36 <field name="model">event.type</field>
37 <field name="arch" type="xml">
38 <tree string="Event Type">
44 <record model="ir.actions.act_window" id="action_event_type">
45 <field name="name">Events Types</field>
46 <field name="res_model">event.type</field>
47 <field name="view_type">form</field>
49 <menuitem name="Events" id="event_configuration" parent="base.menu_marketing_config_root" sequence="1"/>
50 <menuitem name="Events Types" id="menu_event_type" action="action_event_type" parent="event.event_configuration" groups="base.group_no_one"/>
52 <!-- Events Organisation/CONFIGURATION/EVENTS -->
53 <record model="ir.ui.view" id="view_event_form">
54 <field name="name">Events</field>
55 <field name="model">event.event</field>
56 <field name="arch" type="xml">
57 <form string="Events">
59 <button string="Confirm Event" name="button_confirm" states="draft" type="object" class="oe_highlight" groups="base.group_user"/>
60 <button string="Finish Event" name="button_done" states="confirm" type="object" class="oe_highlight" groups="base.group_user"/>
61 <button string="Set To Draft" name="button_draft" states="cancel,done" type="object" groups="base.group_user"/>
62 <button string="Cancel Event" name="button_cancel" states="draft,confirm" type="object" groups="base.group_user"/>
63 <field name="state" widget="statusbar" statusbar_visible="draft,confirm,done"/>
66 <div class="oe_title">
67 <label for="name" class="oe_edit_only"/>
68 <h1><field name="name"/></h1>
70 <div class="oe_right oe_button_box" groups="base.group_user">
71 <button name="%(event.act_event_list_register_event)d"
73 class="oe_stat_button oe_inline"
75 help="Register with this event">
76 <field name="count_registrations" widget="statinfo" string="Registrations"/>
79 <group name="main_field_group">
81 <field name="address_id" context="{'show_address': 1}" options='{"always_reload": True}'/>
82 <field name="organizer_id"/>
83 <field name="company_id" groups="base.group_multi_company"/>
86 <field name="user_id"/>
88 <field name="date_begin"/>
89 <field name="date_end"/>
90 <field name="date_tz" />
94 <page string="Registrations">
97 <field name="auto_confirm" invisible="1"/>
98 <field name="seats_min" attrs="{'invisible':[('auto_confirm','=', True)]}"/>
99 <field name="seats_availability" widget='radio'/>
100 <field name="seats_max" attrs="{'invisible':[('seats_availability','=','unlimited')]}"/>
104 <page string='Event Details' groups="base.group_no_one">
106 <field name="reply_to"/>
107 <field name="email_registration_id"/>
108 <field name="email_confirmation_id"/>
113 <div class="oe_chatter">
114 <field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
115 <field name="message_ids" widget="mail_thread"/>
121 <!-- Event tree view -->
122 <record model="ir.ui.view" id="view_event_tree">
123 <field name="name">event.event.tree</field>
124 <field name="model">event.event</field>
125 <field name="arch" type="xml">
126 <tree string="Events" fonts="bold:message_unread==True" colors="red:(seats_min and seats_min>seats_reserved) or (seats_max and seats_max<seats_reserved);grey:state=='cancel'">
127 <field name="name" string="Name"/>
128 <field name="type" string="Event Category"/>
129 <field name="date_begin"/>
130 <field name="date_end"/>
131 <field name="seats_reserved"/>
132 <field name="seats_min"/>
133 <field name="seats_max" invisible="1"/>
134 <field name="user_id"/>
135 <field name="state"/>
136 <field name="message_unread" invisible="1"/>
141 <!-- Event Kanban View -->
142 <record model="ir.ui.view" id="view_event_kanban">
143 <field name="name">event.event.kanban</field>
144 <field name="model">event.event</field>
145 <field name="arch" type="xml">
147 <field name="user_id"/>
148 <field name="country_id"/>
149 <field name="date_begin"/>
150 <field name="date_end"/>
151 <field name="seats_unconfirmed"/>
152 <field name="seats_reserved"/>
153 <field name="color"/>
155 <t t-name="kanban-box">
156 <div t-attf-class="oe_kanban_color_#{kanban_getcolor(record.color.raw_value)} oe_kanban_card oe_kanban_global_click oe_event_kanban_view" >
157 <div class="oe_dropdown_toggle oe_dropdown_kanban">
158 <span class="oe_e">í</span>
159 <ul class="oe_dropdown_menu">
160 <t t-if="widget.view.is_action_enabled('edit')">
161 <li><a type="edit">Event Settings</a></li>
163 <t t-if="widget.view.is_action_enabled('delete')">
164 <li><a type="delete">Delete</a></li>
166 <li><ul class="oe_kanban_colorpicker" data-field="color"/></li>
169 <div class="oe_module_vignette row">
170 <div class="col-md-3">
171 <div class="oe_module_icon">
172 <div class="oe_event_date_thumb oe_event_date"><t t-esc="record.date_begin.raw_value.getDate()"/></div>
173 <div class="oe_event_date_thumb oe_event_month_year">
174 <t t-esc="record.date_begin.raw_value.toString('MMM')"/>
175 <t t-esc="record.date_begin.raw_value.getFullYear()"/>
177 <div class="oe_event_date_thumb oe_event_time"><t t-esc="record.date_begin.raw_value.toString('hh:mm tt')"/></div>
180 <div class="col-md-8">
181 <h4><field name="name"/></h4>
184 <t t-if="record.country_id.raw_value"> <b> <field name="country_id"/> </b> <br/> </t>
185 <i class="fa fa-clock-o" t-att-title="record.date_begin.raw_value.toString('hh:mm tt')"/>
186 <b>From</b> <t t-esc="record.date_begin.raw_value.toString('MM/dd/yyyy')"/>
187 <b>To</b> <t t-esc="record.date_end.raw_value.toString('MM/dd/yyyy')"/>
191 <a name="%(act_event_list_register_event)d" type="action">
192 <t t-esc="record.seats_reserved.raw_value" > Attendees</t>
193 <t t-if="(record.seats_reserved.raw_value + record.seats_unconfirmed.raw_value) > 0 ">/
194 <t t-esc="record.seats_reserved.raw_value + record.seats_unconfirmed.raw_value"/> Expected
197 <t t-if="record.seats_reserved.raw_value > 0">
198 <a name="action_event_registration_report" type="object" >(Report)</a>
210 <!-- Events Calendar View -->
211 <record id="view_event_calendar" model="ir.ui.view">
212 <field name="name">event.event.calendar</field>
213 <field name="model">event.event</field>
214 <field eval="2" name="priority"/>
215 <field name="arch" type="xml">
216 <calendar color="type" date_start="date_begin" date_stop="date_end" string="Event Organization">
223 <!-- Event Search View -->
224 <record model="ir.ui.view" id="view_event_search">
225 <field name="name">Events</field>
226 <field name="model">event.event</field>
227 <field name="arch" type="xml">
228 <search string="Events">
229 <field name="name" string="Events"/>
230 <filter string="Unread Messages" name="message_unread" domain="[('message_unread','=',True)]"/>
232 <filter string="Unconfirmed" name="draft" domain="[('state','=','draft')]" help="Events in New state"/>
233 <filter string="Confirmed" domain="[('state','=','confirm')]" help="Confirmed events"/>
235 <filter string="My Events" help="My Events" domain="[('user_id','=',uid)]"/>
237 <filter string="Upcoming" name="upcoming" domain="[('date_begin','>=', time.strftime('%%Y-%%m-%%d 00:00:00'))]" help="Upcoming events from today" />
239 <field name="user_id"/>
240 <group expand="0" string="Group By">
241 <filter string="Responsible" context="{'group_by': 'user_id'}"/>
242 <filter string="Event Type" context="{'group_by':'type'}"/>
243 <filter string="Status" context="{'group_by':'state'}"/>
244 <filter string="Start Month" domain="[]" context="{'group_by':'date_begin'}"/>
251 <!-- Events Organisation/CONFIGURATION/EVENTS -->
252 <record model="ir.actions.act_window" id="action_event_view">
253 <field name="name">Events</field>
254 <field name="type">ir.actions.act_window</field>
255 <field name="res_model">event.event</field>
256 <field name="view_type">form</field>
257 <field name="view_mode">kanban,calendar,tree,form</field>
258 <field name="context">{"search_default_upcoming":1}</field>
259 <field name="search_view_id" ref="view_event_search"/>
260 <field name="help" type="html">
261 <p class="oe_view_nocontent_create">
262 Click to add a new event.
264 Odoo helps you schedule and efficiently organize your events:
265 track subscriptions and participations, automate the confirmation emails,
272 id="act_register_event_partner"
274 res_model="event.registration"
275 src_model="res.partner"
276 view_mode="tree,form,calendar,graph"
277 context="{'search_default_partner_id': [active_id], 'default_partner_id': active_id}"
280 <menuitem name="Events" id="menu_event_event" action="action_event_view" parent="event.event_main_menu" />
282 <!-- EVENTS/REGISTRATIONS/EVENTS -->
285 <record model="ir.ui.view" id="view_event_registration_tree">
286 <field name="name">event.registration.tree</field>
287 <field name="model">event.registration</field>
288 <field name="arch" type="xml">
289 <tree string="Registration" fonts="bold:message_unread==True">
290 <field name="create_date"/>
291 <field name="partner_id"/>
293 <field name="email"/>
294 <field name="event_id" />
295 <field name="nb_register"/>
296 <field name="user_id" invisible="1"/>
297 <field name="origin"/>
298 <field name="state"/>
299 <field name="message_unread" invisible="1"/>
300 <button name="registration_open" string="Confirm Registration" states="draft" type="object" icon="gtk-apply"/>
301 <button name="button_reg_close" string="Attended the Event" states="open" type="object" icon="gtk-jump-to"/>
302 <button name="button_reg_cancel" string="Cancel Registration" states="draft,open" type="object" icon="gtk-cancel"/>
307 <record model="ir.ui.view" id="view_event_registration_form">
308 <field name="name">event.registration.form</field>
309 <field name="model">event.registration</field>
310 <field name="arch" type="xml">
311 <form string="Event Registration">
313 <button name="registration_open" string="Confirm" states="draft" type="object" class="oe_highlight"/>
314 <button name="button_reg_close" string="Attended" states="open" type="object" class="oe_highlight"/>
315 <button string="Set To Unconfirmed" name="do_draft" states="cancel,done" type="object" />
316 <button name="button_reg_cancel" string="Cancel Registration" states="draft,open" type="object"/>
317 <field name="state" nolabel="1" colspan="2" widget="statusbar" statusbar_visible="draft,open,done"/>
319 <sheet string="Registration">
320 <label for="event_id" class="oe_edit_only"/>
322 <field name="event_id" domain="[('state','in',('draft','confirm'))]"/>
326 <field name="partner_id" attrs="{'readonly':[('state','!=', 'draft')]}"/>
328 <field name="phone"/>
331 <field name="email" class="oe_inline"/>
332 <button class="oe_inline oe_right" string="Send Email"
333 name="%(mail.action_email_compose_message_wizard)d"
334 icon="terp-mail-message-new" context= '{"default_email_to":email}' type="action"/>
338 <field name="nb_register"/>
339 <field name="user_id" attrs="{'readonly':[('state','!=', 'draft')]}" context="{'default_groups_ref': ['base.group_user', 'base.group_partner_manager', 'event.group_event_user']}"/>
341 <group groups="base.group_no_one">
342 <field name="create_date"/>
343 <field name="date_closed"/>
347 <div class="oe_chatter">
348 <field name="message_follower_ids" widget="mail_followers"/>
349 <field name="message_ids" widget="mail_thread"/>
355 <!-- Calendar view of event registration -->
356 <record id="view_event_registration_calendar" model="ir.ui.view">
357 <field name="name">event.registration.calendar</field>
358 <field name="model">event.registration</field>
359 <field eval="2" name="priority"/>
360 <field name="arch" type="xml">
361 <calendar color="event_id" date_start="event_begin_date" date_stop="event_end_date" string="Event Registration">
362 <field name="event_id"/>
368 <record model="ir.ui.view" id="view_event_registration_graph">
369 <field name="name">Registration Graph</field>
370 <field name="model">event.registration</field>
371 <field name="arch" type="xml">
372 <graph string="Registration" type="bar">
373 <field name="event_id" type="row"/>
374 <field name= "nb_register" type="measure"/>
380 <!-- Search view of event registration -->
381 <record model="ir.ui.view" id="view_registration_search">
382 <field name="name">Registrations</field>
383 <field name="model">event.registration</field>
384 <field name="arch" type="xml">
385 <search string="Event Registration">
386 <field name="name" string="Participant" filter_domain="['|','|',('name','ilike',self),('email','ilike',self),('origin','ilike',self)]"/>
387 <filter string="Unread Messages" name="message_unread" domain="[('message_unread','=',True)]"/>
389 <filter string="New" name="draft" domain="[('state','=','draft')]" help="Registrations in unconfirmed state"/>
390 <filter string="Confirmed" domain="[('state','=','open')]" help="Confirmed registrations"/>
392 <filter string="My Registrations" help="My Registrations" domain="[('user_id','=',uid)]"/>
393 <field name="event_id"/>
394 <field name="user_id"/>
395 <field name="partner_id"/>
396 <group expand="0" string="Group By">
397 <filter string="Responsible" domain="[]" context="{'group_by':'user_id'}"/>
398 <filter string="Partner" domain="[]" context="{'group_by':'partner_id'}"/>
399 <filter string="Event" name="group_event" domain="[]" context="{'group_by':'event_id'}"/>
400 <filter string="Status" domain="[]" context="{'group_by':'state'}"/>
401 <filter string="Registration Day" domain="[]" context="{'group_by': 'create_date:day'}"/>
402 <filter string="Registration Month" domain="[]" context="{'group_by': 'create_date:month'}"/>
408 <record model="ir.actions.act_window" id="action_registration">
409 <field name="name">Registrations</field>
410 <field name="res_model">event.registration</field>
411 <field name="view_type">form</field>
412 <field name="domain"></field>
413 <field name="view_mode">tree,form,calendar,graph</field>
414 <field name="context">{}</field>
415 <field name="search_view_id" ref="view_registration_search"/>
418 <menuitem name="Registrations"
419 id="menu_action_registration" parent="event.event_main_menu"
420 action="action_registration" groups="event.group_event_manager,event.group_event_user"/>
422 <menuitem name="Reporting" id="base.menu_report_association" parent="event_main_menu" sequence="20"/>