<form string="Project">
<group colspan="6" col="6">
<field name="name" string="Project Name" select="1"/>
- <field name="parent_id" domain="[('id','!=',active_id)]"/>
+ <field name="analytic_account_id" invisible="1" required="0"/>
+ <field name="parent_id" string="Parent" domain="[('id','!=',analytic_account_id)]" context="{'current_model': 'project.project'}"/>
<field name="user_id" string="Project Manager" select="1" attrs="{'readonly':[('state','in',['close', 'cancelled'])]}"/>
<field name="date_start" string="Start Date" attrs="{'readonly':[('state','in',['close', 'cancelled'])]}"/>
<field name="date" string="End Date" attrs="{'readonly':[('state','in',['close', 'cancelled'])]}"/>
</group>
<notebook colspan="4">
<page string="Administration">
- <group col="2" colspan="2" groups="base.group_extended">
- <separator colspan="2" string="Scheduling"/>
- <field name="priority"/>
- <field name="active"/>
- </group>
<group col="2" colspan="2">
<separator colspan="2" string="Performance"/>
<field name="planned_hours" widget="float_time"/>
<field name="effective_hours" widget="float_time" />
</group>
<group col="2" colspan="2" name="misc">
- <separator colspan="2" string="Miscelleanous"/>
+ <separator colspan="4" string="Miscelleanous"/>
<field name="company_id" select="1" groups="base.group_multi_company" widget="selection" required="1"/>
- <field name="currency_id" select="1" groups="base.group_multi_company" required="1"/>
<field name="warn_manager"/>
+ <field name="priority"/>
+ <field name="active"/>
</group>
<newline/>
<separator colspan="4"/>
<tree string="Members">
<field name="name"/>
<field name="user_email"/>
- <field name="address_id"/>
</tree>
</field>
</page>
<field colspan="4" name="partner_id" on_change="onchange_partner_id(partner_id)" select="1" string="Customer"/>
<field domain="[('partner_id','=',partner_id)]" name="contact_id" string="Invoice Address"/>
<field name="warn_customer"/>
+ <field name="currency_id" select="1" groups="base.group_multi_company" required="1"/>
<newline/>
<group colspan="4" col="4" groups="base.group_extended">
<separator colspan="2" string="Mail Header"/>
<filter string="Manager" name="Manager" icon="terp-personal" domain = "[]" context="{'group_by':'user_id'}"/>
<filter string="Partner" name="Partner" icon="terp-partner" domain = "[]" context="{'group_by':'partner_id'}"/>
<separator orientation="vertical"/>
- <filter string="Parent" name="Parent" help="Parent Project" icon="terp-folder-blue" domain = "[]" context="{'group_by':'parent_id'}"/>
+ <filter string="Parent" name="Parent" help="Parent" icon="terp-folder-blue" domain = "[]" context="{'group_by':'parent_id'}"/>
</group>
</search>
</field>
<field name="name" string="Project Name"/>
<field name="user_id" string="Project Manager"/>
<field name="partner_id" string="Partner"/>
- <field name="parent_id" invisible="1"/>
+ <field name="parent_id" string="Parent" invisible="1"/>
<field name="planned_hours" widget="float_time"/>
<field name="total_hours" widget="float_time"/>
<field name="effective_hours" widget="float_time"/>
</field>
</record>
+ <record id="view_project_project_gantt" model="ir.ui.view">
+ <field name="name">project.project.gantt</field>
+ <field name="model">project.project</field>
+ <field name="type">gantt</field>
+ <field name="arch" type="xml">
+ <gantt color="user_id" date_delay="planned_hours" date_start="date_start" string="Projects">
+ <level object="project.project" link="id" domain="[]">
+ <field name="complete_name"/>
+ </level>
+ </gantt>
+ </field>
+ </record>
+
<record id="open_view_project_all" model="ir.actions.act_window">
<field name="name">Projects</field>
<field name="res_model">project.project</field>
<field name="view_type">form</field>
<field name="domain">[]</field>
+ <field name="view_mode">tree,form,gantt</field>
<field name="view_id" ref="view_project"/>
<field name="search_view_id" ref="view_project_project_filter"/>
<field name="context">{'search_default_Current':1}</field>
<form string="Task edition">
<group colspan="6" col="6">
<field name="name" select="1"/>
- <field name="project_id" select="1" on_change="onchange_project(project_id)" domain="[('user_id','=',uid)]"/>
+ <field name="project_id" select="1" on_change="onchange_project(project_id)"/>
<field name="total_hours" widget="float_time"/>
<field name="date_deadline" attrs="{'readonly':[('state','in',['done', 'cancelled'])]}"/>
<field name="user_id" select="1" attrs="{'readonly':[('state','in',['done', 'cancelled'])]}"/>
<button name="do_open" states="pending,draft" string="Start Task" type="object" icon="gtk-execute"/>
<button name="%(action_project_task_reevaluate)d" states="done,cancelled" string="Reactivate" type="action" icon="gtk-convert" context="{'button_reactivate':True}" />
<button name="do_pending" states="open" string="Pending" type="object" icon="gtk-media-pause"/>
- <button groups="base.group_extended" name="%(action_project_task_delegate)d" states="pending,open" string="Delegate" type="action" icon="gtk-sort-descending"/>
+ <button groups="base.group_extended" name="%(action_project_task_delegate)d" states="pending,open,draft" string="Delegate" type="action" icon="gtk-sort-descending"/>
<button name="action_close" states="pending,open" string="Done" type="object" icon="terp-dialog-close"/>
</group>
</page>
- <page groups="base.group_extended" string="Delegations">
+ <page groups="base.group_extended" string="Delegations History">
<separator string="Parent Tasks" colspan="4"/>
<field colspan="4" height="150" name="parent_ids" nolabel="1"/>
<separator string="Delegated tasks" colspan="4"/>
<tree colors="grey:state in ('cancelled','done');blue:state == 'pending';red:date_deadline and (date_deadline<current_date) and (state in ('draft','pending','open'))" string="Tasks">
<field name="sequence" invisible="not context.get('seq_visible', False)"/>
<field name="name"/>
- <field name="project_id" icon="gtk-indent" domain="['|',('user_id','=',uid),('members','=',uid)]" invisible="context.get('user_invisible', False)"/>
+ <field name="project_id" icon="gtk-indent" invisible="context.get('user_invisible', False)"/>
<field name="user_id" invisible="context.get('user_invisible', False)"/>
<field name="delegated_user_id" invisible="context.get('show_delegated', True)"/>
- <field name="total_hours"/>
+ <field name="total_hours" invisible="1"/>
<field name="planned_hours"/>
- <field name="effective_hours" widget="float_time" sum="Spent Hours"/>
+ <field name="effective_hours" widget="float_time" sum="Spent Hours" invisible="1"/>
<field name="remaining_hours" widget="float_time" sum="Remaining Hours" on_change="onchange_remaining(remaining_hours,planned_hours)"/>
<field name="date_deadline" invisible="context.get('deadline_visible',True)"/>
<field name="type_id" groups="base.group_extended" invisible="context.get('set_visible',False)"/>
<field name="type">calendar</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
- <calendar color="user_id" date_delay="planned_hours" date_start="date_start" string="Tasks">
+ <calendar color="user_id" date_start="date_deadline" string="Tasks">
<field name="name"/>
<field name="project_id"/>
</calendar>
<field name="type">gantt</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
- <gantt color="user_id" date_delay="planned_hours" date_start="date_start" string="Tasks">
+ <gantt color="user_id" date_start="date_start" date_stop="date_end" string="Tasks">
<level object="project.project" link="project_id" domain="[]">
<field name="name"/>
</level>
<field name="arch" type="xml">
<search string="Task Edition">
<group col="20" colspan="4">
- <filter string="Current" domain="[('state','in',('open','draft'))]" name="current" help="Draft and In Progress tasks" icon="terp-check"/>
+ <filter string="Current" domain="[('state','in',('open','draft','pending'))]" name="current" help="Draft, In Progress and Pending Tasks" icon="terp-check"/>
<filter string="In Progress" domain="[('state','=','open')]" help="In Progress Tasks" icon="terp-camera_test"/>
<filter string="Pending" domain="[('state','=','pending')]" context="{'show_delegated':False}" help="Pending Tasks" icon="terp-gtk-media-pause"/>
<separator orientation="vertical"/>
<menuitem id="menu_tasks_config" name="Tasks" parent="project.menu_definitions" sequence="1"/>
<menuitem action="open_task_type_form" id="menu_task_types_view" parent="menu_tasks_config" sequence="1"/>
- <act_window context="{'search_default_user_id': [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"/>
+ <act_window context="{'search_default_user_id': [active_id], 'default_user_id': 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"/>
<act_window
- domain="[('project_id', '=', active_id)]"
+ context="{'search_default_project_id': [active_id], 'default_project_id': active_id}"
id="act_project_project_2_project_task_all"
name="Tasks"
res_model="project.task"
<field name="inherit_id" ref="base.view_users_form"/>
<field eval="18" name="priority"/>
<field name="arch" type="xml">
- <field name="password" position="after">
+ <group name="default_filters" position="inside">
<field name="context_project_id"/>
- </field>
+ </group>
</field>
</record>
<field name="type">form</field>
<field eval="18" name="priority"/>
<field name="arch" type="xml">
- <page string="Current Activity" position="inside">
- <field name="context_project_id" completion="1" context="{'user_prefence':True}" widget="selection" readonly="0"/>
- </page>
+ <group name="default_filters" position="inside">
+ <field name="context_project_id" context="{'user_prefence':True}" widget="selection"/>
+ </group>
</field>
</record>
- <act_window context="{'search_default_user_id': [active_id]}" domain="[('state', '<>', 'cancelled'),('state', '<>', 'done')]" id="act_res_users_2_project_task_opened" name="Assigned tasks" res_model="project.task" src_model="res.users" view_mode="tree,form,gantt,calendar,graph" view_type="form"/>
- <act_window context="{'search_default_user_id': [active_id]}" domain="[('date', '>=', 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"/>
+ <act_window context="{'search_default_user_id': [active_id], 'default_user_id': active_id}" domain="[('state', '<>', 'cancelled'),('state', '<>', 'done')]" id="act_res_users_2_project_task_opened" name="Assigned tasks" res_model="project.task" src_model="res.users" view_mode="tree,form,gantt,calendar,graph" view_type="form"/>
+ <act_window context="{'search_default_user_id': [active_id], 'default_user_id': active_id}" domain="[('date', '>=', 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"/>
</data>
</openerp>