[IMP]:added icons on buttons.
[odoo/odoo.git] / addons / project_long_term / project_long_term_view.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <openerp>
3     <data>
4
5     <menuitem id="base.menu_project_long_term" name="Long Term Planning" parent="base.menu_main_pm" sequence="3"/>
6
7     # ------------------------------------------------------
8     # Project User Allocation
9     # ------------------------------------------------------
10
11         <record id="view_project_user_allocation_gantt" model="ir.ui.view">
12             <field name="name">project.user.allocation.gantt</field>
13             <field name="model">project.user.allocation</field>
14             <field name="type">gantt</field>
15             <field name="arch" type="xml">
16               <gantt date_start="date_start" date_stop="date_end" default_group_by="user_id">
17               </gantt>
18             </field>
19         </record>
20
21         <record id="view_project_user_allocation_calendar" model="ir.ui.view">
22             <field name="name">project.user.allocation.calendar</field>
23             <field name="model">project.user.allocation</field>
24             <field name="type">calendar</field>
25             <field eval="2" name="priority"/>
26             <field name="arch" type="xml">
27                 <calendar color="user_id" date_start="date_start" date_stop="date_end" day_length="12" string="Users">
28                     <field name="phase_id"/>
29                     <field name="project_id"/>
30                 </calendar>
31             </field>
32         </record>
33
34
35         <record id="view_project_user_allocation_form" model="ir.ui.view">
36             <field name="name">project.user.allocation.form</field>
37             <field name="model">project.user.allocation</field>
38             <field name="type">form</field>
39             <field name="arch" type="xml">
40                 <form string="Project User Allocation">
41                     <group colspan="4" col="6">
42                         <field name="user_id"/>
43                         <field name="phase_id"/>
44                         <field name="project_id"/>
45                         <field name="date_start"/>
46                         <field name="date_end"/>
47                     </group>
48                 </form>
49             </field>
50         </record>
51
52         <record id="view_project_user_allocation_list" model="ir.ui.view">
53             <field name="name">project.user.allocation.list</field>
54             <field name="model">project.user.allocation</field>
55             <field name="type">tree</field>
56             <field name="priority" eval="5"/>
57             <field name="arch" type="xml">
58                 <tree editable="bottom" string="Project User Allocation">
59                     <field name="user_id"/>
60                     <field name="phase_id"/>
61                     <field name="project_id"/>
62                 </tree>
63             </field>
64         </record>
65
66        <record id="view_project_user_allocation_search" model="ir.ui.view">
67             <field name="name">project.user.allocation.search</field>
68             <field name="model">project.user.allocation</field>
69             <field name="type">search</field>
70             <field name="arch" type="xml">
71                 <search string="Planning of Users">
72                     <group>
73                         <field name="user_id"/>
74                         <field name="phase_id"/>
75                         <field name="project_id"/>
76                     </group>
77                     <newline/>
78                     <group expand="0" string="Group By...">
79                         <filter name="user" string="User" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
80                         <separator orientation="vertical"/>
81                         <filter string="Project" icon="terp-folder-violet" domain="[]" context="{'group_by':'project_id'}"/>
82                         <filter string="Phase" icon="terp-project" domain="[]" context="{'group_by':'phase_id'}"/>
83                     </group>
84                 </search>
85             </field>
86         </record>
87         <record id="act_resouce_allocation" model="ir.actions.act_window">
88             <field name="name">Planning of Users</field>
89             <field name="res_model">project.user.allocation</field>
90             <field name="view_type">form</field>
91             <field name="view_mode">gantt,tree,form,calendar</field>
92             <field name="context">{}</field>
93             <field name="search_view_id" ref="view_project_user_allocation_search"/>
94         </record>
95
96
97     # ------------------------------------------------------
98     # Project Phase
99     # ------------------------------------------------------
100         <act_window id="act_project_phases"
101             name="Phases"
102             src_model="project.project"
103             res_model="project.phase"
104             view_type="form"
105             view_mode="tree,form"
106             context="{'search_default_project_id': [active_id], 'default_project_id': active_id}"/>
107         
108         <record id="project_phase_form" model="ir.ui.view">
109             <field name="name">Inherit project form : Phase</field>
110             <field name="model">project.project</field>
111             <field name="type">form</field>
112             <field name="inherit_id" ref="project.edit_project"/>
113             <field name="arch" type="xml">
114                 <xpath expr='//tr[@name="use_tasks_row"]' position='after'>
115                     <tr name="use_phases_row">
116                         <th style="border-right:1px solid #DDD;" width="140px">Phases Planing</th>
117                         <td><field name="use_phases" nolabel="1"/></td>
118                         <td style="text-align:right;"><button icon=" terp-emblem-important" class="oe_btn_width" name="%(act_project_phases)d" string="Phases" type="action" attrs="{'invisible':[('use_phases','=', 0)]}"/></td>
119                     </tr>
120                 </xpath>
121             </field>
122         </record>
123
124         <record id="view_project_kanban_phase" model="ir.ui.view">
125             <field name="name">project.project.kanban.inherited</field>
126             <field name="model">project.project</field>
127             <field name="type">kanban</field>
128             <field name="inherit_id" ref="project.view_project_kanban"/>
129             <field name="arch" type="xml">
130                 <field name="use_tasks" position="after">
131                     <field name="use_phases"/>
132                     <field name="phase_count"/>
133                 </field>
134                 <xpath expr="//div[contains(@class, 'oe_kanban_project_list')]" position="inside">
135                     <a t-if="record.use_phases.raw_value"
136                         name="%(act_project_phases)d" type="action">Phases(<field name="phase_count"/>)</a>
137                 </xpath>
138             </field>
139         </record>
140         
141         <record id="view_project_phase_form" model="ir.ui.view">
142             <field name="name">project.phase.form</field>
143             <field name="model">project.phase</field>
144             <field name="type">form</field>
145             <field name="arch" type="xml">
146                 <form layout="manual">
147                 <header>
148                     <button string="Start Phase" name="set_open" states="pending,draft"/>
149                     <button string="Done" name="set_done" states="pending,open"/>
150                     <button string="Pending" name="set_pending" states="open"/>
151                     <button string="Draft" name="set_draft" states="open"/>
152                     <button string="Cancel" name="set_cancel" states="draft,open,pending"/>
153                     <field name="state" widget="statusbar" statusbar_visible="draft,open,done" statusbar_colors='{"pending":"blue"}'/>
154                 </header>
155                 <sheet string="Project Phase" layout="auto">
156                     <group colspan="6" col="6">
157                         <group colspan="6" col="7" >
158                             <field name="name" colspan="4"/>
159                             <field name="project_id" on_change="onchange_project(project_id)" colspan="3"/>
160                             <field name="date_start"/>
161                             <field name="date_end"/>
162                             <field name="duration"/>
163                             <field name="product_uom" nolabel="1"/>
164                         </group>
165                     </group>
166                     <notebook colspan="4">
167                         <page string="Planning of Users">
168                             <field colspan="4" name="user_ids" nolabel="1">
169                                  <tree editable="bottom" string="Project Users">
170                                     <field name="user_id"/>
171                                     <field name="date_start"/>
172                                     <field name="date_end"/>
173                                   </tree>
174                                   <form string="Project Users">
175                                     <field name="user_id"/>
176                                     <field name="date_start" />
177                                     <field name="date_end"/>
178                                   </form>
179                              </field>
180                         </page>
181                         <page string="Tasks Details">
182                             <field colspan="4" name="task_ids" readonly="1" context="{'default_project_id' :project_id}" nolabel="1">
183                                  <tree string="Project's Tasks">
184                                     <field name="sequence"/>
185                                     <field name="name"/>
186                                     <field name="user_id"/>
187                                     <field name="date_start"/>
188                                     <field name="date_end" />
189                                     <field name="planned_hours" widget="float_time"/>
190                                     <field name="project_id" invisible="1"/>
191                                     <field name="total_hours" sum='Total Hours'/>
192                                     <field name="remaining_hours" widget="float_time" sum="Remaining Hours"/>
193                                     <field name="state"/>
194                                   </tree>
195                              </field>
196                         </page>
197                         <page string="Constraints">
198                            <group colspan="2" col="2">
199                                 <separator string="Constraints" colspan="2"/>
200                                 <field name="constraint_date_start"/>
201                                 <field name="constraint_date_end"/>
202                             </group>
203                             <group colspan="2" col="2">
204                                 <separator string="Displaying Settings" colspan="2"/>
205                                 <field name="sequence"/>
206                             </group>
207                            <separator colspan="4" string="Force Assigned Users"/>
208                            <field colspan="4" name="user_force_ids" nolabel="1"/>
209                            <separator colspan="4" string="Previous Phases"/>
210                            <field colspan="4" name="previous_phase_ids" nolabel="1"/>
211                            <separator colspan="4" string="Next Phases"/>
212                            <field colspan="4" name="next_phase_ids" nolabel="1"/>
213                         </page>
214                     </notebook>
215                     <newline/>
216                 </sheet>
217                 </form>
218             </field>
219         </record>
220
221         <record id="view_project_phase_list" model="ir.ui.view">
222             <field name="name">project.phase.list</field>
223             <field name="model">project.phase</field>
224             <field name="type">tree</field>
225             <field name="priority" eval="5"/>
226             <field name="arch" type="xml">
227                 <tree colors="grey:state in ('cancelled','done');blue:state == 'pending'" string="Project Phases">
228                     <field name="name"/>
229                     <field name="project_id" on_change="onchange_project(project_id)"/>
230                     <field name="date_start"/>
231                     <field name="date_end"/>
232                     <field name="duration"/>
233                     <field name="state"/>
234                 </tree>
235             </field>
236         </record>
237
238         <record id="view_project_phase_calendar" model="ir.ui.view">
239             <field name="name">project.phase.calendar</field>
240             <field name="model">project.phase</field>
241             <field name="type">calendar</field>
242             <field eval="2" name="priority"/>
243             <field name="arch" type="xml">
244                 <calendar color="project_id" date_start="date_start" date_stop="date_end" day_length="12">
245                     <field name="name"/>
246                 </calendar>
247             </field>
248         </record>
249
250         <record id="view_project_phase_gantt" model="ir.ui.view">
251             <field name="name">project.phase.gantt</field>
252             <field name="model">project.phase</field>
253             <field name="type">gantt</field>
254             <field eval="2" name="priority"/>
255             <field name="arch" type="xml">
256                 <gantt date_stop="date_end" date_start="date_start" default_group_by="project_id">
257                 </gantt>
258             </field>
259         </record>
260
261         <record id="view_project_phase_search" model="ir.ui.view">
262             <field name="name">project.phase.search</field>
263             <field name="model">project.phase</field>
264             <field name="type">search</field>
265             <field name="arch" type="xml">
266                 <search string="Project Phases">
267                     <group>
268                         <filter string="New" domain="[('state','=','draft')]"  name="current" help="New Phases" icon="terp-check"/>
269                         <filter string="In Progress" name="Progress" domain="[('state','=','open')]" help="In Progress Phases" icon="terp-camera_test"/>
270                         <filter string="Pending" domain="[('state','=','pending')]" help="Pending Phases" icon="terp-gtk-media-pause"/>
271                         <separator orientation="vertical"/>
272                         <field name="name"/>
273                         <field name="project_id">
274                             <filter domain="[('project_id.user_id','=',uid)]" help="My Projects" icon="terp-folder-violet"/>
275                         </field>
276                         <field name="date_start"/>
277                         <field name="date_end"/>
278                     </group>
279                     <newline/>
280                     <group expand="0" string="Group By...">
281                         <filter string="Project" icon="terp-folder-violet" domain="[]" context="{'group_by':'project_id'}" name="project"/>
282                         <separator orientation="vertical"/>
283                         <filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
284                         <separator orientation="vertical"/>
285                         <filter string="Month" icon="terp-go-month" domain="[]" context="{'group_by':'date_start'}" help="Start Month"/>
286                     </group>
287                 </search>
288             </field>
289         </record>
290
291         <record id="act_project_phase" model="ir.actions.act_window">
292             <field name="name">Project Phases</field>
293             <field name="res_model">project.phase</field>
294             <field name="view_type">form</field>
295             <field name="view_mode">gantt,tree,form,calendar</field>
296             <field name="context">{}</field>
297             <field name="search_view_id" ref="view_project_phase_search"/>
298             <field name="help">A project can be split into the different phases. For each phase, you can define your users allocation, describe different tasks and link your phase to previous and next phases, add date constraints for the automated scheduling. Use the long term planning in order to planify your available users, convert your phases into a series of tasks when you start working on the project.</field>
299         </record>
300
301         <record id="act_project_phase_list" model="ir.actions.act_window">
302             <field name="name">Project Phases</field>
303             <field name="res_model">project.phase</field>
304             <field name="view_type">form</field>
305             <field name="view_mode">tree,form,calendar</field>
306              <field name="context">{}</field>
307             <field name="search_view_id" ref="view_project_phase_search"/>
308         </record>
309
310
311     # ------------------------------------------------------
312     # Project Task
313     # ------------------------------------------------------
314
315         <record id="view_phase_task_form2" model="ir.ui.view">
316             <field name="name">phase.task.form2</field>
317             <field name="model">project.task</field>
318             <field name="type">form</field>
319             <field name="inherit_id" ref="project.view_task_form2"/>
320             <field name="arch" type="xml">
321                 <xpath expr="//field[@name='effective_hours']" position="after">
322                     <field name="phase_id" context="{'default_project_id' : project_id}"/>
323                 </xpath>
324             </field>
325         </record>
326         <record id="view_phase_task_search_form" model="ir.ui.view">
327             <field name="name">phase.task.search.form</field>
328             <field name="model">project.task</field>
329             <field name="type">search</field>
330             <field name="inherit_id" ref="project.view_task_search_form"/>
331             <field name="arch" type="xml">
332                 <field name="user_id" position="before">
333                     <field name="phase_id" select="1"/>
334                 </field>
335             </field>
336         </record>
337
338          <record id="view_phase_task_search_form_group" model="ir.ui.view">
339             <field name="name">phase.task.search.form.group</field>
340             <field name="model">project.task</field>
341             <field name="type">search</field>
342             <field name="inherit_id" ref="project.view_task_search_form"/>
343             <field name="arch" type="xml">
344             <filter string="Project" name="group_project_id" icon="terp-folder-violet" domain="[]" context="{'group_by':'project_id'}" position="after">
345                 <filter string="Project Phase" name="group_project_id_phase" icon="terp-folder-violet" domain="[]" context="{'group_by':'phase_id'}"/>
346             </filter>
347             </field>
348         </record>
349
350          <record id="view_phase_task_search_form_tree" model="ir.ui.view">
351             <field name="name">phase.task.search.form.tree</field>
352             <field name="model">project.task</field>
353             <field name="type">tree</field>
354             <field name="inherit_id" ref="project.view_task_tree2"/>
355             <field name="arch" type="xml">
356                 <field name="project_id" position="after">
357                     <field name="phase_id" invisible="1"/>
358                 </field>
359             </field>
360         </record>
361
362     <act_window
363         context="{'search_default_phase_id': [active_id], 'default_phase_id' : active_id}"
364         id="project_phase_task_list"
365         name="Related Tasks"
366         res_model="project.task"
367         src_model="project.phase"
368         view_mode="tree,form"
369         />
370      
371     <record id="analytic_account_inherited_phase_form" model="ir.ui.view">
372             <field name="name">account.analytic.account.phase.form.inherit</field>
373             <field name="model">account.analytic.account</field>
374             <field name="type">form</field>
375             <field name="inherit_id" ref="analytic.view_account_analytic_account_form"/>
376             <field eval="18" name="priority"/>
377             <field name="arch" type="xml">
378                 <xpath expr='//separator[@name="project_sep"]' position='replace'>
379                     <separator colspan="2" string="Project" name="project_sep"/>
380                 </xpath>
381                 <group name="project" position="inside">
382                     <field name="use_phases"/>
383                 </group>
384             </field>
385         </record>
386
387     # ------------------------------------------------------
388     # Menu Items
389     # ------------------------------------------------------
390
391         <menuitem action="act_project_phase_list"
392             id="menu_project_phase_list" parent="project.menu_project_management" sequence="2"/>
393
394         <menuitem action="act_project_phase"
395             icon="STOCK_INDENT"
396             id="menu_project_phase"   parent="base.menu_project_long_term" sequence="1"/>
397
398         <menuitem id="menu_resouce_allocation" action="act_resouce_allocation"
399             icon="STOCK_INDENT"
400             parent="base.menu_project_long_term" sequence="2"/>
401
402         <menuitem id="menu_pm_users_project1"
403             name="Resources" parent="project.menu_definitions" sequence="3"/>
404
405         <menuitem id="menu_phase_schedule" name="Scheduling" parent="base.menu_main_pm" sequence="4" groups="project.group_project_user,project.group_project_manager"/>
406         <menuitem action="resource.action_resource_resource_tree" id="menu_view_resource" parent="menu_pm_users_project1" sequence="2"/>
407         <menuitem action="resource.action_resource_calendar_form" id="menu_view_resource_calendar" parent="menu_pm_users_project1" sequence="5"/>
408         <menuitem action="resource.action_resource_calendar_leave_tree" id="menu_view_resource_calendar_leaves" parent="menu_pm_users_project1" sequence="3"/>
409
410     </data>
411 </openerp>