[REFACTOR]some changes in code that takes into account most of quentin commentaries
[odoo/odoo.git] / addons / fleet / fleet_view.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <openerp>
3     <data>
4         <record model='ir.ui.view' id='fleet_vehicle_model_form'>
5             <field name="name">fleet.vehicle.model.form</field>
6             <field name="model">fleet.vehicle.model</field>
7             <field name="arch" type="xml">
8                 <form string="Model" version="7.0">
9                     <sheet>
10                         <field name="image_medium" widget='image' class="oe_left oe_avatar"/>
11                         <group col="2">
12                             <group>
13                                 <field name="brand" on_change="on_change_brand(brand)"/>
14                             </group>
15                             <group>
16                                 <field name="modelname" />   
17                             </group>
18                         </group>
19                         <notebook>
20                             <page string="Vendors">
21                                 <field name="vendors" widget="many2many_kanban"/>
22                             </page>
23                         </notebook>
24                     </sheet>
25                 </form>
26             </field>
27         </record>
28         <record model='ir.ui.view' id='fleet_vehicle_model_tree'>
29             <field name="name">fleet.vehicle.model.tree</field>
30             <field name="model">fleet.vehicle.model</field>
31             <field name="arch" type="xml">
32                 <tree string="Models" version="7.0">
33                     <field name="brand" />
34                     <field name="modelname" />
35                 </tree>
36             </field>
37         </record>
38
39         <record model='ir.actions.act_window' id='fleet_vehicle_model_act'>
40             <field name="name">Vehicle Model</field>
41             <field name="res_model">fleet.vehicle.model</field>
42             <field name="view_type">form</field>
43             <field name="view_mode">tree,form</field>
44             <field name="help" type="html">
45               <p class="oe_view_nocontent_create">
46                 Click to create a new model.
47               </p><p>
48                 You can define several models (e.g. A3, A4) for each brand (Audi).
49               </p>
50             </field>
51         </record>
52  
53         <record model='ir.ui.view' id='fleet_vehicle_model_brand_tree'>
54             <field name="name">fleet.vehicle.model.brand.tree</field>
55             <field name="model">fleet.vehicle.model.brand</field>
56             <field name="arch" type="xml">
57                 <tree string="Model Brand" version="7.0">
58                     <field name="name" />
59                 </tree>
60             </field>
61         </record>
62
63         <record model='ir.ui.view' id='fleet_vehicle_model_brand_form'>
64             <field name="name">fleet.vehicle.model.brand.form</field>
65             <field name="model">fleet.vehicle.model.brand</field>
66             <field name="arch" type="xml">
67                 <form string="Model Brand" version="7.0">
68                     <sheet>
69                         <group>
70                             <div>
71                                 <field name="image_medium" widget="image" class="oe_left oe_avatar"/>
72                                 <label for="name" class="oe_edit_only"/>
73                                 <h1>
74                                     <field name="name" class="oe_inline" />
75                                 </h1>
76                             </div>
77                         </group>
78                     </sheet>
79                 </form>
80             </field>
81         </record>
82
83         <record model='ir.ui.view' id='fleet_vehicle_model_brand_kanban'>
84             <field name="name">fleet.vehicle.model.brandkanban</field>
85             <field name="model">fleet.vehicle.model.brand</field>
86             <field name="arch" type="xml">
87                 <kanban>
88                     <field name="name" />
89                     <field name="image" />
90                     <templates>
91                         <t t-name="kanban-box">
92                             <div class="oe_kanban_vignette oe_semantic_html_override">
93                                 <a type="open" href="#" class="oe_kanban_action oe_kanban_action_a">
94                                     <img t-att-src="kanban_image('fleet.vehicle.model.brand', 'image_small', record.id.value)" class="oe_employee_picture"/>
95                                 </a>
96                                 <div style="text-align:center;">
97                                     <h4 class="oe_partner_heading">
98                                         <a type="open">
99                                             <field name="name"/>
100                                         </a>
101                                     </h4>
102                                 </div>
103                             </div>
104                             <script>
105                             $('.oe_picture').load(function() { if($(this).width() > $(this).height()) { $(this).addClass('oe_employee_picture_wide') } });
106                         </script>
107                         </t>
108                     </templates>
109                 </kanban>
110             </field>
111         </record>
112
113         <record model='ir.actions.act_window' id='fleet_vehicle_model_brand_act'>
114             <field name="name">Model brand of Vehicle</field>
115             <field name="res_model">fleet.vehicle.model.brand</field>
116             <field name="view_type">form</field>
117             <field name="view_mode">kanban,tree,form</field>
118             <field name="help" type="html">
119               <p class="oe_view_nocontent_create">
120                 Click to create a new brand.
121               </p>
122             </field>
123         </record>
124
125         <record model='ir.ui.view' id='fleet_vehicle_state_tree'>
126             <field name="name">fleet.vehicle.state.tree</field>
127             <field name="model">fleet.vehicle.state</field>
128             <field name="arch" type="xml">
129                 <tree string="State" version="7.0" editable="bottom">
130                     <field name="sequence" widget="handler" invisible="1"/>
131                     <field name="name" />
132                     
133                 </tree>
134             </field>
135         </record>
136
137         <record model='ir.actions.act_window' id='fleet_vehicle_state_act'>
138             <field name="name">States of Vehicle</field>
139             <field name="res_model">fleet.vehicle.state</field>
140             <field name="view_type">form</field>
141             <field name="view_mode">tree,form</field>
142             <field name="help" type="html">
143               <p class="oe_view_nocontent_create">
144                 Click to create a vehicule status.
145               </p><p>
146                 You can customize available status to track the evolution of
147                 each vehicule. Example: Active, Being Repaired, Sold.
148               </p>
149             </field>
150         </record>
151
152         <menuitem name="Fleet" id="menu_root" sequence="70" />
153         <menuitem name="Configuration" parent="menu_root" id="fleet_configuration" sequence="3" />
154         <menuitem action="fleet_vehicle_model_act" parent="fleet_configuration" id="fleet_vehicle_model_menu" groups="base.group_no_one"/>
155         <menuitem action="fleet_vehicle_model_brand_act" parent="fleet_configuration" id="fleet_vehicle_model_brand_menu" groups="base.group_no_one"/>
156         <menuitem action="fleet_vehicle_state_act" parent="fleet_configuration" id="fleet_vehicle_state_menu" />
157
158         <record model='ir.ui.view' id='fleet_vehicle_form'>
159             <field name="name">fleet.vehicle.form</field>
160             <field name="model">fleet.vehicle</field>
161             <field name="arch" type="xml">
162                 <form string="Vehicle" version="7.0">
163                     <header>
164                         <field name="state"  widget="statusbar" clickable="True" />
165                     </header>
166                     <sheet> 
167                         <field name="image_medium" widget='image' class="oe_left oe_avatar"/> 
168                         <div class="oe_title">
169                             <label for="model_id" class="oe_edit_only"/>
170                             <h1>
171                                 <field name="model_id" class="oe_inline" on_change="on_change_model(model_id)"/>
172                             </h1>
173                             <label for="license_plate" class="oe_edit_only"/>
174                             <h2>
175                                 <field name="license_plate" class="oe_inline"/>
176                             </h2>
177                             <label for="tag_ids" class="oe_edit_only"/>
178                             <field name="tag_ids" widget="many2many_tags" />
179                         </div>
180                         <div class="oe_right oe_button_box">
181                             <button name="return_action_to_open" type="object" context="{'xml_id':'fleet_vehicle_log_contract_act'}" string="Contracts" help="show the contract for this vehicle" />
182                             <button name="act_show_log_cost" type="object" string="Costs" help="show all the costs for this vehicle" />
183                             <button name="return_action_to_open" type="object" context="{'xml_id':'fleet_vehicle_log_services_act'}" string="Services" help="show the services logs for this vehicle" />
184                             <button name="return_action_to_open" type="object" context="{'xml_id':'fleet_vehicle_log_fuel_act'}" string="Fuel Logs" help="show the fuel logs for this vehicle" />
185                             <button name="return_action_to_open" type="object" context="{'xml_id':'fleet_vehicle_odometer_act'}" string="Odometer Logs" help="show the odometer logs for this vehicle" />
186                         </div> 
187                         <group col="2" string="General Properties">
188                             <group >
189                                 <field name="driver" />
190                                 <field name="location" />
191                                 <field name="vin_sn" />
192                                 <field name="company_id" groups="base.group_multi_company"/>
193                             </group>
194                             <group >
195                                 <label for="odometer" />
196                                 <div>
197                                     <field name="odometer" class="oe_inline"/>
198                                     <field name="odometer_unit" class="oe_inline"/>
199                                 </div>
200                                 <field name="acquisition_date" />
201                                 <field name="car_value" />
202                             </group>
203                         </group>
204                         <group col="2">
205                             <group string="Additional Properties">
206                                 <field name="seats" />
207                                 <field name="doors" />
208                                 <field name="color" />
209                             </group>
210                             <group string="Engine Options">
211                                 <field name="transmission" />
212                                 <field name="fuel_type" />
213                                 <field name="co2" />
214                                 <field name="horsepower" />
215                                 <field name="horsepower_tax" />
216                                 <field name="power" />
217                             </group>  
218                         </group>
219                     </sheet>
220                     <div class="oe_chatter">
221                         <field name="message_ids" widget="mail_thread" options='{"thread_level": 1}'/>
222                         <field name="message_follower_ids" widget="mail_followers"/>
223                     </div>
224                 </form>
225             </field>
226         </record>
227         <record model='ir.ui.view' id='fleet_vehicle_tree'>
228             <field name="name">fleet.vehicle.tree</field>
229             <field name="model">fleet.vehicle</field>
230             <field name="sequence">1</field>
231             <field name="arch" type="xml">
232                 <tree string="Vehicle" version="7.0" colors="orange:contract_renewal_due_soon>0 and contract_renewal_overdue==0;red:contract_renewal_overdue>0">
233                     <field name="license_plate" />
234                     <field name="model_id" />
235                     <field name="driver" />
236                     <field name="vin_sn" />
237                     <field name="acquisition_date" />
238                     <field name="state"/>
239                     <field name="odometer" />
240                     <field name="odometer_unit" />
241                     <field name="contract_renewal_due_soon" invisible="1"/>
242                     <field name="contract_renewal_overdue" invisible="1" />
243                     <field name="contract_renewal_total" invisible="1"/>
244                 </tree>
245             </field>
246         </record>
247
248         <record model="ir.ui.view" id="fleet_vehicle_search">
249             <field name="name">fleet.vehicle.search</field>
250             <field name="model">fleet.vehicle</field>
251             <field name="arch" type="xml">
252                 <search string="All vehicles">
253                     <field name="name" filter_domain="['|', ('name','ilike',self), ('license_plate','ilike',self)]" string="Vehicle"/>
254                     <field name="driver"/>
255                     <field name="tag_ids"/>
256                     <field name="location"/>
257                     <field name="state" />
258                     <field name="state" />
259                     <filter name="alert_true" domain="['|',('contract_renewal_due_soon','>',0),('contract_renewal_overdue','>',0)]" string="Has Alert(s)"/>
260                </search>
261             </field>
262         </record>
263
264
265         <record model='ir.ui.view' id='fleet_vehicle_kanban'>
266             <field name="name">fleet.vehicle.kanban</field>
267             <field name="model">fleet.vehicle</field>
268             <field name="arch" type="xml">
269                 <kanban>
270                     <field name="license_plate" />
271                     <field name="model_id" />
272                     <field name="driver" />
273                     <field name="location" />
274                     <field name="state" />
275
276                     <field name="image" />
277                     <field name="tag_ids" />
278                     <field name="contract_renewal_due_soon" />
279                     <field name="contract_renewal_overdue" />
280                     <field name="contract_renewal_name" />
281                     <field name="contract_renewal_total" />
282                     
283                     <templates>
284                         <t t-name="kanban-box">
285                             <div class="oe_kanban_vignette oe_semantic_html_override">
286                                 <a type="open" href="#" class="oe_kanban_action oe_kanban_action_a">
287                                     <img t-att-src="kanban_image('fleet.vehicle', 'image_small', record.id.value)"/>
288                                 </a>
289                                 <div class="oe_kanban_details">
290                                     <h4 class="oe_partner_heading">
291                                         <a type="open">
292                                             <field name="license_plate"/><br/>
293                                             <field name="model_id" />
294                                         </a>
295                                     </h4>
296                                     <t t-if="record.contract_renewal_due_soon.raw_value > 0 and record.contract_renewal_overdue.raw_value lte 0">
297                                         <a data-type="object" data-name="return_action_to_open" href="#" class="oe_kanban_action oe_kanban_action_a" data-context='{"xml_id":"fleet_vehicle_log_contract_act"}'>
298                                             <span class="oe_tag oe_kanban_color_3"><field name="contract_renewal_name" />
299                                                <t t-if="record.contract_renewal_total.raw_value > 0"> and <field name="contract_renewal_total" /> other(s) </t>
300                                             </span>
301                                         </a>
302                                     </t>
303
304                                     <t t-if="record.contract_renewal_overdue.raw_value > 0">
305                                         <a data-type="object" data-name="return_action_to_open" href="#" class="oe_kanban_action oe_kanban_action_a" data-context='{"xml_id":"fleet_vehicle_log_contract_act"}'>
306                                             <span class="oe_tag oe_kanban_color_2"><field name="contract_renewal_name" />
307                                                 <t t-if="record.contract_renewal_total.raw_value > 0"> and <field name="contract_renewal_total" /> other(s) </t>
308                                             </span>
309                                         </a>
310                                     </t>
311                                     
312                                     <ul>
313                                         <li>
314                                             <t t-if="record.driver.raw_value"><field name="driver"/></t>
315                                         </li>
316                                         <li>
317                                             <t t-if="record.location.raw_value"><field name="location"/></t>
318                                         </li>
319                                         
320                                     </ul>
321
322                                     <div class="oe_kanban_partner_categories">
323                                         <span class="oe_kanban_list_many2many">
324                                             <div modifiers="{}" name="tag_ids" class="oe_form_field oe_tags" model="fleet.vehicle.tag" t-att-data="record.tag_ids.raw_value" />
325                                         </span>
326                                     </div>
327
328                                 </div>
329                             </div>
330                         </t>
331                     </templates>
332                 </kanban>
333             </field>
334         </record>
335         
336
337         <record model='ir.actions.act_window' id='fleet_vehicle_act'>
338             <field name="name">Vehicles</field>
339             <field name="res_model">fleet.vehicle</field>
340             <field name="view_type">form</field>
341             <field name="view_mode">kanban,tree,form</field>
342             <field name="help" type="html">
343               <p class="oe_view_nocontent_create">
344                 Click to create a new vehicle. 
345               </p><p>
346                 You will be able to manage your fleet by keeping track of the
347                 contracts, services, fixed and recurring costs, odometers and
348                 fuel logs associated to each vehicle.
349             </p><p>
350                 OpenERP will warn you when services or contract have to be
351                 renewed.
352               </p>
353             </field>
354         </record>
355
356         <menuitem name="Vehicles" parent="menu_root" id="fleet_vehicles" sequence="2" />
357         <menuitem action="fleet_vehicle_act" parent="fleet_vehicles" id="fleet_vehicle_menu" />
358
359
360
361         <record model='ir.ui.view' id='fleet_vehicle_log_contract_form'>
362             <field name="name">fleet.vehicle.log_contract.form</field>
363             <field name="model">fleet.vehicle.log.contract</field>
364             <field name="arch" type="xml">
365                 <form string="Contract logs" version="7.0">
366                     <header>
367                         <button modifiers="{'invisible': [['state', '=', 'closed']]}" name="contract_close" states="open" type="object" class="oe_highlight" string="Terminate Contract"/>
368                         <button modifiers="{'invisible': [['state', '=', 'closed']]}" name="contract_close" states="toclose" type="object" class="oe_highlight" string="Terminate Contract"/>
369                         <button modifiers="{'invisible': [['state', 'not in', ['closed']]]}" name="contract_open" states="closed" type="object" class="oe_highlight" string="Set Contract In Progress"/>
370                         <button class="oe_highlight" name="act_renew_contract" type="object" string="Renew Contract" help="Create a new contract automatically with all the same informations except for the date that will start at the end of current contract" />
371                         <field name="state" widget="statusbar" />
372                     </header>
373                     <sheet>
374                         <group col="2">
375                             <group string="Contract details">
376                                 <field name="vehicle_id" on_change="on_change_vehicle(vehicle_id)"/>
377                                 <field name="cost_subtype" required="1" domain="['|',('category','=','contract'),('category','=','both')]"/>
378                                 <field name="amount" string="Activation Cost"/>
379                                 <label for="cost_generated"/>
380                                 <div>
381                                     <field name="cost_generated" class="oe_inline" attrs="{'invisible': [('cost_frequency','=','no')]}" />
382                                     <field name="cost_frequency" class="oe_inline"  />
383                                 </div>
384                             </group>
385                             <group string="Odometer details">
386                                 <label for="odometer"/>
387                                 <div>
388                                     <field name="odometer" class="oe_inline"/>
389                                     <field name="odometer_unit" class="oe_inline"/>
390                                 </div>
391                             </group>
392                         </group>
393                         <group col="2">
394                             <group>
395                                 <field name="date" string="Invoice Date"/>
396                                 <field name="start_date"/>
397                                 <field name="expiration_date" />
398                             </group>
399                             <group>
400                                 <field name="insurer_id" />
401                                 <field name="purchaser_id" />
402                                 <field name="ins_ref" />
403                             </group>
404                         </group>
405                         <notebook>
406                             <page string="Included Services">
407                                 <group>
408                                     <field name="cost_ids" context="{'vehicle_id': vehicle_id}" nolabel="1" on_change="on_change_indic_cost(cost_ids)">
409                                         <tree version="7.0" editable="bottom">
410                                             <field name="cost_subtype" string="Service" domain="[('category','=','service')]"/>
411                                             <field name="amount" sum="Price" string="Indicative Cost" />
412                                         </tree>
413                                     </field>
414
415                                 </group>
416                                 <div class="oe_right"><group><field name="sum_cost" string="Indicative Costs Total"/></group></div>
417                             </page>
418                             <page string="Generated Costs">
419                                 <group>
420                                     <field name="generated_cost_ids" context="{'vehicle_id': vehicle_id}" nolabel="1" sum="amount">
421                                         <tree version="7.0" editable="bottom" >
422                                             <field name="date" />
423                                             <field name="amount" sum="amount"/>
424                                         </tree>
425
426                                     </field>
427                                 </group>
428                             </page>
429                         </notebook>
430                         <group string="Terms and Conditions">
431                             <field name="notes" nolabel="1" placeholder="Write here all other information relative to this contract" />
432                         </group>
433                     </sheet>
434                 </form>
435             </field>
436         </record>
437
438         <act_window
439             
440             id="act_renew_contract"
441             name="Renew Contract"
442             res_model="fleet.vehicle.log.contract"
443             src_model="fleet.vehicle.log.contract"
444             view_mode="form"
445             view_type="form"
446             />
447
448
449         <record model='ir.ui.view' id='fleet_vehicle_log_contract_tree'>
450             <field name="name">fleet.vehicle.log.contract.tree</field>
451             <field name="model">fleet.vehicle.log.contract</field>
452             <field name="arch" type="xml">
453                 <tree string="Contract logs" version="7.0" colors="orange:days_left>0 and days_left&lt;15;red:days_left==0;grey:state=='closed'">
454                     <field name="start_date" />
455                     <field name="expiration_date" />
456                     <field name="days_left" invisible="1"/>
457                     <field name="vehicle_id" />
458                     <field name="cost_subtype"/>
459                     <field name="insurer_id" />
460                     <field name="amount" string="Activation Cost"/>
461                     <field name="cost_generated"/>
462                     <field name="cost_frequency"/>
463                     <field name="state" />
464                 </tree>
465             </field>
466         </record>
467
468         <record model="ir.ui.view" id="fleet_vehicle_log_contract_graph">
469            <field name="name">fleet.vehicle.log.contract.graph</field>
470            <field name="model">fleet.vehicle.log.contract</field>
471            <!--<field name="type">graph</field>-->
472            <field name="arch" type="xml">
473                 <graph string="Contract Costs Per Month">
474                     <field name="date" />
475                     <field name="cost_amount" operator="+"/>
476                     <field name="vehicle_id" group="True"/>
477                 </graph>
478             </field>
479         </record>
480
481         <record model='ir.actions.act_window' id='fleet_vehicle_log_contract_act'>
482             <field name="name">Vehicles Contracts</field>
483             <field name="res_model">fleet.vehicle.log.contract</field>
484             <field name="view_type">form</field>
485             <field name="view_mode">tree,form,graph</field>
486             <field name="help" type="html">
487               <p class="oe_view_nocontent_create">
488                 Click to create a new contract. 
489               </p><p>
490                 Manage all your contracts (leasing, insurances, etc.) with
491                 their related services, costs. OpenERP will automatically warn
492                 you when some contracts have to be renewed.
493               </p><p>
494                 Each contract (e.g.: leasing) may include several services
495                 (reparation, insurances, periodic maintenance).
496               </p>
497             </field>
498         </record>
499
500         <menuitem action="fleet_vehicle_log_contract_act" parent="fleet_vehicles" id="fleet_vehicle_log_contract_menu" />
501
502        <record model='ir.ui.view' id='fleet_vehicle_odometer_form'>
503             <field name="name">fleet.vehicle.odometer.form</field>
504             <field name="model">fleet.vehicle.odometer</field>
505             <field name="arch" type="xml">
506                 <form string="Odometer Logs" version="7.0">
507                     <sheet>
508                         <group>
509                             <field name="vehicle_id" on_change="on_change_vehicle(vehicle_id)"/>
510                                 <div>
511                                     <field name="value" class="oe_inline"/>
512                                     <field name="unit" class="oe_inline"/>
513                                 </div>
514                             <field name="date" />
515                         </group>
516                     </sheet>
517                 </form>
518             </field>
519         </record>
520
521         <record model='ir.ui.view' id='fleet_vehicle_odometer_tree'>
522             <field name="name">fleet.vehicle.odometer.tree</field>
523             <field name="model">fleet.vehicle.odometer</field>
524             <field name="arch" type="xml">
525                 <tree string="Odometer Logs" version="7.0" editable="bottom">
526                     <field name="date" />
527                     <field name="vehicle_id" on_change="on_change_vehicle(vehicle_id)"/>
528                     <field name="value" />
529                     <field name="unit" />
530                 </tree>
531             </field>
532         </record>
533         <!--
534         <record model='ir.ui.view' id='fleet_vehicle_odometer_search'>
535             <field name="name">fleet.vehicle.odometer.search</field>
536             <field name="model">fleet.vehicle.odometer</field>
537             <field name="arch" type="xml">
538                 <search string="Vehicles odometers" >
539                     <field name="vehicle_id" />
540                     <field name="value"/>
541                     <field name="unit"/>
542                     <field name="date"/>
543                     <filter name="groupby_vehicle" context="{'group_by' : 'vehicle_id'}" string="Vehicle"/>
544                 </search>
545             </field>
546         </record>
547         -->
548
549         <record model="ir.ui.view" id="fleet_vehicle_odometer_graph">
550            <field name="name">fleet.vehicle.odometer.graph</field>
551            <field name="model">fleet.vehicle.odometer</field>
552            <!--<field name="type">graph</field>-->
553            <field name="arch" type="xml">
554                 <graph string="Odometer Values Per Month">
555                     <field name="date" />
556                     <field name="value" operator="+"/>
557                     <field name="vehicle_id" group="True"/> 
558                 </graph>
559             </field>
560         </record>
561
562         <record model='ir.actions.act_window' id='fleet_vehicle_odometer_act'>
563             <field name="name">Vehicles Odometer</field>
564             <field name="res_model">fleet.vehicle.odometer</field>
565             <field name="view_type">form</field>
566             <field name="view_mode">tree,form,graph</field>
567             <field name="context">{"search_default_groupby_vehicle" : True}</field>
568             <field name="help" type="html">
569               <p>
570                 Here you can add various odometer entries for all vehicles.
571                 You can also show odometer value for a particular vehicle using
572                 the search field.
573               </p>
574             </field>
575         </record>
576
577         <menuitem action="fleet_vehicle_odometer_act" parent="fleet_vehicles" id="fleet_vehicle_odometer_menu" />
578
579         <record model='ir.ui.view' id='fleet_vehicle_log_fuel_form'>
580             <field name="name">fleet.vehicle.log.fuel.form</field>
581             <field name="model">fleet.vehicle.log.fuel</field>
582             <field name="arch" type="xml">
583                 <form string="Fuel Logs" version="7.0">
584                     <sheet>
585                         <group col="2">
586                             <group string="Vehicle Details">
587                                 <field name="vehicle_id" on_change="on_change_vehicle(vehicle_id)"/>
588                             </group>
589                             <group string="Refueling Details">
590                                 <field name="liter" on_change="on_change_liter(liter,price_per_liter,amount)"/>
591                                 <field name="price_per_liter" on_change="on_change_price_per_liter(liter,price_per_liter,amount)" />
592                                 <field name="amount" on_change="on_change_amount(liter,price_per_liter,amount)"/>
593                             </group>
594                         </group>
595                         <group col="2">
596                             <group string="Odometer Details">
597                                 <label for="odometer"/>
598                                 <div>
599                                     <field name="odometer" class="oe_inline"/>
600                                     <field name="odometer_unit" class="oe_inline"/>
601                                 </div>
602                             </group>
603                             <group string="Additional Details">
604                                 <field name="date" />
605                                 <field name="purchaser_id" />
606                                 <field name="inv_ref" />
607                                 <field name="vendor_id" />
608                             </group>
609                         </group>
610                         <group string="Notes">
611                             <field nolabel="1" name="notes" placeholder="Write here any other information"/>
612                         </group>
613                     </sheet>
614                 </form>
615             </field>
616         </record>
617
618         <record model='ir.ui.view' id='fleet_vehicle_log_fuel_tree'>
619             <field name="name">fleet.vehicle.log.fuel.tree</field>
620             <field name="model">fleet.vehicle.log.fuel</field>
621             <field name="arch" type="xml">
622                 <tree string="Fuel Logs">
623                     <field name="date" /> 
624                     <field name="vehicle_id" />
625                     <field name="odometer" invisible="1"/>
626                     <field name="odometer_unit" invisible="1"/>
627                     <field name="purchaser_id" />             
628                     <field name="inv_ref" invisible="1"/>
629                     <field name="vendor_id" invisible="1"/>
630                     <field name="liter" />
631                     <field name="price_per_liter" invisible="1"/>
632                     <field name="amount" sum="Price"/>
633                 </tree>
634             </field>
635         </record>
636
637         <record model="ir.ui.view" id="fleet_vehicle_log_fuel_graph">
638            <field name="name">fleet.vehicle.log.fuel.graph</field>
639            <field name="model">fleet.vehicle.log.fuel</field>
640            <!--<field name="type">graph</field>-->
641            <field name="arch" type="xml">
642                 <graph string="Fuel Costs Per Month">
643                     <field name="date" /> 
644                     <field name="cost_amount" operator="+"/>
645                     <field name="vehicle_id" group="True"/>
646                 </graph>
647             </field>
648         </record>
649
650         <record model='ir.actions.act_window' id='fleet_vehicle_log_fuel_act'>
651             <field name="name">Vehicles Fuel Logs</field>
652             <field name="res_model">fleet.vehicle.log.fuel</field>
653             <field name="view_type">form</field>
654             <field name="view_mode">tree,form,graph</field>
655             <field name="help" type="html">
656               <p class="oe_view_nocontent_create">
657                 Click to create a new fuel log. 
658               </p><p>
659                 Here you can add refuelling entries for all vehicles.  You can
660                 also filter logs of a particular vehicle using the search
661                 field.
662               </p>
663             </field>
664         </record>
665
666         <menuitem action="fleet_vehicle_log_fuel_act" parent="fleet_vehicles" id="fleet_vehicle_log_fuel_menu" />
667
668
669         <record model='ir.ui.view' id='fleet_vehicle_log_services_form'>
670             <field name="name">fleet.vehicle.log.services.form</field>
671             <field name="model">fleet.vehicle.log.services</field>
672             <field name="arch" type="xml">
673                 <form string="Services Logs" version="7.0">
674                     <sheet>
675                         <group col="2">
676                             <group string="Services Details">
677                                 <field name="vehicle_id" on_change="on_change_vehicle(vehicle_id)"/>
678                                 <field name="cost_subtype" string="Service Type" domain="['|',('category','=','service'),('category','=','both')]" required="1"/>
679                                 <field name="amount" string="Price"/>
680                             </group>
681                             <group string="Odometer Details">
682                                 <label for="odometer"/>
683                                 <div>
684                                     <field name="odometer" class="oe_inline"/>
685                                     <field name="odometer_unit" class="oe_inline"/>
686                                 </div>
687                             </group>
688                         </group>
689                         <group col="2">
690                             <group string="Additional Details">
691                                 <field name="date" />
692                                 <field name="purchaser_id" />
693                                 <field name="vendor_id" />
694                                 <field name="inv_ref" />
695                             </group>
696                         </group>
697                         <group string="Included Services">
698                             <field name="cost_ids" nolabel="1">
699                                 <tree string="Included Services" version="7.0" editable="bottom">
700                                     <field name="cost_subtype" string="Service" domain="[('category','=','service')]"/>
701                                     <field name="amount" sum="Price" string="Cost"/>
702                                 </tree>
703                             </field>
704                         </group>
705                         <group string="Notes">
706                             <field nolabel="1" name="notes" placeholder="Write here any other information related to the service completed."/>
707                         </group>
708                     </sheet>
709                 </form>
710             </field>
711         </record>
712
713         <record model='ir.ui.view' id='fleet_vehicle_log_services_tree'>
714             <field name="name">fleet.vehicle.log.services.tree</field>
715             <field name="model">fleet.vehicle.log.services</field>
716             <field name="arch" type="xml">
717                 <tree string="Services Logs">
718                     <field name="date" />
719                     <field name="vehicle_id" />
720                     <field name="cost_subtype"/>
721                     <field name="purchaser_id"/>
722                     <field name="vendor_id" />
723                     <field name="inv_ref" />
724                     <field name="notes" />
725                     <field name="amount" sum="Total"/>
726                 </tree>
727             </field>
728         </record>
729
730         <record model="ir.ui.view" id="fleet_vehicle_log_services_graph">
731            <field name="name">fleet.vehicle.log.services.graph</field>
732            <field name="model">fleet.vehicle.log.services</field>
733            <field name="arch" type="xml">
734                 <graph string="Services Costs Per Month">
735                     <field name="date" />
736                     <field name="cost_amount" operator="+"/>
737                     <field name="vehicle_id" group="True"/> 
738                 </graph>
739             </field>
740         </record>
741
742         <record model='ir.actions.act_window' id='fleet_vehicle_log_services_act'>
743             <field name="name">Vehicles Services Logs</field>
744             <field name="res_model">fleet.vehicle.log.services</field>
745             <field name="view_type">form</field>
746             <field name="view_mode">tree,form,graph</field>
747             <field name="help" type="html">
748               <p class="oe_view_nocontent_create">
749                 Click to create a new service entry. 
750               </p><p>
751                 OpenERP helps you keeping track of all the services done
752                 on your vehicle. Services can be of many type: occasional
753                 repair, fixed maintenance, etc.
754               </p>
755             </field>
756         </record>
757
758         <menuitem action="fleet_vehicle_log_services_act" parent="fleet_vehicles" id="fleet_vehicle_log_services_menu" />
759
760         <record model='ir.ui.view' id='fleet_vehicle_service_types_tree'>
761             <field name="name">fleet.service.type.tree</field>
762             <field name="model">fleet.service.type</field>
763             <field name="arch" type="xml">
764                 <tree string="Service types" editable="bottom">
765                     <field name="name" />
766                     <field name="category"/>
767                 </tree>
768             </field>
769         </record>
770
771         <record model='ir.actions.act_window' id='fleet_vehicle_service_types_act'>
772             <field name="name">Service Types</field>
773             <field name="res_model">fleet.service.type</field>
774             <field name="view_type">form</field>
775             <field name="view_mode">tree,form</field>
776             <field name="help" type="html">
777               <p class="oe_view_nocontent_create">
778                 Click to create a new type of service.
779               </p><p>
780                 Each service can used in contracts, as a standalone service or both.
781               </p>
782             </field>
783         </record>
784
785         <menuitem action="fleet_vehicle_service_types_act" parent="fleet_configuration" id="fleet_vehicle_service_types_menu" groups="base.group_no_one"/>
786
787
788         <record model='ir.ui.view' id='fleet_vehicle_costs_tree'>
789             <field name="name">fleet.vehicle.cost.tree</field>
790             <field name="model">fleet.vehicle.cost</field>
791             <field name="arch" type="xml">
792                 <tree string="Vehicles costs" >
793                     <field name="date"/>
794                     <field name="vehicle_id" />
795                     <field name="cost_type"/>
796                     <field name="cost_subtype"/>
797                     <field name="amount" sum="Total Cost"/>
798                     <field name="parent_id" invisible="1" />
799                     <field name="year" invisible="1"/>
800                 </tree>
801             </field>
802         </record>
803
804         <record model='ir.ui.view' id='fleet_vehicle_costs_search'>
805             <field name="name">fleet.vehicle.cost.search</field>
806             <field name="model">fleet.vehicle.cost</field>
807             <field name="arch" type="xml">
808                 <search string="Vehicles costs" >
809                     <field name="vehicle_id" />
810                     <field name="cost_subtype"/>
811                     <field name="year"/>
812                     <field name="date"/>
813                     <field name="parent_id"/>
814                     <filter name="parent_false" domain="[('parent_id','=',False)]" string="Effective Costs"/>
815                     <filter name="parent_true" domain="[('parent_id','!=',False)]" string="Indicative Costs"/>
816                     <group expand="1" string="Group By...">
817                         <filter name="groupby_year" context="{'group_by' : 'year'}" string="Year"/>
818                         <filter name="groupby_date" context="{'group_by' : 'date'}" string="Date"/>
819                         <filter name="groupby_cost_type" context="{'group_by' : 'cost_type'}" string="Cost Type"/>
820                         <filter name="groupby_cost_subtype" context="{'group_by' : 'cost_subtype'}" string="Cost Subtype"/>
821                         <filter name="groupby_vehicle_id" context="{'group_by' : 'vehicle_id'}" string="Vehicle"/>
822                         <filter name="groupby_parent_id" context="{'group_by' : 'parent_id'}" string="Parent"/>
823                     </group>
824                 </search>
825             </field>
826         </record>
827
828         <record model='ir.ui.view' id='fleet_vehicle_costs_form'>
829             <field name="name">fleet.vehicle.cost.form</field>
830             <field name="model">fleet.vehicle.cost</field>
831             <field name="arch" type="xml">
832                 <form string="Vehicle costs" version="7.0">
833                     <sheet>
834                         <group col="2" string="Cost Details">
835                             <group>
836                                 <field name="vehicle_id" />
837                                 <field name="cost_subtype"/>
838                                 <field name="amount"/>
839                             </group>
840                             <group>
841                                 <field name="date"/>
842                                 <field name="parent_id"/>
843                             </group>
844                         </group>
845                     </sheet>
846                 </form>
847             </field>
848         </record>
849
850         <record model="ir.ui.view" id="fleet_vehicle_costs_graph">
851            <field name="name">fleet.vehicle.cost.graph</field>
852            <field name="model">fleet.vehicle.cost</field>
853            <field name="arch" type="xml">
854                 <graph string="Costs Per Month">
855                     <field name="date" />
856                     <field name="amount"/>
857                     <field name="vehicle_id" group="True"/>
858                 </graph>
859             </field>
860         </record>
861
862         <record model='ir.actions.act_window' id='fleet_vehicle_costs_act'>
863             <field name="name">Vehicle Costs</field>
864             <field name="res_model">fleet.vehicle.cost</field>
865             <field name="view_type">form</field>
866             <field name="view_mode">tree,form,graph</field>
867             <field name="context">{"search_default_parent_false" : True, "search_default_groupby_vehicle_id" : True,}</field>
868             <field name="help" type="html">
869               <p class="oe_view_nocontent_create">
870                 Click to create a new cost.
871               </p><p>
872                 OpenERP helps you managing the costs for your different
873                 vehicles. Costs are created automatically from services,
874                 contracts (fixed or recurring) and fuel logs.
875               </p>
876             </field>
877         </record>
878
879         <menuitem action="fleet_vehicle_costs_act" parent="fleet_vehicles" id="fleet_vehicle_costs_menu" />
880 <!--    
881         <record model='ir.ui.view' id='fleet_hr_employee_form'>
882             <field name="name">fleet.hr.employee.form</field>
883             <field name="model">hr.employee</field>
884             <field name="type">form</field>
885             <field name="inherit_id" ref="hr.view_employee_form" />
886             <field name="arch" type="xml">
887                 <notebook position="inside">
888                     <page string="Vehicle">
889                         <group>
890                             <field name="vehicle_id" widget="many2many_tags"/>
891                         </group>
892                     </page>
893                 </notebook>
894             </field>
895         </record>
896
897      <record model="fleet.vehicle.model" id="citroen">
898             <field name="name">Citroen</field>
899         </record>
900
901         <record model="fleet.vehicle" id="stw_vehicle">
902             <field name="name">240BTN</field>
903             <field name="model_id" ref="citroen" />
904         </record>
905  -->
906     </data>
907 </openerp>