[IMP] event: refactored event form view. Usability reviews
[odoo/odoo.git] / addons / website_event_track / views / event_backend.xml
1 <?xml version="1.0"?>
2 <openerp>
3     <data>
4
5         <record id="act_event_list_tracks" model="ir.actions.act_window">
6             <field name="res_model">event.track</field>
7             <field name="name">Event Tracks</field>
8             <field name="view_type">form</field>
9             <field name="view_mode">kanban,tree,form,calendar,graph</field>
10             <field name="context">{'search_default_event_id': active_id, 'default_event_id': active_id, 'group_by': 'stage_id'}</field>
11             <field name="help" type="html">
12               <p class="oe_view_nocontent_create">
13                   Click to add a track.
14               </p><p>
15                   Tracks define the agenda of your event. These can be
16                   a talk, a round table, a meeting, etc.
17               </p>
18             </field>
19         </record>
20
21         <!-- EVENTS/CONFIGURATION/EVENT locations -->
22         <record model="ir.ui.view" id="view_event_location_form">
23             <field name="name">Event Locations</field>
24             <field name="model">event.track.location</field>
25             <field name="arch" type="xml">
26                 <form string="Event Location">
27                     <sheet>
28                         <group>
29                             <field name="name"/>
30                         </group>
31                     </sheet>
32                 </form>
33             </field>
34         </record>
35         <record model="ir.ui.view" id="view_event_location_tree">
36             <field name="name">Event Location</field>
37             <field name="model">event.track.location</field>
38             <field name="arch" type="xml">
39                 <tree string="Event Location">
40                     <field name="name"/>
41                 </tree>
42             </field>
43         </record>
44         <record model="ir.actions.act_window" id="action_event_track_location">
45             <field name="name">Event Locations</field>
46             <field name="res_model">event.track.location</field>
47         </record>
48         <menuitem name="Event Locations" id="menu_event_track_location"
49             action="action_event_track_location" parent="event.event_configuration"
50             groups="base.group_no_one"/>
51
52         <!-- EVENTS/CONFIGURATION/EVENT Stages -->
53         <record model="ir.ui.view" id="view_event_track_stage_form">
54             <field name="name">Event Stages</field>
55             <field name="model">event.track.stage</field>
56             <field name="arch" type="xml">
57                 <form string="Event Stage">
58                     <field name="name"/>
59                 </form>
60             </field>
61         </record>
62         <record model="ir.ui.view" id="view_event_track_stage_tree">
63             <field name="name">Event Stage</field>
64             <field name="model">event.track.stage</field>
65             <field name="arch" type="xml">
66                 <tree string="Event Stage">
67                     <field name="sequence" widget="handle"/>
68                     <field name="name"/>
69                 </tree>
70             </field>
71         </record>
72         <record model="ir.actions.act_window" id="action_event_track_stage">
73             <field name="name">Event Stages</field>
74             <field name="res_model">event.track.stage</field>
75         </record>
76         <menuitem name="Event Stages" id="menu_event_track_stage"
77             action="action_event_track_stage" parent="event.event_configuration"
78             groups="base.group_no_one"/>
79
80         <!-- EVENTS/CONFIGURATION/EVENT Sponsor Types -->
81         <record model="ir.ui.view" id="view_event_sponsor_type_form">
82             <field name="name">Sponsor Types</field>
83             <field name="model">event.sponsor.type</field>
84             <field name="arch" type="xml">
85                 <form string="Event Sponsor Types">
86                     <field name="sequence" widget="handle"/>
87                     <field name="name"/>
88                 </form>
89             </field>
90         </record>
91         <record model="ir.ui.view" id="view_event_sponsor_type_tree">
92             <field name="name">Sponsor Types</field>
93             <field name="model">event.sponsor.type</field>
94             <field name="arch" type="xml">
95                 <tree string="Event Sponsor Type">
96                     <field name="sequence"/>
97                     <field name="name"/>
98                 </tree>
99             </field>
100         </record>
101         <record model="ir.actions.act_window" id="action_event_sponsor_type">
102             <field name="name">Sponsor Types</field>
103             <field name="res_model">event.sponsor.type</field>
104         </record>
105         <menuitem id="menu_event_sponsor_type" action="action_event_sponsor_type" parent="event.event_configuration" groups="base.group_no_one"/>
106
107         <!-- EVENT.SPONSOR VIEWS -->
108         <record model="ir.ui.view" id="view_event_sponsor_tree">
109             <field name="name">event.sponsor.tree</field>
110             <field name="model">event.sponsor</field>
111             <field name="arch" type="xml">
112                 <tree editable="bottom">
113                     <field name="partner_id"/>
114                     <field name="url"/>
115                     <field name="sponsor_type_id"/>
116                 </tree>
117             </field>
118         </record>
119
120         <record model="ir.ui.view" id="view_event_sponsor_search">
121             <field name="name">event.sponsor.search</field>
122             <field name="model">event.sponsor</field>
123             <field name="arch" type="xml">
124                 <search string="Event Sponsors">
125                     <field name="partner_id"/>
126                     <field name="event_id"/>
127                 </search>
128             </field>
129         </record>
130
131         <record model="ir.actions.act_window" id="action_event_sponsor_from_event">
132             <field name="name">Event Tracks</field>
133             <field name="res_model">event.sponsor</field>
134             <field name="view_mode">tree,form</field>
135             <field name="context">{'search_default_event_id': active_id, 'default_event_id': active_id}</field>
136         </record>
137
138         <!-- EVENTS/CONFIGURATION/EVENT Tags -->
139         <record model="ir.ui.view" id="view_event_track_tag_form">
140             <field name="name">Track Tags</field>
141             <field name="model">event.track.tag</field>
142             <field name="arch" type="xml">
143                 <form string="Event Track Tag">
144                     <field name="name"/>
145                 </form>
146             </field>
147         </record>
148         <record model="ir.ui.view" id="view_event_track_tag_tree">
149             <field name="name">Tracks Tag</field>
150             <field name="model">event.track.tag</field>
151             <field name="arch" type="xml">
152                 <tree string="Event Track Tag">
153                     <field name="name"/>
154                 </tree>
155             </field>
156         </record>
157         <record model="ir.actions.act_window" id="action_event_track_tag">
158             <field name="name">Track Tags</field>
159             <field name="res_model">event.track.tag</field>
160         </record>
161         <menuitem id="menu_event_track_tag" action="action_event_track_tag" parent="event.event_configuration" groups="base.group_no_one"/>
162
163
164         <!-- EVENTS/CONFIGURATION/EVENT Tags -->
165         <record model="ir.ui.view" id="view_event_tag_form">
166             <field name="name">Event Tags</field>
167             <field name="model">event.tag</field>
168             <field name="arch" type="xml">
169                 <form string="Event Tag">
170                     <field name="name"/>
171                 </form>
172             </field>
173         </record>
174         <record model="ir.ui.view" id="view_event_tag_tree">
175             <field name="name">Event Tag</field>
176             <field name="model">event.tag</field>
177             <field name="arch" type="xml">
178                 <tree string="Event Tag">
179                     <field name="name"/>
180                 </tree>
181             </field>
182         </record>
183         <record model="ir.actions.act_window" id="action_event_tag">
184             <field name="name">Event Tags</field>
185             <field name="res_model">event.tag</field>
186         </record>
187         <menuitem name="Event Tags" id="menu_event_tag" action="action_event_tag" parent="event.event_configuration" groups="base.group_no_one"/>
188
189         <!-- Events Organisation/CONFIGURATION/EVENTS -->
190
191         <record model="ir.ui.view" id="view_event_form">
192             <field name="name">Event Tracks</field>
193             <field name="inherit_id" ref="event.view_event_form"/>
194             <field name="model">event.event</field>
195             <field name="arch" type="xml">
196                 <xpath expr="//div[@class='oe_right oe_button_box']" position="inside">
197                     <button name="%(act_event_list_tracks)d" 
198                             type="action" 
199                             class="oe_stat_button oe_inline" 
200                             icon="fa-inbox">
201                         <field name="count_tracks" widget="statinfo"/>
202                     </button>
203                     <button name="%(action_event_sponsor_from_event)d"
204                             type="action"
205                             class="oe_stat_button oe_inline"
206                             icon="fa-users">
207                         <field name="count_sponsor" widget="statinfo" class="oe_inline" string="Sponsorships"/>
208                     </button>
209                 </xpath>
210                 <xpath expr="//div[@class='oe_title']" position="inside">
211                     <label for="tag_ids" class="oe_edit_only"/>
212                     <field name="tag_ids" widget="many2many_tags"/>
213                     <div name="event_checkboxes">
214                         <field name="show_menu"/>
215                         <label for="show_menu"/>
216                         <field name="show_tracks"/>
217                         <label for="show_tracks"/>
218                         <field name="show_track_proposal"/>
219                         <label for="show_track_proposal"/>
220                     </div>
221                 </xpath>
222                 <xpath expr="//div[@class='oe_right oe_button_box']" position="inside">
223                 </xpath>
224             </field>
225         </record>
226
227         <!-- Event Tracks -->
228
229         <record model="ir.ui.view" id="view_event_track_kanban">
230             <field name="name">event.track.kanban</field>
231             <field name="model">event.track</field>
232             <field name="arch" type="xml">
233                 <kanban>
234                     <templates>
235                         <field name="color"/>
236                         <field name="priority"/>
237                         <field name="speaker_ids"/>
238                         <t t-name="kanban-box">
239                             <div t-attf-class="oe_kanban_color_#{kanban_getcolor(record.color.raw_value)} oe_kanban_card oe_kanban_global_click">
240                                 <div class="oe_dropdown_toggle oe_dropdown_kanban" groups="base.group_user">
241                                     <span class="oe_e">í</span>
242                                     <ul class="oe_dropdown_menu">
243                                         <li><a href="/event/1/track/2">View Track</a></li>
244                                         <t t-if="widget.view.is_action_enabled('edit')"><li><a type="edit">Edit Track</a></li></t>
245                                         <t t-if="widget.view.is_action_enabled('delete')"><li><a type="delete">Delete</a></li></t>
246                                         <li><ul class="oe_kanban_colorpicker" data-field="color"/></li>
247                                     </ul>
248                                 </div>
249                                 <div class="oe_kanban_content">
250                                     <h4><field name="name"/></h4>
251                                     <field name="tag_ids"/>
252                                     <div t-if="duration"><field name="duration" widget="float_time"/> hours</div>
253                                     <span class="oe_right">
254                                         <t t-set="priority" t-value="record.priority.raw_value || 0"/>
255                                         <a type="object" name="set_priority" args="['2']" t-if="priority == 3" title="Normal Priority">
256                                            <img src="/web/static/src/img/icons/star-off.png" width="16" height="16"/>
257                                         </a>
258                                         <a type="object" name="set_priority" args="['3']" t-if="priority lte 2" title="Normal Priority">
259                                            <img t-attf-src="/web/static/src/img/icons/star-#{priority lte 2 ? 'on' : 'off'}.png" width="16" height="16"/>
260                                         </a>
261                                         <a type="object" name="set_priority" args="['1']" title="High Priority">
262                                            <img t-attf-src="/web/static/src/img/icons/star-#{priority lte 1 ? 'on' : 'off'}.png" width="16" height="16"/>
263                                         </a>
264                                         <a type="object" name="set_priority" args="['0']" title="Highest Priority">
265                                            <img t-attf-src="/web/static/src/img/icons/star-#{priority == 0 ? 'on' : 'off'}.png" width="16" height="16"/>
266                                         </a>
267                                     </span>
268                                     <div class="row">
269                                         <div class="col-md-10">
270                                             <t t-foreach="record.speaker_ids.raw_value.slice(0,11)" t-as="speaker">
271                                                 <img t-att-src="kanban_image('res.partner', 'image_small', speaker)" t-att-data-speaker_id="speaker" width="30px" height="30px"/>
272                                             </t>
273                                             <t t-if="record.speaker_ids.raw_value.length > 11 ">
274                                                 <a name="open_track_speakers_list" type="object">
275                                                     <t t-esc="record.speaker_ids.raw_value.length - 11"> More</t>
276                                                 </a>
277                                             </t>
278                                         </div>
279                                     </div>
280                                     <div class="oe_clear"/>
281                                 </div>
282                             </div>
283                         </t>
284                     </templates>
285                 </kanban>
286             </field>
287         </record>
288         <record id="view_event_track_calendar" model="ir.ui.view">
289             <field name="name">event.track.calendar</field>
290             <field name="model">event.track</field>
291             <field eval="2" name="priority"/>
292             <field name="arch" type="xml">
293                 <calendar color="location_id" date_start="date" date_delay="duration" string="Event Tracks">
294                     <field name="name"/>
295                     <field name="event_id"/>
296                 </calendar>
297             </field>
298         </record>
299         <record model="ir.ui.view" id="view_event_track_search">
300             <field name="name">Event Tracks</field>
301             <field name="model">event.track</field>
302             <field name="arch" type="xml">
303                 <search string="Event Tracks">
304                     <field name="name"/>
305                     <field name="event_id"/>
306                     <field name="stage_id"/>
307                     <field name="speaker_ids"/>
308                     <group expand="0" string="Group By">
309                         <filter string="Responsible"  context="{'group_by': 'user_id'}"/>
310                         <filter string="Stage" context="{'group_by':'stage_id'}"/>
311                         <filter string="Date" context="{'group_by':'date'}"/>
312                         <filter string="Event" context="{'group_by':'event_id'}"/>
313                     </group>
314                 </search>
315             </field>
316         </record>
317
318         <record model="ir.ui.view" id="view_event_track_form">
319             <field name="name">event.track.form</field>
320             <field name="model">event.track</field>
321             <field name="arch" type="xml">
322                 <form string="Event Track">
323                     <header>
324                         <field name="stage_id" widget="statusbar"/>
325                     </header>
326                     <sheet string="Track">
327                         <div class="oe_right oe_button_box">
328                             <field name="website_url" invisible="1"/>
329                             <field name="website_published" class="pull-right" widget="website_button"/>
330                         </div>
331                         <div class="oe_title">
332                             <label for="name" class="oe_edit_only"/>
333                             <h1>
334                                 <field name="name"/>
335                             </h1>
336                             <label for="event_id" class="oe_edit_only"/>
337                             <h3>
338                                 <field name="event_id"/>
339                             </h3>
340                         </div>
341                         <group>
342                             <group>
343                                 <field name="user_id"/>
344                                 <field name="speaker_ids" widget="many2many_tags"/>
345                                 <field name="location_id"/>
346                             </group>
347                             <group>
348                                 <field name="date"/>
349                                 <label for="duration"/>
350                                 <div>
351                                     <field name="duration" class="oe_inline" widget="float_time"/> hours
352                                 </div>
353                                 <field name="tag_ids" widget="many2many_tags"/>
354                                 <field name="color"/>
355                             </group>
356                         </group>
357                     </sheet>
358                     <div class="oe_chatter">
359                         <field name="message_follower_ids" widget="mail_followers"/>
360                         <field name="message_ids" widget="mail_thread"/>
361                     </div>
362                 </form>
363             </field>
364         </record>
365
366         <record model="ir.ui.view" id="view_event_track_tree">
367             <field name="name">Event Tracks</field>
368             <field name="model">event.track</field>
369             <field name="arch" type="xml">
370                 <tree string="Event Track">
371                     <field name="name"/>
372                     <field name="event_id"/>
373                 </tree>
374             </field>
375         </record>
376
377         <record model="ir.ui.view" id="view_event_track_graph">
378             <field name="name">Tracks Graph</field>
379             <field name="model">event.track</field>
380             <field name="arch" type="xml">
381                 <graph string="Tracks" type="bar" orientation="horizontal">
382                     <field name="location_id"/>
383                     <field name="duration" operator="+"/>
384                 </graph>
385             </field>
386         </record>
387
388         <record model="ir.actions.act_window" id="action_event_track">
389             <field name="name">Event Tracks</field>
390             <field name="res_model">event.track</field>
391             <field name="view_mode">kanban,tree,form,calendar</field>
392         </record>
393         <menuitem name="Event Tracks" id="menu_event_track" action="action_event_track" parent="event.event_configuration" groups="base.group_no_one"/>
394
395     </data>
396 </openerp>