merge with #1527 trunk
[odoo/odoo.git] / addons / project / project_view.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <terp>
3     <data>
4         <menuitem icon="terp-project" id="menu_main" name="Project Management"/>
5         <menuitem id="menu_definitions" name="Configuration" parent="project.menu_main" sequence="1"/>
6
7         <!-- Project -->
8         <record id="edit_project" model="ir.ui.view">
9             <field name="name">project.project.form</field>
10             <field name="model">project.project</field>
11             <field name="type">form</field>
12             <field name="arch" type="xml">
13                 <form string="Project">
14                     <notebook>
15                         <page string="Administration">
16                             <field name="name" select="1"/>
17                             <group col="3" colspan="2">
18                                 <field name="active" select="2"/>
19                                 <button name="toggleActive" string="Toggle activity" type="object"/>
20                             </group>
21                             <field name="manager" select="1"/>
22                             <field name="warn_manager"/>
23                             <newline/>
24                             <field name="priority"/>
25                             <field name="parent_id"/>
26                             <field name="date_start"/>
27                             <field name="date_end"/>
28                             <field name="planned_hours" widget="float_time"/>
29                             <field name="effective_hours" widget="float_time"/>
30                             <field name="timesheet_id"/>
31                             <field name="state"/>
32                             <separator colspan="4" string="Project's members"/>
33                             <field colspan="4" name="members" nolabel="1"/>
34                         </page>
35                         <page groups="base.group_extended" string="Partner Info">
36                             <field colspan="4" name="partner_id" on_change="onchange_partner_id(partner_id)" select="1"/>
37                             <field domain="[('partner_id','=',partner_id)]" name="contact_id" select="2"/>
38                             <field name="category_id" select="2"/>
39                             <field name="pricelist_id"/>
40                             <field name="warn_customer"/>
41                             <field name="mode"/>
42                             <field name="tariff"/>
43                             <separator colspan="4" string="Mail texts"/>
44                             <field name="warn_header"/>
45                             <field name="warn_footer"/>
46                             <group col="3" colspan="4">
47                                 <label string="Task: %%(name)s"/>
48                                 <label string="User: %%(user_id)s"/>
49                                 <label string="ID: %%(task_id)s"/>
50                                 <label string="Status: %%(state)s"/>
51                                 <label string="Date Start: %%(date_start)s"/>
52                                 <label string="Date Stop: %%(date_stop)s"/>
53                             </group>
54                             <separator colspan="4" string="Taxes"/>
55                             <field colspan="4" name="tax_ids" nolabel="1"/>
56                         </page>
57                         <page string="Tasks">
58                             <field colspan="4" name="tasks" nolabel="1" widget="one2many_list">
59                                 <form string="Task edition">
60                                     <notebook>
61                                         <page string="Task definition">
62                                             <separator colspan="4" string="Task Information"/>
63                                             <field name="name" select="1"/>
64                                             <field name="active" select="1"/>
65                                             <field name="sequence"/>
66                                             <field name="priority" select="1"/>
67                                             <field name="user_id" select="1"/>
68                                             <field name="date_deadline" select="1"/>
69                                             <field name="date_start" select="1"/>
70                                             <field name="date_close" select="1"/>
71                                             <field name="progress"/>
72                                             <newline/>
73                                             <field name="planned_hours" widget="float_time"/>
74                                             <field name="effective_hours" widget="float_time"/>
75                                             <separator colspan="4" string="Description"/>
76                                             <field colspan="4" name="description" nolabel="1"/>
77
78                                             <group col="11" colspan="4">
79                                                 <field name="state" select="1"/>
80                                                 <button name="do_draft" states="open" string="Set Draft" type="object"/>
81                                                 <button name="do_open" states="pending,draft" string="Open task" type="object"/>
82                                                 <button name="do_reopen" states="done,cancelled" string="Re-open" type="object"/>
83                                                 <button name="do_pending" states="open" string="Set pending" type="object"/>
84                                                 <button name="%(wizard_close_task)d" states="pending,open" string="Done" type="action"/>
85                                                 <button groups="base.group_extended" name="%(wizard_delegate_task)d" states="pending,open" string="Delegate" type="action"/>
86                                                 <button name="do_cancel" states="draft,open,pending" string="Cancel" type="object"/>
87                                             </group>
88                                         </page>
89                                         <page string="Work done">
90                                             <separator colspan="4" string="Work done"/>
91                                             <field colspan="4" name="work_ids" nolabel="1"/>
92                                         </page>
93                                         <page string="Others">
94                                             <separator colspan="4" string="Notes"/>
95                                             <field colspan="4" name="invoice_id" readonly="True"/>
96                                             <field colspan="4" name="notes" nolabel="1"/>
97                                             <newline/>
98                                             <field name="type"/>
99                                             <field name="billable" select="1"/>
100                                             <field name="start_sequence"/>
101                                             <field colspan="4" name="child_ids" nolabel="1">
102                                                 <tree string="Delegated tasks">
103                                                     <field name="name"/>
104                                                     <field name="user_id"/>
105                                                     <field name="date_deadline"/>
106                                                     <field name="planned_hours" widget="float_time"/>
107                                                     <field name="effective_hours" widget="float_time"/>
108                                                     <field name="state"/>
109                                                 </tree>
110                                             </field>
111                                             <field colspan="4" name="parent_id"/>
112                                         </page>
113                                     </notebook>
114                                 </form>
115                                 <tree colors="red:date_deadline&lt;current_date and state=='draft';blue:date_deadline==current_date and state=='draft';grey:state=='cancel' or state=='close'" string="All tasks">
116                                     <field name="sequence"/>
117                                     <field name="name"/>
118                                     <field name="user_id"/>
119                                     <field name="date_deadline"/>
120                                     <field name="progress_rate" widget="progressbar"/>
121                                     <field name="planned_hours" widget="float_time"/>
122                                     <field name="effective_hours" widget="float_time"/>
123                                     <field name="state"/>
124                                 </tree>
125                             </field>
126                         </page>
127                         <page string="Notes">
128                             <field colspan="4" name="notes" nolabel="1"/>
129                         </page>
130                     </notebook>
131                     <newline/>
132                 </form>
133             </field>
134         </record>
135         <record id="view_project" model="ir.ui.view">
136             <field name="name">project.project.tree</field>
137             <field name="model">project.project</field>
138             <field name="type">tree</field>
139             <field name="field_parent">child_id</field>
140             <field name="arch" type="xml">
141                 <tree string="Projects">
142                     <field name="name"/>
143                     <field name="manager"/>
144                     <field name="partner_id"/>
145                     <field name="planned_hours" widget="float_time"/>
146                     <field name="effective_hours" widget="float_time"/>
147                     <field name="progress_rate" widget="progressbar"/>
148                     <field name="state"/>
149                 </tree>
150             </field>
151         </record>
152         <record id="open_view_all_project" model="ir.actions.act_window">
153             <field name="name">All Projects</field>
154             <field name="res_model">project.project</field>
155             <field name="view_type">tree</field>
156             <field name="domain">[('parent_id','=',False)]</field>
157             <field name="view_id" ref="view_project"/>
158         </record>
159         <menuitem action="open_view_all_project" id="menu_all_project" parent="project.menu_main"/>
160
161         <record id="open_view_all_project_unclosed" model="ir.actions.act_window">
162             <field name="name">Unclosed projects</field>
163             <field name="res_model">project.project</field>
164             <field name="view_type">tree</field>
165             <field name="domain">[('parent_id','=',False),('state','&lt;&gt;','cancelled'),('state','&lt;&gt;','done')]</field>
166             <field name="view_id" ref="view_project"/>
167         </record>
168         <menuitem action="open_view_all_project_unclosed" id="menu_all_project_unclosed" parent="project.menu_all_project"/>
169
170
171         <record id="open_view_all_project_unclosed_open" model="ir.actions.act_window">
172             <field name="name">Open projects</field>
173             <field name="res_model">project.project</field>
174             <field name="view_type">tree</field>
175             <field name="domain">[('parent_id','=',False),('state','=','open')]</field>
176             <field name="view_id" ref="view_project"/>
177         </record>
178         <menuitem action="open_view_all_project_unclosed_open" id="menu_all_project_unclosed_open" parent="project.menu_all_project_unclosed"/>
179
180
181         <record id="open_view_project_open" model="ir.actions.act_window">
182             <field name="name">Open projects</field>
183             <field name="res_model">project.project</field>
184             <field name="view_type">form</field>
185             <field name="domain">[('state','=','open')]</field>
186             <field name="view_id" ref="view_project"/>
187         </record>
188         <menuitem id="next_id_54" name="Projects" parent="project.menu_definitions"/><menuitem action="open_view_project_open" id="menu_open_view_project_open" parent="next_id_54"/>
189
190
191         <record id="open_view_project" model="ir.actions.act_window">
192             <field name="name">Projects</field>
193             <field name="res_model">project.project</field>
194             <field name="view_type">form</field>
195             <field name="domain">[]</field>
196             <field name="view_id" ref="view_project"/>
197         </record>
198         <menuitem action="open_view_project" id="menu_open_view_project" parent="project.menu_definitions"/>
199
200         <record id="view_task_work_form" model="ir.ui.view">
201             <field name="name">project.task.work.form</field>
202             <field name="model">project.task.work</field>
203             <field name="type">form</field>
204             <field name="arch" type="xml">
205                 <form string="Task Work">
206                     <field colspan="4" name="name" select="1"/>
207                     <field name="hours" select="1" widget="float_time"/>
208                     <field name="date" select="1"/>
209                     <field name="user_id" select="1"/>
210                 </form>
211             </field>
212         </record>
213
214         <record id="view_task_work_tree" model="ir.ui.view">
215             <field name="name">project.task.work.tree</field>
216             <field name="model">project.task.work</field>
217             <field name="type">tree</field>
218             <field name="arch" type="xml">
219                 <tree editable="top" string="Task Work">
220                     <field name="date"/>
221                     <field name="name"/>
222                     <field name="hours" widget="float_time"/>
223                     <field name="user_id"/>
224                 </tree>
225             </field>
226         </record>
227
228         <record id="view_my_project" model="ir.ui.view">
229             <field name="name">project.project.tree</field>
230             <field name="model">project.project</field>
231             <field name="type">tree</field>
232             <field name="field_parent">child_id</field>
233             <field name="arch" type="xml">
234                 <tree string="My projects">
235                     <field name="name"/>
236                     <field name="partner_id"/>
237                     <field name="planned_hours" widget="float_time"/>
238                     <field name="effective_hours" widget="float_time"/>
239                     <field name="progress_rate" widget="progressbar"/>
240                     <field name="state"/>
241                 </tree>
242             </field>
243         </record>
244         <record id="open_view_my_project" model="ir.actions.act_window">
245             <field name="name">My projects</field>
246             <field name="res_model">project.project</field>
247             <field name="view_type">tree</field>
248             <field name="domain">[('manager', '=', uid)]</field>
249             <field name="view_id" ref="view_my_project"/>
250         </record>
251         <menuitem action="open_view_my_project" id="menu_open_view_my_project" parent="project.menu_main"/>
252
253
254         <record id="open_view_my_project_open_unclosed" model="ir.actions.act_window">
255             <field name="name">My unclosed projects</field>
256             <field name="res_model">project.project</field>
257             <field name="view_type">tree</field>
258             <field name="domain">[('manager', '=', uid),('state','&lt;&gt;','cancelled'),('state','&lt;&gt;','done')]</field>
259             <field name="view_id" ref="view_my_project"/>
260         </record>
261         <menuitem action="open_view_my_project_open_unclosed" id="menu_open_view_my_project_open_unclosed" parent="project.menu_open_view_my_project"/>
262
263
264         <record id="open_view_my_project_open" model="ir.actions.act_window">
265             <field name="name">My open projects</field>
266             <field name="res_model">project.project</field>
267             <field name="view_type">tree</field>
268             <field name="domain">[('manager', '=', uid),('state','=','open')]</field>
269             <field name="view_id" ref="view_my_project"/>
270         </record>
271         <menuitem action="open_view_my_project_open" id="menu_open_view_my_project_open" parent="project.menu_open_view_my_project_open_unclosed"/>
272
273         <!-- Task -->
274         <record id="view_task_form2" model="ir.ui.view">
275             <field name="name">project.task.form</field>
276             <field name="model">project.task</field>
277             <field name="type">form</field>
278             <field eval="2" name="priority"/>
279             <field name="arch" type="xml">
280                 <form string="Task edition">
281                     <notebook>
282                         <page string="Information">
283                             <field name="name" select="1"/>
284                             <field name="project_id" required="1" select="1"/>
285                             <field name="user_id" select="1"/>
286                             <field name="priority"/>
287                             <field name="date_deadline" select="2"/>
288                             <field name="planned_hours" widget="float_time"/>
289                             <separator colspan="4" string="Description"/>
290                             <field colspan="4" name="description" nolabel="1" select="2"/>
291                             <field name="effective_hours" widget="float_time"/>
292                             <field name="progress"/>
293                             <field colspan="4" name="work_ids" nolabel="1"/>
294                             <newline/>
295                             <group col="11" colspan="4">
296                                 <field name="state" select="1"/>
297                                 <button name="do_draft" states="open" string="Set Draft" type="object"/>
298                                 <button name="do_open" states="pending,draft" string="Open" type="object"/>
299                                 <button name="do_reopen" states="done,cancelled" string="Re-open" type="object"/>
300                                 <button name="do_pending" states="open" string="Set Pending" type="object"/>
301                                 <button groups="base.group_extended" name="%(wizard_delegate_task)d" states="pending,open" string="Delegate" type="action"/>
302                                 <button name="%(wizard_close_task)d" states="pending,open" string="Done" type="action"/>
303                                 <button name="do_cancel" states="draft,open,pending" string="Cancel" type="object"/>
304
305                             </group>
306                         </page>
307                         <page groups="base.group_extended" string="Delegations">
308                             <field colspan="4" name="history" nolabel="1"/>
309                             <field colspan="4" height="150" name="child_ids" nolabel="1">
310                                 <tree string="Delegated tasks">
311                                     <field name="name"/>
312                                     <field name="user_id"/>
313                                     <field name="date_deadline"/>
314                                     <field name="planned_hours" widget="float_time"/>
315                                     <field name="effective_hours" widget="float_time"/>
316                                     <field name="state"/>
317                                 </tree>
318                             </field>
319                             <field colspan="4" name="parent_id"/>
320                         </page>
321                         <page groups="base.group_extended" string="Extra Info">
322                             <field name="date_start" select="2"/>
323                             <field name="date_close" select="2"/>
324                             <field name="type"/>
325                             <field name="sequence"/>
326                             <field name="active" select="2"/>
327                             <field name="start_sequence"/>
328                             <field name="partner_id" select="2"/>
329                             <newline/>
330                             <field name="invoice_id"/>
331                             <field name="billable" select="2"/>
332                             <separator colspan="4" string="Notes"/>
333                             <field colspan="4" name="notes" nolabel="1"/>
334                         </page>
335                     </notebook>
336                 </form>
337             </field>
338         </record>
339         <record id="view_task_tree2" model="ir.ui.view">
340             <field name="name">project.task.tree</field>
341             <field name="model">project.task</field>
342             <field name="type">tree</field>
343             <field eval="2" name="priority"/>
344             <field name="arch" type="xml">
345                 <tree colors="grey:state in ('cancel','done');blue:state=='pending'" string="Tasks">
346                     <field name="sequence"/>
347                     <field name="name"/>
348                     <field name="project_id"/>
349                     <field name="user_id"/>
350                     <field name="date_deadline"/>
351                     <field name="progress_rate" widget="progressbar"/>
352                     <field name="planned_hours" sum="Planned hours" widget="float_time"/>
353                     <field name="effective_hours" sum="Effective hours" widget="float_time"/>
354                     <field name="priority"/>
355                     <field name="state"/>
356                 </tree>
357             </field>
358         </record>
359
360         <record id="view_task_calendar" model="ir.ui.view">
361             <field name="name">project.task.calendar</field>
362             <field name="model">project.task</field>
363             <field name="type">calendar</field>
364             <field eval="2" name="priority"/>
365             <field name="arch" type="xml">
366                 <calendar color="user_id" date_delay="planned_hours" date_start="date_start" string="Tasks">
367                     <field name="name"/>
368                     <field name="project_id"/>
369                 </calendar>
370             </field>
371         </record>
372
373         <record id="action_view_task" model="ir.actions.act_window">
374             <field name="name">All Tasks</field>
375             <field name="res_model">project.task</field>
376             <field name="view_type">form</field>
377             <field name="view_mode">tree,form,calendar</field>
378             <field eval="False" name="view_id"/>
379         </record>
380         <menuitem action="action_view_task" id="menu_action_view_task" parent="project.menu_main"/>
381
382         <record id="action_view_task2" model="ir.actions.act_window">
383             <field name="name">Unbilled closed tasks</field>
384             <field name="res_model">project.task</field>
385             <field name="view_type">form</field>
386             <field name="view_mode">tree,form</field>
387             <field name="domain">[('state','=','done'), ('billable','=',True), ('invoice_id','=',False)]</field>
388         </record>
389         <menuitem groups="base.group_extended" id="menu_action_billable" name="Billable Tasks" parent="project.menu_action_view_task"/>
390
391         <menuitem action="action_view_task2" id="menu_action_view_task2" parent="project.menu_action_billable"/>
392
393         <record id="action_view_task3" model="ir.actions.act_window">
394             <field name="name">Unbilled open tasks</field>
395             <field name="res_model">project.task</field>
396             <field name="view_type">form</field>
397             <field name="view_mode">tree,form</field>
398             <field name="domain">[('state','=','open'), ('billable','=',True), ('invoice_id','=',False)]</field>
399         </record>
400         <menuitem action="action_view_task3" id="menu_action_view_task3" parent="project.menu_action_billable"/>
401
402         <record id="action_view_task4" model="ir.actions.act_window">
403             <field name="name">My Tasks</field>
404             <field name="res_model">project.task</field>
405             <field name="view_type">form</field>
406             <field name="view_mode">tree,form</field>
407             <field name="domain">[('user_id', '=', uid)]</field>
408         </record>
409         <menuitem action="action_view_task4" id="menu_action_view_task4" parent="project.menu_main"/>
410
411         <record id="action_view_task5_pending" model="ir.actions.act_window">
412             <field name="name">My Pending Tasks</field>
413             <field name="res_model">project.task</field>
414             <field name="view_type">form</field>
415             <field name="view_mode">tree,form</field>
416             <field name="domain">[('user_id', '=', uid),('state','=','pending')]</field>
417         </record>
418         <menuitem action="action_view_task5_pending" id="menu_tasks_yours_pending" parent="menu_action_view_task4"/>
419
420         <record id="action_view_task5" model="ir.actions.act_window">
421             <field name="name">My Open Tasks</field>
422             <field name="res_model">project.task</field>
423             <field name="view_type">form</field>
424             <field name="view_mode">tree,form</field>
425             <field name="domain">[('user_id', '=', uid),('state','=','open')]</field>
426         </record>
427         <menuitem action="action_view_task5" id="menu_tasks_yours" parent="menu_action_view_task4"/>
428
429         <record id="action_view_task5_prog" model="ir.actions.act_window">
430             <field name="name">My Tasks in Progress</field>
431             <field name="res_model">project.task</field>
432             <field name="view_type">form</field>
433             <field name="view_mode">tree,form</field>
434             <field name="domain">[('user_id', '=', uid),('state','=','open')]</field>
435         </record>
436         <menuitem action="action_view_task5_prog" id="menu_tasks_yours_prog" parent="menu_action_view_task4"/>
437
438         <record id="action_view_task_new" model="ir.actions.act_window">
439             <field name="name">New Task</field>
440             <field name="res_model">project.task</field>
441             <field name="view_type">form</field>
442             <field name="view_mode">form,tree</field>
443         </record>
444         <menuitem action="action_view_task_new" id="menu_action_view_task_new" parent="menu_action_view_task4"/>
445
446         <record id="action_view_task6" model="ir.actions.act_window">
447             <field name="name">Open Tasks</field>
448             <field name="res_model">project.task</field>
449             <field name="view_type">form</field>
450             <field name="view_mode">tree,form</field>
451             <field name="domain">[('state', '=', 'open')]</field>
452         </record>
453         <menuitem action="action_view_task6" id="menu_action_view_task6" parent="project.menu_action_view_task"/>
454
455         <record id="action_view_task6_prog" model="ir.actions.act_window">
456             <field name="name">Tasks in Progress</field>
457             <field name="res_model">project.task</field>
458             <field name="view_type">form</field>
459             <field name="view_mode">tree,form</field>
460             <field name="domain">[('state', '=', 'progress')]</field>
461         </record>
462         <menuitem action="action_view_task6_prog" id="menu_action_view_task6_prog" parent="project.menu_action_view_task"/>
463
464         <record id="action_view_task7" model="ir.actions.act_window">
465             <field name="name">Unassigned Tasks</field>
466             <field name="res_model">project.task</field>
467             <field name="view_type">form</field>
468             <field name="view_mode">tree,form</field>
469             <field name="domain">[('user_id', '=', False)]</field>
470         </record>
471         <menuitem action="action_view_task7" id="menu_action_view_task7" parent="project.menu_action_view_task"/>
472
473         <!-- Opening task when double clicking on project -->
474         <record id="dblc_proj" model="ir.actions.act_window">
475             <field name="res_model">project.task</field>
476             <field name="name">Project's tasks</field>
477             <field name="view_type">form</field>
478             <field name="view_mode">tree,form</field>
479             <field name="domain">[('project_id', 'child_of', [active_id])]</field>
480         </record>
481         <record id="ir_project_task_open" model="ir.values">
482             <field eval=" 'tree_but_open'" name="key2"/>
483             <field eval="'project.project'" name="model"/>
484             <field name="name">View project's tasks</field>
485             <field eval="'ir.actions.act_window,'+str(dblc_proj)" name="value"/>
486             <field eval="True" name="object"/>
487         </record>
488
489         <!-- Task types -->
490         <record id="task_type_edit" model="ir.ui.view">
491             <field name="name">project.task.type.form</field>
492             <field name="model">project.task.type</field>
493             <field name="type">form</field>
494             <field name="arch" type="xml">
495                 <form string="Task type">
496                     <field colspan="4" name="name" select="1"/>
497                     <field colspan="4" name="description" select="1"/>
498                 </form>
499             </field>
500         </record>
501         <record id="task_type_tree" model="ir.ui.view">
502             <field name="name">project.task.type.tree</field>
503             <field name="model">project.task.type</field>
504             <field name="type">tree</field>
505             <field name="arch" type="xml">
506                 <tree string="Task type">
507                     <field name="name"/>
508                 </tree>
509             </field>
510         </record>
511         <record id="open_task_type_form" model="ir.actions.act_window">
512             <field name="name">Task Types</field>
513             <field name="res_model">project.task.type</field>
514             <field name="view_type">form</field>
515             <field name="view_id" ref="task_type_tree"/>
516         </record>
517         <menuitem action="open_task_type_form" id="menu_task_types" parent="project.menu_definitions"/>
518
519         <act_window domain="[('manager', '=', active_id)]" id="act_res_users_2_project_project" name="User's projects" res_model="project.project" src_model="res.users" view_mode="tree,form" view_type="form"/>
520
521         <act_window domain="[('project_id', '=', active_id),('state', '&lt;&gt;', 'cancelled'),('state', '&lt;&gt;', 'done')]" id="act_project_project_2_project_task_opened" name="Opened tasks" res_model="project.task" src_model="project.project" view_mode="tree,form" view_type="form"/>
522
523         <act_window domain="[('user_id', '=', active_id),('state', '&lt;&gt;', 'cancelled'),('state', '&lt;&gt;', 'done')]" id="act_res_users_2_project_task_opened" name="Assigned tasks" res_model="project.task" src_model="res.users" view_mode="tree,form" view_type="form"/>
524
525         <act_window domain="[('user_id', '=', active_id),('date', '&gt;=', time.strftime('%Y-%m-01'))]" id="act_res_users_2_project_task_work_month" name="Month works" res_model="project.task.work" src_model="res.users" view_mode="tree,form" view_type="form"/>
526
527     </data>
528 </terp>