<field name="sprint_id"/>
<field name="user_id"/>
<field name="progress" widget="progressbar"/>
- <field name="effective_hours" sum="Effective hours" widget="float_time"/>
- <field name="planned_hours" sum="Planned hours" widget="float_time"/>
<field name="expected_hours" sum="Expected hours" widget="float_time"/>
+ <field name="effective_hours" sum="Effective hours" widget="float_time"/>
<field name="state"/>
<button type="object" string="Open" name="button_open" states="draft,pending" icon="gtk-jump-to"/>
- <button type="action" string="Convert to Task" name="%(wizard_scrum_backlog_task)d" states="pending" icon="gtk-execute"/>
+ <button type="action" string="Convert to Task" name="%(action_scrum_backlog_to_task)d" states="pending" icon="gtk-execute"/>
<button type="object" string="Pending" name="button_pending" states="open" icon="gtk-media-pause"/>
<button type="object" string="Close" name="button_close" states="open,pending" icon="gtk-jump-to"/>
<button type="object" string="Set to Draft" name="button_draft" states="cancel,done" icon="gtk-convert"/>
<field name="project_id" select="1"/>
<field domain="[('project_id','=',project_id)]" name="sprint_id" select="1"/>
<field name="user_id" select="1"/>
- <field name="sequence"/>
- <field name="date"/>
- <field name="active" select="1"/>
- <group colspan="6" col="8">
- <field name="effective_hours" widget="float_time"/>
- <field name="planned_hours" widget="float_time"/>
- <field name="expected_hours" widget="float_time"/>
- <field name="progress" widget="progressbar"/>
- </group>
+ <field name="sequence" groups="base.group_extended"/>
+ <field name="date"/>
+ <field name="progress" widget="progressbar"/>
</group>
<notebook colspan="4">
- <page string="Feature Description">
+ <page string="Information">
+ <group colspan="6" col="8">
+ <field name="expected_hours" widget="float_time"/>
+ <field name="effective_hours" widget="float_time"/>
+ </group>
+ <separator string="Feature Description" colspan="4"/>
<field colspan="4" name="note" nolabel="1"/>
</page>
<page string="Tasks">
- <field colspan="4" name="tasks_id" nolabel="1" widget="one2many_list" context="{'default_project_id':project_id, 'default_sprint_id':sprint_id, 'default_product_backlog_id':active_id}"/>
+ <field colspan="4" name="tasks_id" nolabel="1" widget="one2many_list" context="{'default_project_id':project_id, 'default_sprint_id':sprint_id, 'default_product_backlog_id':active_id}">
+ <tree colors="grey:state in ('cancelled','done');blue:remaining_hours<0;red:bool(date_deadline) and (date_deadline<current_date) and (state in ('draft','open'));black:state not in ('cancelled','done')" string="Tasks">
+ <field name="sequence" invisible="0"/>
+ <field name="name"/>
+ <field name="user_id"/>
+ <field name="delegated_user_id" invisible="context.get('show_delegated', True)"/>
+ <field name="planned_hours" widget="float_time" sum="Planned Hours"/>
+ <field name="total_hours" widget="float_time"/>
+ <field name="remaining_hours" widget="float_time" sum="Remaining Hours" invisible="context.get('set_visible',False)"/>
+ <field name="date_deadline" invisible="context.get('set_visible',False)"/>
+ <field name="type" groups="base.group_extended" invisible="context.get('set_visible',False)"/>
+ <field name="date_start" invisible="1"/>
+ <field name="date_end" invisible="1"/>
+ <button name="next_type" invisible="context.get('set_visible',False)"
+ states="draft,open,pending"
+ string="Change Stage"
+ type="object"
+ icon="gtk-go-forward"
+ groups="base.group_extended"
+ help="Change Type"/>
+ <field name="progress" widget="progressbar" invisible="context.get('set_visible',False)"/>
+ <field name="state" invisible="context.get('set_visible',False)"/>
+ <button name="do_open" states="pending,draft,done,cancel" string="Start Task" type="object" icon="gtk-execute" help="For changing to open state" invisible="context.get('set_visible',False)"/>
+ <button groups="base.group_extended" name="%(project.action_project_task_delegate)d" states="pending,open,draft" string="Delegate" type="action" icon="gtk-execute" help="For changing to delegate state"/>
+ <button name="do_close" states="draft,pending,open" string="Done" type="object" icon="gtk-jump-to" help="For changing to done state"/>
+ <button name="do_cancel" states="draft,open,pending" string="Cancel" type="object" icon="gtk-cancel" help="For cancelling the task"/>
+ </tree>
+ </field>
</page>
</notebook>
<group col="8" colspan="4">
<field name="state" select="1" readonly="1"/>
<button type="object" string="Open" name="button_open" states="draft,pending" icon="gtk-jump-to"/>
- <button type="action" string="Convert to Task" name="%(wizard_scrum_backlog_task)d" states="pending" icon="gtk-execute"/>
+ <button type="action" string="Convert to Task" name="%(action_scrum_backlog_to_task)d" states="pending" icon="gtk-execute"/>
<button type="object" string="Pending" name="button_pending" states="open" icon="gtk-media-pause"/>
<button type="object" string="Close" name="button_close" states="open,pending" icon="gtk-jump-to"/>
<button type="object" string="Set to Draft" name="button_draft" states="cancel,done" icon="gtk-convert"/>
<field name="arch" type="xml">
<search string="Product Backlogs">
<group col="10" colspan="4">
- <filter name="current"
+ <filter default="1"
icon="terp-project"
string="Current"
domain="['|','&',('sprint_id.date_start','<=',time.strftime('%%Y-%%m-%%d')), ('sprint_id.date_stop','>=',time.strftime('%%Y-%%m-%%d')), ('state','in',['draft','open'])]"
<field name="name"/>
<field name="project_id" widget="selection"/>
<field name="sprint_id" widget="selection">
- <filter icon="terp-project"
- string="Sprints"
- domain="[('sprint_id.state','=','open')]"
- help="Backlogs Assigned To Current Sprints"/>
- <filter icon="terp-project"
- string="Sprints"
- domain="[('sprint_id','=',False)]"
- help="Backlogs Not Assigned To Sprints."/>
- </field>
- <field name="user_id" widget="selection">
- <filter name="my_features"
- icon="terp-project"
- string="My Features"
- domain="[('user_id','=',uid)]"
- help="My Backlogs"/>
+ <filter icon="terp-project"
+ string="Sprints"
+ domain="[('sprint_id.state','=','open')]"
+ help="Backlogs Assigned To Current Sprints"/>
+ <filter icon="terp-project"
+ string="Sprints"
+ domain="[('sprint_id','=',False)]"
+ help="Backlogs Not Assigned To Sprints."/>
</field>
+ <field name="user_id" widget="selection"/>
</group>
<newline/>
<group expand="1" string="Group By..." colspan="4" col="20">
<field name="name">Product Backlogs</field>
<field name="res_model">scrum.product.backlog</field>
<field name="view_type">form</field>
- <field name="context">{"search_default_current":1,"search_default_my_features":1,"search_default_project_id":project_id}</field>
+ <field name="context">{"search_default_user_id":uid}</field>
<field name="search_view_id" ref="view_scrum_product_backlog_search"/>
</record>
<menuitem
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Scrum Sprint">
- <field name="name" select="1"/>
- <field name="project_id" on_change="onchange_project_id(project_id)"/>
+ <group colspan="4" col="6">
+ <field name="name" select="1"/>
+ <field name="project_id" on_change="onchange_project_id(project_id)"/>
+ <field name="active"/>
+ </group>
<notebook colspan="4">
<page string="Sprint Info">
<group colspan="2" col="2">
<field name="arch" type="xml">
<search string="Sprints">
<group col="10" colspan="4">
- <filter name="current" icon="terp-project" string="Current" domain="[('state','in',('draft','open'))]" help="Draft and open Sprints"/>
+ <filter default="1" icon="terp-project" string="Current" domain="[('state','in',('draft','open'))]" help="Draft and open Sprints"/>
<filter icon="terp-project" string="Draft" domain="[('state','=','draft')]" help="Draft Sprints"/>
<filter icon="terp-project" string="Open" domain="[('state','=','open')]" help="Open Sprints"/>
<separator orientation="vertical"/>
<field name="name"/>
<field name="project_id" widget="selection"/>
- <field name="scrum_master_id" widget="selection">
- <filter icon="gtk-execute" name="my_sprints" domain="[('scrum_master_id','=',uid)]"
- help="My Sprints"/>
- </field>
+ <field name="scrum_master_id" widget="selection"/>
<field name="date_start"/>
</group>
<newline/>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="view_id" ref="view_scrum_sprint_tree"/>
- <field name="context">{"search_default_current":1,"search_default_my_sprints":1}</field>
+ <field name="context">{"search_default_scrum_master_id":uid}</field>
<field name="search_view_id" ref="view_scrum_sprint_search"/>
</record>
<menuitem
<field name="arch" type="xml">
<tree string="Scrum Sprint">
<field name="date"/>
- <field name="name"/>
<field name="sprint_id"/>
</tree>
</field>
<field name="arch" type="xml">
<form string="Scrum Sprint">
<group colspan="4" col="6">
- <field name="name" select="1"/>
<field name="date"/>
- <field name="sprint_id"/>
+ <field name="sprint_id" domain="[('state', '=', 'open')]"/>
</group>
<notebook colspan="4">
<page string="Scrum Meeting">
- <separator colspan="4" string="What have you accomplished since yesterday ?"/>
+ <separator colspan="4" string="What did you do since the last meeeting?"/>
<field colspan="4" name="question_yesterday" nolabel="1"/>
- <separator colspan="4" string="What are you working on today ?"/>
+ <separator colspan="4" string="What do you plan to do till the next meeting?"/>
<field colspan="4" name="question_today" nolabel="1"/>
- <separator colspan="4" string="Is there anything blocking you ?"/>
+ <separator colspan="4" string="Are there anything blocking you?"/>
<field colspan="4" name="question_blocks" nolabel="1"/>
</page>
- <page string="Optionnal Info">
+ <page string="Optional Info">
<separator colspan="4" string="Are your Sprint Backlog estimate accurate ?"/>
<field colspan="4" name="question_backlog" nolabel="1"/>
</page>
<field name="arch" type="xml">
<search string="Scrum Sprint">
<group col="10" colspan="4">
- <filter icon="terp-project" string="Daily" domain="[('date','=',time.strftime('%%Y%%m%%d'))]" help="Daily Meetings"/>
+ <filter name="scrum_daily" icon="terp-project" string="Daily" domain="[('date','=',time.strftime('%%Y-%%m-%%d'))]" help="Daily Meetings"/>
<separator orientation="vertical"/>
- <field name="name"/>
- <field name="sprint_id">
- <filter icon="terp-project" name="current" string="Current" domain="[('sprint_id.state','in',('draft','open'))]" help="Current Sprints"/>
+ <field name="sprint_id" widget="selection">
+ <filter icon="terp-project" string="Current" domain="[('sprint_id.state','in',('draft','open'))]" help="Current Sprints" default="1"/>
</field>
<field name="project_id" widget="selection"/>
<field name="date"/>
<field name="res_model">scrum.meeting</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
- <field name="context">{"search_default_current":1}</field>
+ <field name="context">{'search_default_scrum_daily':1}</field>
<field name="search_view_id" ref="view_scrum_meeting_search"/>
</record>
<menuitem sequence="30"
<field name="inherit_id" ref="project.view_task_tree2"/>
<field name="arch" type="xml">
<field name="user_id" position="after">
- <field name="sprint_id"/>
+ <field name="sprint_id" invisible="context.get('sprint_invisible',True)"/>
<field name="product_backlog_id" invisible="1"/>
</field>
</field>