[IMP] improve views, reviewed widget=selection
[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="menu_project_long_term" name="Long Term Planning" parent="base.menu_main_pm" sequence="1"/>
6
7     # ------------------------------------------------------
8     # Project Resource Allocation
9     # ------------------------------------------------------
10
11         <record id="view_project_resource_allocation_form" model="ir.ui.view">
12             <field name="name">project.resource.allocation.form</field>
13             <field name="model">project.resource.allocation</field>
14             <field name="type">form</field>
15             <field name="arch" type="xml">
16                 <form string="Project Resource Allocation">
17                     <field name="resource_id" select="1"/>
18                     <field name="phase_id"/>
19                     <field name="useability"/>
20                 </form>
21             </field>
22         </record>
23
24         <record id="view_project_resource_allocation_list" model="ir.ui.view">
25             <field name="name">project.resource.allocation.list</field>
26             <field name="model">project.resource.allocation</field>
27             <field name="type">tree</field>
28             <field name="priority" eval="5"/>
29             <field name="arch" type="xml">
30                 <tree editable="bottom" string="Project Resource Allocation">
31                     <field name="resource_id"/>
32                     <field name="phase_id"/>
33                     <field name="useability"/>
34                 </tree>
35             </field>
36         </record>
37
38        <record id="view_project_resource_allocation_search" model="ir.ui.view">
39             <field name="name">project.resource.allocation.search</field>
40             <field name="model">project.resource.allocation</field>
41             <field name="type">search</field>
42             <field name="arch" type="xml">
43                 <search string="Resource Allocations">
44                     <group colspan="4" col="20">
45                         <field name="resource_id"/>
46                         <field name="phase_id"/>
47                     </group>
48                     <newline/>
49                     <group expand="1" string="Group By..." colspan="4" col="20">
50                         <filter name="resource" string="Resource" icon="terp-folder-blue" domain="[]" context="{'group_by':'resource_id'}"/>
51                         <filter string="Phase" icon="terp-project" domain="[]" context="{'group_by':'phase_id'}"/>
52                     </group>
53                 </search>
54             </field>
55         </record>
56
57        <record id="act_resouce_allocation" model="ir.actions.act_window">
58             <field name="name">Resource Allocations</field>
59             <field name="res_model">project.resource.allocation</field>
60             <field name="view_type">form</field>
61             <field name="view_mode">tree,form</field>
62              <field name="context">{'search_default_resource': 1} </field>
63             <!--<field name="search_view_id" ref="view_project_phase_search"/>-->
64         </record>
65
66
67     # ------------------------------------------------------
68     # Project Phase
69     # ------------------------------------------------------
70
71         <record id="view_project_phase_form" model="ir.ui.view">
72             <field name="name">project.phase.form</field>
73             <field name="model">project.phase</field>
74             <field name="type">form</field>
75             <field name="arch" type="xml">
76                 <form string="Project Phase">
77                     <group colspan="6" col="6">
78                         <field name="name" select="1"/>
79                         <field name="project_id" on_change="onchange_project(project_id)"/>
80                         <field name="responsible_id"/>
81                     </group>
82                     <group colspan="6" col="6">
83                         <field name="duration" />
84                         <field name="product_uom" nolabel="1" domain="[('category_id.name', '=', 'Working Time')]"/>
85                         <field name="date_start"/>
86                         <field name="date_end"/>
87                     </group>
88                     <notebook colspan="4">
89                         <page string="Resource Allocation">
90                             <field colspan="4" name="resource_ids" nolabel="1">
91                                  <tree editable="bottom" string="Project Resource Allocation">
92                                     <field name="resource_id" context="{'project_id':parent.project_id}"/>
93                                     <field name="useability"/>
94                                   </tree>
95                                   <form string="Project Resource Allocation">
96                                     <field name="resource_id" context="{'project_id':parent.project_id}"/>
97                                     <field name="useability"/>
98                                   </form>
99                              </field>
100                             <separator string="" colspan="4"/>
101                             <group col="12" colspan="4">
102                                 <field name="state" select="1"/>
103                                 <button string="Draft" name="set_draft" states="open" icon="gtk-indent"/>
104                                 <button string="Start Phase" name="set_open" states="pending,draft" icon="gtk-execute"/>
105                                 <button string="Done" name="set_done" states="draft,pending,open" icon="gtk-apply"/>
106                                 <button string="Pending" name="set_pending" states="open" icon="gtk-media-pause"/>
107                                 <button string="Cancel" name="set_cancel" states="draft,open,pending" icon="gtk-cancel"/>
108                             </group>
109                         </page>
110                         <page string="Other Info">
111                            <group colspan="2" col="2">
112                                 <separator string="Constraints" colspan="2"/>
113                                 <field name="constraint_date_start"/>
114                                 <field name="constraint_date_end"/>
115                             </group>
116                             <group colspan="2" col="2">
117                                 <separator string="Scheduling" colspan="2"/>
118                                 <field name="sequence"/>
119                             </group>
120                            <separator colspan="4" string="Previous Phases"/>
121                            <field colspan="4" name="previous_phase_ids" nolabel="1"/>
122                            <separator colspan="4" string="Next Phases"/>
123                            <field colspan="4" name="next_phase_ids" nolabel="1"/>
124                         </page>
125                         <page string="Task Detail">
126                             <separator colspan="4" string="Project's Tasks"/>
127                             <field colspan="4" name="task_ids" context="{'default_project_id' :project_id}" nolabel="1">
128                                  <tree editable="bottom" string="Project's Tasks">
129                                     <field name="name"/>
130                                     <field name="user_id"/>
131                                     <field name="planned_hours" widget="float_time"/>
132                                   </tree>
133                                   <form string="Project's Tasks">
134                                       <notebook colspan="4">
135                                           <page string="Task Detail">
136                                               <group colspan="4" col="4">
137                                                 <field name="name"/>
138                                                 <field name="project_id"/>
139                                                 <field name="user_id"/>
140                                             </group>
141                                             <group colspan="2" col="2">
142                                                   <separator string="Dates" colspan="2"/>
143                                                   <field name="date_start"/>
144                                                   <field name="date_deadline"/>
145                                             </group>
146                                             <group colspan="2" col="2">
147                                                   <separator string="Planning" colspan="2"/>
148                                                   <field name="planned_hours" widget="float_time"/>
149                                                 <field name="remaining_hours" widget="float_time" sum="Remaining Hours"/>
150                                                 <field name="effective_hours" invisible="1"/>
151                                             </group>
152                                             <group colspan="6" col="4">
153                                                 <field name="state"/>
154                                             </group>
155                                         </page>
156                                     </notebook>
157                                   </form>
158                              </field>
159                                <button name="%(action_project_schedule_tasks)d" string="Schedule Tasks" type="action" icon="gtk-jump-to"/>
160                         </page>
161                     </notebook>
162                     <newline/>
163                 </form>
164             </field>
165         </record>
166
167         <record id="view_project_phase_list" model="ir.ui.view">
168             <field name="name">project.phase.list</field>
169             <field name="model">project.phase</field>
170             <field name="type">tree</field>
171             <field name="priority" eval="5"/>
172             <field name="arch" type="xml">
173                 <tree string="Project Phases">
174                     <field name="name"/>
175                     <field name="project_id" on_change="onchange_project(project_id)"/>
176                     <field name="responsible_id"/>
177                     <field name="date_start"/>
178                     <!--<field name="date_end"/>
179                     <field name="duration"/>
180                     <field name="product_uom"/>-->
181                     <field name="state"/>
182                 </tree>
183             </field>
184         </record>
185
186         <record id="view_project_phase_calendar" model="ir.ui.view">
187             <field name="name">project.phase.calendar</field>
188             <field name="model">project.phase</field>
189             <field name="type">calendar</field>
190             <field eval="2" name="priority"/>
191             <field name="arch" type="xml">
192                 <calendar color="responsible_id" date_start="date_start" date_stop="date_end" day_length="12" string="Phases">
193                     <field name="name"/>
194                     <field name="project_id"/>
195                 </calendar>
196             </field>
197         </record>
198
199         <record id="view_project_phase_gantt" model="ir.ui.view">
200             <field name="name">project.phase.gantt</field>
201             <field name="model">project.phase</field>
202             <field name="type">gantt</field>
203             <field eval="2" name="priority"/>
204             <field name="arch" type="xml">
205                 <gantt color="responsible_id" date_stop="date_end" date_start="date_start" string="Phases">
206                     <level object="project.project" link="project_id" domain="[]">
207                         <field name="name"/>
208                     </level>
209                 </gantt>
210             </field>
211         </record>
212
213         <record id="view_project_phase_search" model="ir.ui.view">
214             <field name="name">project.phase.search</field>
215             <field name="model">project.phase</field>
216             <field name="type">search</field>
217             <field name="arch" type="xml">
218                 <search string="Project Phases">
219                     <group colspan="4" col="20">
220                         <filter string="Draft" domain="[('state','=','draft')]" help="Draft Phases" icon="terp-check" default="1"/>
221                         <filter string="In Progress" name="Progress" domain="[('state','=','open')]" help="Open Phases" icon="terp-camera_test"/>
222                         <filter string="Pending" domain="[('state','=','pending')]" help="Pending Phases" icon="terp-gtk-media-pause"/>
223                         <separator orientation="vertical"/>
224                         <field name="name"/>
225                         <field name="project_id">
226                             <filter domain="[('project_id.user_id','=',uid)]" help="My Projects" icon="terp-folder-blue"/>
227                         </field>
228                         <field name="responsible_id"/>
229                         <field name="date_start"/>
230                     </group>
231                     <newline/>
232                     <group expand="1" string="Group By..." colspan="4" col="20" groups="base.group_extended">
233                         <filter string="Project" icon="terp-folder-blue" domain="[]" context="{'group_by':'project_id'}"/>
234                         <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
235                         <filter string="User" icon="terp-personal" domain="[]" context="{'group_by':'responsible_id'}"/>
236                         <filter string="Start Date" icon="terp-gtk-jump-to-ltr" domain="[]" context="{'group_by':'date_start'}"/>
237                     </group>
238                 </search>
239             </field>
240         </record>
241
242         <record id="act_project_phase" model="ir.actions.act_window">
243             <field name="name">Project Phases</field>
244             <field name="res_model">project.phase</field>
245             <field name="view_type">form</field>
246             <field name="view_mode">gantt,tree,form,calendar</field>
247              <field name="context">{'search_default_responsible_id':uid}</field>
248             <field name="search_view_id" ref="view_project_phase_search"/>
249         </record>
250
251     # ------------------------------------------------------
252     # Project
253     # ------------------------------------------------------
254
255         <record id="view_phase_project_form1" model="ir.ui.view">
256             <field name="name">phase.project.form1</field>
257             <field name="model">project.project</field>
258             <field name="type">form</field>
259             <field name="inherit_id" ref="project.edit_project"/>
260             <field name="arch" type="xml">
261                 <field name="priority" position="before">
262                     <field name="resource_calendar_id"/>
263                 </field>
264
265             </field>
266        </record>
267
268     # ------------------------------------------------------
269     # Project Task
270     # ------------------------------------------------------
271
272     <act_window
273         id="project_phase_task_list"
274         name="Related Tasks"
275         res_model="project.task"
276         src_model="project.phase"
277         view_mode="tree,form"
278         domain="[('phase_id','=',active_id)]"/>
279
280     <act_window
281         domain="[('project_id', '=', active_id)]"
282         id="act_project_phases"
283         name="Phases"
284         res_model="project.phase"
285         src_model="project.project"
286         view_mode="tree,form"
287         view_type="form" />
288
289     # ------------------------------------------------------
290     # Menu Items
291     # ------------------------------------------------------
292
293         <menuitem action="act_project_phase"
294             groups="base.group_extended"
295             id="menu_project_phase" parent="menu_project_long_term" sequence="4"/>
296
297         <menuitem id="menu_resouce_allocation" action="act_resouce_allocation"
298             name="Resource Allocations" parent="menu_project_long_term" />
299
300         <!--<menuitem icon="terp-project" id="base.menu_main_pm" name="Project Management" sequence="1"/>-->
301         <menuitem id="menu_pm_resources_project1"
302             groups="base.group_extended"
303             name="Resources" parent="base.menu_main_pm" sequence="2"/>
304
305         <menuitem id="menu_phase_schedule" name="Scheduling" parent="menu_project_long_term"/>
306         <menuitem action="resource.action_resource_resource_tree" id="menu_view_resource" parent="menu_pm_resources_project1" sequence="1"/>
307         <menuitem action="resource.action_resource_calendar_form" id="menu_view_resource_calendar" parent="menu_pm_resources_project1" sequence="1"/>
308         <menuitem action="resource.action_resource_calendar_leave_tree" id="menu_view_resource_calendar_leaves" parent="menu_pm_resources_project1" sequence="1"/>
309
310     </data>
311 </openerp>