[MERGE]
[odoo/odoo.git] / addons / scrum / scrum_view.xml
index d5ea357..6485759 100644 (file)
-<?xml version="1.0" ?>
-<terp>
-<data>
-
-#
-# Usual views
-#
-
-       <!-- Scrum Project -->
-
-       <record model="ir.ui.view" id="view_scrum_project_form">
-               <field name="name">scrum.project.form</field>
-               <field name="model">scrum.project</field>
-               <field name="type">form</field>
-               <field name="inherit_id" ref="project.edit_project" />
-               <field name="arch" type="xml">
-                       <field name="warn_manager" position="after">
-                               <newline/>
-                               <field name="product_owner_id" select="1" required="1"/>
-                               <field name="sprint_size"/>
-                       </field>
-               </field>
-       </record>
-
-       <record model="ir.ui.view" id="view_scrum_project_tree">
-               <field name="name">scrum.project.tree</field>
-               <field name="model">scrum.project</field>
-               <field name="type">tree</field>
-               <field name="field_parent">child_id</field>
-               <field name="arch" type="xml">
-                       <tree string="Scrum Projects">
-                               <field name="name" />
-                               <field name="manager" />
-                               <field name="product_owner_id" />
-                               <field name="planned_hours" />
-                               <field name="effective_hours" />
-                       </tree>
-               </field>
-       </record>
-       <record model="ir.actions.act_window" id="action_scrum_project_tree">
-               <field name="name">scrum.project.form</field>
-               <field name="res_model">scrum.project</field>
-               <field name="view_type">tree</field>
-               <field name="view_id" ref="view_scrum_project_tree" />
-               <field name="domain">[('parent_id','=',False),('scrum','=',1)]</field>
-       </record>
-       <menuitem name="Project/Scrum/Projects" id="menu_action_scrum_project_tree" action="action_scrum_project_tree"/>
-
-       <record model="ir.actions.act_window" id="action_scrum_project_form">
-               <field name="name">scrum.project.form</field>
-               <field name="res_model">scrum.project</field>
-               <field name="view_type">form</field>
-               <field name="view_id" ref="view_scrum_project_form" />
-               <field name="domain">[('scrum','=',1)]</field>
-       </record>
-       <menuitem name="Project/Scrum/Projects/Edit Projects" id="menu_action_scrum_project_form" action="action_scrum_project_form"/>
-
-
-       #
-       # Product Backlog
-       #
-
-       <record model="ir.ui.view" id="view_scrum_product_backlog_tree">
-               <field name="name">scrum.product.backlog.tree</field>
-               <field name="model">scrum.product.backlog</field>
-               <field name="type">tree</field>
-               <field name="arch" type="xml">
-                       <tree string="Scrum Product Backlog">
-                               <field name="priority"/>
-                               <field name="sequence"/>
-                               <field name="name"/>
-                               <field name="sprint_id"/>
-                               <field name="progress"/>
-                               <field name="effective_hours"/>
-                               <field name="planned_hours"/>
-                               <field name="state"/>
-                       </tree>
-               </field>
-       </record>
-
-       <record model="ir.ui.view" id="view_scrum_product_backlog_form">
-               <field name="name">scrum.product.backlog.form</field>
-               <field name="model">scrum.product.backlog</field>
-               <field name="type">form</field>
-               <field name="arch" type="xml">
-                       <form string="Scrum Product Backlog">
-                               <notebook>
-                               <page string="Product Backlog">
-                                       <field name="name" select="1" colspan="4"/>
-                                       <field name="priority"/>
-                                       <field name="sequence"/>
-                                       <field name="project_id" select="1" />
-                                       <field name="sprint_id" select="1" />
-                                       <field name="user_id" select="1" />
-                                       <field name="active" select="1" />
-                                       <field name="note" colspan="4"/>
-                                       <field name="state" select="1"/>
-                                       <field name="progress"/>
-                                       <field name="effective_hours"/>
-                                       <field name="planned_hours"/>
-                               </page><page string="Tasks">
-                                       <field name="tasks_id" nolabel="1" colspan="4" widget="one2many_list"/>
-                               </page>
-                               </notebook>
-                       </form>
-               </field>
-       </record>
-       <record model="ir.actions.act_window" id="action_product_backlog_form">
-               <field name="name">scrum.product.backlog.form</field>
-               <field name="res_model">scrum.product.backlog</field>
-               <field name="view_type">form</field>
-       </record>
-       <menuitem name="Project/Scrum/Product Backlog" id="menu_action_product_backlog_form" action="action_product_backlog_form"/>
-
-       <record model="ir.actions.act_window" id="action_product_backlog_form_draft">
-               <field name="name">scrum.product.backlog.form</field>
-               <field name="res_model">scrum.product.backlog</field>
-               <field name="view_type">form</field>
-               <field name="view_mode">tree,form</field>
-               <field name="domain">[('state','=','draft')]</field>
-       </record>
-       <menuitem name="Project/Scrum/Product Backlog/Draft Backlogs" id="menu_action_product_backlog_form_draft" action="action_product_backlog_form_draft"/>
-       
-       <record model="ir.actions.act_window" id="action_product_backlog_form_open">
-               <field name="name">scrum.product.backlog.form</field>
-               <field name="res_model">scrum.product.backlog</field>
-               <field name="view_type">form</field>
-               <field name="view_mode">tree,form</field>
-               <field name="domain">[('state','=','open')]</field>
-       </record>
-       <menuitem name="Project/Scrum/Product Backlog/Open Backlogs" id="menu_action_product_backlog_form_open" action="action_product_backlog_form_open"/>
-
-
-
-#
-# Scrum Sprint
-#
-       <record model="ir.ui.view" id="view_scrum_sprint_tree">
-               <field name="name">scrum.sprint.tree</field>
-               <field name="model">scrum.sprint</field>
-               <field name="type">tree</field>
-               <field name="arch" type="xml">
-                       <tree string="Scrum Sprint">
-                               <field name="name"/>
-                               <field name="project_id"/>
-                               <field name="date_start"/>
-                               <field name="date_stop"/>
-                               <field name="progress"/>
-                               <field name="effective_hours"/>
-                               <field name="planned_hours"/>
-                               <field name="state"/>
-                       </tree>
-               </field>
-       </record>
-       <record model="ir.ui.view" id="view_scrum_sprint_form">
-               <field name="name">scrum.sprint.form</field>
-               <field name="model">scrum.sprint</field>
-               <field name="type">form</field>
-               <field name="arch" type="xml">
-                       <form string="Scrum Sprint">
-                               <notebook>
-                               <page string="Sprint Info">
-                                       <field name="name" select="1" colspan="4"/>
-                                       <newline/>
-                                       <field name="project_id" on_change="onchange_project_id(project_id)"/>
-                                       <newline/>
-                                       <field name="date_start" select="1" />
-                                       <field name="date_stop"/>
-                                       <field name="product_owner_id"/>
-                                       <field name="scrum_master_id"/>
-                                       <field name="progress"/>
-                                       <field name="effective_hours"/>
-                                       <field name="planned_hours"/>
-                                       <newline/>
-                                       <separator colspan="4" string="State"/>
-                                       <field name="state"/>
-                               </page><page string="Daily Meetings">
-                                       <field name="meetings_id" nolabel="1" colspan="4" widget="one2many_list"/>
-                               </page><page string="Review">
-                                       <field name="review" nolabel="1" colspan="4"/>
-                               </page><page string="Retrospective">
-                                       <field name="retrospective" nolabel="1" colspan="4"/>
-                               </page>
-                               </notebook>
-                       </form>
-               </field>
-       </record>
-       <record model="ir.actions.act_window" id="action_sprint_form">
-               <field name="name">scrum.sprint.form</field>
-               <field name="res_model">scrum.sprint</field>
-               <field name="view_type">form</field>
-               <field name="view_id" ref="view_scrum_sprint_form" />
-       </record>
-       <menuitem name="Project/Scrum/Sprint" id="menu_action_sprint_form" action="action_sprint_form"/>
-
-       <record model="ir.actions.act_window" id="action_sprint_open_tree">
-               <field name="name">scrum.sprint.open.tree</field>
-               <field name="res_model">scrum.sprint</field>
-               <field name="view_type">tree</field>
-               <field name="domain">[('state','=','open')]</field>
-       </record>
-       <menuitem name="Project/Scrum/Sprint/Open Sprints" id="menu_action_sprint_open_tree" action="action_sprint_open_tree"/>
-       <record model="ir.actions.act_window" id="action_sprint_open_tree2">
-               <field name="name">scrum.sprint.open.tree</field>
-               <field name="res_model">scrum.sprint</field>
-               <field name="view_type">tree</field>
-               <field name="domain">[('state','=','draft')]</field>
-       </record>
-       <menuitem name="Project/Scrum/Sprint/Draft Sprints" id="menu_action_sprint_open_tree2" action="action_sprint_open_tree2"/>
-       <record model="ir.actions.act_window" id="action_sprint_open_tree3">
-               <field name="name">scrum.sprint.open.tree</field>
-               <field name="res_model">scrum.sprint</field>
-               <field name="view_type">tree</field>
-               <field name="domain">[('state','=','done')]</field>
-       </record>
-       <menuitem name="Project/Scrum/Sprint/Sprints Done" id="menu_action_sprint_open_tree3" action="action_sprint_open_tree3"/>
-
-       <record model="ir.actions.act_window" id="action_sprint_open_tree4">
-               <field name="name">scrum.sprint.open.tree</field>
-               <field name="res_model">scrum.sprint</field>
-               <field name="view_type">tree</field>
-               <field name="domain">[('product_owner_id','=',uid)]</field>
-       </record>
-       <menuitem name="Project/Scrum/Sprint/My Sprints (Product Owner)" id="menu_action_sprint_open_tree4" action="action_sprint_open_tree4"/>
-       <record model="ir.actions.act_window" id="action_sprint_open_tree5">
-               <field name="name">scrum.sprint.open.tree</field>
-               <field name="res_model">scrum.sprint</field>
-               <field name="view_type">tree</field>
-               <field name="domain">[('scrum_master_id','=',uid)]</field>
-       </record>
-       <menuitem name="Project/Scrum/Sprint/My Sprints (Scrum Master)" id="menu_action_sprint_open_tree5" action="action_sprint_open_tree5"/>
-
-       <record model="ir.actions.act_window" id="action_sprint_open_tree6">
-               <field name="name">scrum.sprint.open.tree</field>
-               <field name="res_model">scrum.sprint</field>
-               <field name="view_type">tree</field>
-               <field name="domain">[('product_owner_id','=',uid),('state','=','open')]</field>
-       </record>
-       <menuitem name="Project/Scrum/Sprint/My Sprints (Product Owner)/My open sprints" id="menu_action_sprint_open_tree6" action="action_sprint_open_tree6"/>
-       <record model="ir.actions.act_window" id="action_sprint_open_tree7">
-               <field name="name">scrum.sprint.open.tree</field>
-               <field name="res_model">scrum.sprint</field>
-               <field name="view_type">tree</field>
-               <field name="domain">[('scrum_master_id','=',uid),('state','=','open')]</field>
-       </record>
-       <menuitem name="Project/Scrum/Sprint/My Sprints (Scrum Master)/My open sprints" id="menu_action_sprint_open_tree7" action="action_sprint_open_tree7"/>
-
-
-#
-# Daily Meeting
-#
-
-       <record model="ir.ui.view" id="view_scrum_meeting_tree">
-               <field name="name">scrum.meeting.tree</field>
-               <field name="model">scrum.meeting</field>
-               <field name="type">tree</field>
-               <field name="arch" type="xml">
-                       <tree string="Scrum Sprint">
-                               <field name="date"/>
-                               <field name="name"/>
-                               <field name="sprint_id"/>
-                       </tree>
-               </field>
-       </record>
-       <record model="ir.ui.view" id="view_scrum_meeting_form">
-               <field name="name">scrum.meeting.form</field>
-               <field name="model">scrum.meeting</field>
-               <field name="type">form</field>
-               <field name="arch" type="xml">
-                       <form string="Scrum Sprint">
-                       <notebook>
-                               <page string="Scrum Meeting">
-                                       <field name="name" select="1"/>
-                                       <field name="sprint_id"/>
-                                       <separator string="What have you accomplished since yesterday ?" colspan="4"/>
-                                       <field name="question_yesterday" nolabel="1" colspan="4"/>
-                                       <separator string="What are you working on today ?" colspan="4"/>
-                                       <field name="question_today" nolabel="1" colspan="4"/>
-                                       <separator string="Is there anything blocking you ?" colspan="4"/>
-                                       <field name="question_blocks" nolabel="1" colspan="4"/>
-                               </page><page string="Optionnal Info">
-                                       <field name="date"/>
-                                       <newline/>
-                                       <separator string="Are your Sprint Backlog estimate accurate ?" colspan="4"/>
-                                       <field name="question_backlog" nolabel="1" colspan="4"/>
-                               </page>
-                       </notebook>
-                       </form>
-               </field>
-       </record>
-       <record model="ir.actions.act_window" id="action_meeting_form">
-               <field name="name">scrum.meeting.form</field>
-               <field name="res_model">scrum.meeting</field>
-               <field name="view_type">form</field>
-               <field name="view_id" ref="view_scrum_meeting_form" />
-       </record>
-       <menuitem name="Project/Scrum/Daily Meeting" id="menu_action_meeting_form" action="action_meeting_form"/>
-
-       #
-       # Clicks on a sprint: what a hack !
-       #
-
-       <record model="ir.actions.act_window" id="action_sprint_task_open">
-               <field name="res_model">scrum.task</field>
-               <field name="name">View sprint Tasks</field>
-               <field name="view_type">form</field>
-               <field name="view_mode">tree,form</field>
-               <field name="domain">[('product_backlog_id', '=', 'S('+str(active_id)+')')]</field>
-       </record>
-       <record model="ir.values" id="ir_scrum_sprint_open_task">
-               <field name="key2" eval=" 'tree_but_open'" />
-               <field name="model" eval="'scrum.sprint'" />
-               <field name="name">View sprint tasks</field>
-               <field name="value" eval="'ir.actions.act_window,'+str(action_sprint_task_open)" />
-               <field name="object" eval="True" />
-       </record>
-
-       <record model="ir.actions.act_window" id="action_sprint_backlog_open">
-               <field name="res_model">scrum.product.backlog</field>
-               <field name="name">View sprint backlog</field>
-               <field name="view_type">form</field>
-               <field name="view_mode">tree,form</field>
-               <field name="domain">[('sprint_id', '=', active_id)]</field>
-       </record>
-       <record model="ir.values" id="ir_scrum_sprint_open_sprint">
-               <field name="key2" eval=" 'tree_but_open'" />
-               <field name="model" eval="'scrum.sprint'" />
-               <field name="name">View sprint backlog</field>
-               <field name="value" eval="'ir.actions.act_window,'+str(action_sprint_backlog_open)" />
-               <field name="object" eval="True" />
-       </record>
-
-       #
-       # Clicks on a project
-       #
-
-       <record model="ir.actions.act_window" id="dblc_proj">
-               <field name="res_model">scrum.product.backlog</field>
-               <field name="name">View project's backlog</field>
-               <field name="view_type">form</field>
-               <field name="view_mode">tree,form</field>
-               <field name="domain">[('project_id', '=', active_id)]</field>
-       </record>
-       <record model="ir.values" id="ir_scrum_project_backlog">
-               <field name="key2" eval=" 'tree_but_open'" />
-               <field name="model" eval="'scrum.project'" />
-               <field name="name">View project's backlog</field>
-               <field name="value" eval="'ir.actions.act_window,'+str(dblc_proj)" />
-               <field name="object" eval="True" />
-       </record>
-       <record model="ir.actions.act_window" id="dblc_proj2">
-               <field name="res_model">scrum.task</field>
-               <field name="name">View project's tasks</field>
-               <field name="view_type">form</field>
-               <field name="view_mode">tree,form</field>
-               <field name="domain">[('project_id', '=', active_id)]</field>
-       </record>
-       <record model="ir.values" id="ir_scrum_project_task">
-               <field name="key2" eval=" 'tree_but_open'" />
-               <field name="model" eval="'scrum.project'" />
-               <field name="name">View project's tasks</field>
-               <field name="value" eval="'ir.actions.act_window,'+str(dblc_proj2)" />
-               <field name="object" eval="True" />
-       </record>
-
-
-
-       #
-       # Tasks
-       #
-       <record model="ir.ui.view" id="view_task_tree">
-               <field name="name">scrum.task.tree</field>
-               <field name="model">scrum.task</field>
-               <field name="type">tree</field>
-               <field name="arch" type="xml">
-                       <tree string="Scrum Tasks">
-                               <field name="sequence"/>
-                               <field name="name"/>
-                               <field name="user_id"/>
-                               <field name="priority"/>
-                               <field name="date_deadline"/>
-                               <field name="progress"/>
-                               <field name="planned_hours"/>
-                               <field name="effective_hours"/>
-                               <field name="state" />
-                       </tree>
-               </field>
-       </record>
-
-       <record model="ir.ui.view" id="view_task_form2">
-               <field name="name">scrum.task.form</field>
-               <field name="model">scrum.task</field>
-               <field name="type">form</field>
-               <field name="inherit_id" ref="project.view_task_form2"/>
-               <field name="arch" type="xml">
-                       <field name="project_id" position="replace">
-                           <newline/>                  
-                               <field name="project_id" select="1" required="1"/>
-                               <field name="product_backlog_id" select="1" domain="[('project_id','=',project_id)]"/>
-                       </field>
-               </field>
-       </record>
-       <record model="ir.actions.act_window" id="action_view_task">
-               <field name="name">scrum.task</field>
-               <field name="res_model">scrum.task</field>
-               <field name="view_type">form</field>
-               <field name="domain">[('scrum','=',1)]</field>
-       </record>
-       <menuitem name="Project/Scrum/All Tasks" id="menu_action_view_task" action="action_view_task" />
-
-       <record model="ir.actions.act_window" id="action_view_task4">
-               <field name="name">scrum.task</field>
-               <field name="res_model">scrum.task</field>
-               <field name="view_type">form</field>
-               <field name="view_mode">tree,form</field>
-               <field name="domain">[('user_id', '=', uid),('scrum','=',1)]</field>
-       </record>
-       <menuitem name="Project/Scrum/All Tasks/Your tasks" id="menu_action_view_task4" action="action_view_task4" />
-       
-       <record model="ir.actions.act_window" id="action_view_task5">
-               <field name="name">scrum.task</field>
-               <field name="res_model">scrum.task</field>
-               <field name="view_type">form</field>
-               <field name="view_mode">tree,form</field>
-               <field name="domain">[('user_id','=',uid),('state','=','open'),('scrum','=',1)]</field>
-       </record>
-       <menuitem name="Project/Scrum/All Tasks/Your tasks/Your open tasks" action="action_view_task5" id="menu_tasks_yours" />
-
-       <record model="ir.actions.act_window" id="action_view_task6">
-               <field name="name">project.task</field>
-               <field name="res_model">project.task</field>
-               <field name="view_type">form</field>
-               <field name="view_mode">tree,form</field>
-               <field name="domain">[('state','=','open'),('scrum','=',1)]</field>
-       </record>
-       <menuitem name="Project/All Tasks/Open tasks" id="menu_action_view_task6" action="action_view_task6" />
-</data>
-</terp>
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+    <data>
+
+        <menuitem id="menu_scrum"
+            name="Scrum"
+            parent="base.menu_main_pm"/>
+
+        <!-- Scrum Project -->
+
+        <record id="view_project_project_form" model="ir.ui.view">
+            <field name="name">project.project.form</field>
+            <field name="model">project.project</field>
+            <field name="type">form</field>
+            <field name="inherit_id" ref="project.edit_project"/>
+            <field name="arch" type="xml">
+                <group name="misc" position="after">
+                    <group col="2" colspan="2">
+                        <separator string="Scrum Data" colspan="4"/>
+                        <field name="product_owner_id" required="1" select="1"/>
+                        <field name="sprint_size"/>
+                    </group>
+                </group>
+            </field>
+        </record>
+
+        <!--
+       Product backlog
+       -->
+
+        <record id="view_scrum_product_backlog_tree" model="ir.ui.view">
+            <field name="name">scrum.product.backlog.tree</field>
+            <field name="model">scrum.product.backlog</field>
+            <field name="type">tree</field>
+            <field name="arch" type="xml">
+                <tree string="Product Backlog">
+                    <field name="sequence" invisible="1"/>
+                    <field name="name"/>
+                    <field name="project_id"/>
+                    <field name="sprint_id"/>
+                    <field name="user_id"/>
+                    <field name="progress" widget="progressbar"/>
+                    <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="%(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"/>
+                    <button type="object" string="Cancel" name="button_cancel" states="open,pending" icon="gtk-convert"/>
+                </tree>
+            </field>
+        </record>
+
+        <record id="view_scrum_product_backlog_form" model="ir.ui.view">
+            <field name="name">scrum.product.backlog.form</field>
+            <field name="model">scrum.product.backlog</field>
+            <field name="type">form</field>
+            <field name="arch" type="xml">
+                <form string="Product backlog">
+                    <group colspan="4" col="6">
+                        <field name="name" select="1"/>
+                        <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" groups="base.group_extended"/>
+                           <field name="date"/>
+                        <field name="progress" widget="progressbar"/>
+                    </group>
+                    <notebook colspan="4">
+                        <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}">
+                                <tree colors="grey:state in ('cancelled','done');blue:remaining_hours&lt;0;red:bool(date_deadline) and (date_deadline&lt;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="%(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"/>
+                        <button type="object" string="Cancel" name="button_cancel" states="open,pending" icon="gtk-cancel"/>
+                    </group>
+                </form>
+            </field>
+        </record>
+
+        <record model="ir.ui.view" id="view_scrum_product_backlog_search">
+            <field name="name">scrum.product.backlog.search</field>
+            <field name="model">scrum.product.backlog</field>
+            <field name="type">search</field>
+            <field name="arch" type="xml">
+                <search string="Product Backlogs">
+                    <group col="10" colspan="4">
+                        <filter default="1"
+                            icon="terp-project"
+                            string="Current"
+                            domain="['|','&amp;',('sprint_id.date_start','&lt;=',time.strftime('%%Y-%%m-%%d')), ('sprint_id.date_stop','&gt;=',time.strftime('%%Y-%%m-%%d')), ('state','in',['draft','open'])]"
+                            help="Current Backlogs"/>
+                        <separator orientation="vertical"/>
+                        <filter icon="terp-project" string="Draft" domain="[('state','=','draft')]" help="Draft Backlogs"/>
+                        <filter icon="terp-project" string="Open" domain="[('state','=','open')]" help="Open Backlogs"/>
+                        <separator orientation="vertical"/>
+                        <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"/>
+                    </group>
+                    <newline/>
+                    <group expand="1" string="Group By..." colspan="4" col="20">
+                        <filter string="Project" icon="terp-project" domain="[]" context="{'group_by':'project_id'}"/>
+                        <filter string="Sprint" icon="terp-project" domain="[]" context="{'group_by':'sprint_id'}"/>
+                        <filter string="Responsible" icon="terp-project" domain="[]" context="{'group_by':'user_id'}"/>
+                        <filter string="State" icon="terp-project" domain="[]" context="{'group_by':'state'}"/>
+                    </group>
+
+                </search>
+            </field>
+        </record>
+
+        <record id="action_product_backlog_form" model="ir.actions.act_window">
+            <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_user_id":uid}</field>
+            <field name="search_view_id" ref="view_scrum_product_backlog_search"/>
+        </record>
+        <menuitem
+            action="action_product_backlog_form"
+            id="menu_action_product_backlog_form"
+            sequence="20"
+            parent="menu_scrum"/>
+
+        <!--
+              Scrum Sprint
+       -->
+
+        <record id="view_scrum_sprint_tree" model="ir.ui.view">
+            <field name="name">scrum.sprint.tree</field>
+            <field name="model">scrum.sprint</field>
+            <field name="type">tree</field>
+            <field name="arch" type="xml">
+                <tree string="Scrum Sprint">
+                    <field name="name"/>
+                    <field name="project_id"/>
+                    <field name="scrum_master_id"/>
+                    <field name="product_owner_id" invisible="1"/>
+                    <field name="date_start"/>
+                    <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="state"/>
+                    <button type="object" string="Open" name="button_open" states="draft,pending" icon="gtk-jump-to"/>
+                    <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"/>
+                </tree>
+            </field>
+        </record>
+        <record id="view_scrum_sprint_form" model="ir.ui.view">
+            <field name="name">scrum.sprint.form</field>
+            <field name="model">scrum.sprint</field>
+            <field name="type">form</field>
+            <field name="arch" type="xml">
+                <form string="Scrum Sprint">
+                    <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">
+                                <separator string="Owners" colspan="2"/>
+                                <field name="product_owner_id"/>
+                                <field name="scrum_master_id"/>
+                            </group>
+                            <group colspan="2" col="2">
+                                <separator string="Dates" colspan="2"/>
+                                <field name="date_start" select="1"/>
+                                <field name="date_stop"/>
+                            </group>
+                            <group colspan="2" col="2">
+                                <separator string="Planning" colspan="2"/>
+                                <field name="planned_hours" widget="float_time"/>
+                                <field name="expected_hours" widget="float_time"/>
+                                <field name="effective_hours" widget="float_time"/>
+                                <field name="progress" widget="progressbar"/>
+                            </group>
+                        </page>
+                        <page string="Daily Meetings">
+                            <field colspan="4" name="meeting_ids" nolabel="1" widget="one2many_list"/>
+                        </page>
+                        <page string="Review">
+                            <field colspan="4" name="review" nolabel="1"/>
+                        </page>
+                        <page string="Retrospective">
+                            <field colspan="4" name="retrospective" nolabel="1"/>
+                        </page>
+                    </notebook>
+                    <group col="6" colspan="4">
+                        <field name="state" readonly="1"/>
+                        <button type="object" string="Open" name="button_open" states="draft,pending" icon="gtk-jump-to"/>
+                        <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"/>
+                    </group>
+                </form>
+            </field>
+        </record>
+
+        <record model="ir.ui.view" id="view_scrum_sprint_search">
+            <field name="name">scrum.sprint.search</field>
+            <field name="model">scrum.sprint</field>
+            <field name="type">search</field>
+            <field name="arch" type="xml">
+                <search string="Sprints">
+                    <group col="10" colspan="4">
+                        <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"/>
+                        <field name="date_start"/>
+                    </group>
+                    <newline/>
+                    <group expand="1" string="Group By..." colspan="4" col="20">
+                        <filter string="Project" icon="terp-project" domain="[]" context="{'group_by':'project_id'}"/>
+                        <filter string="Masters" icon="terp-project" domain="[]"  context="{'group_by':'scrum_master_id'}"/>
+                        <filter string="Product owner" icon="terp-project" domain="[]" context="{'group_by':'product_owner_id'}"/>
+                        <filter string="State" icon="terp-project" domain="[]" context="{'group_by':'state'}"/>
+                        <separator orientation="vertical"/>
+                        <filter string="Start Date" icon="terp-project" domain="[]" context="{'group_by':'date_start'}"/>
+                    </group>
+                </search>
+            </field>
+        </record>
+
+        <record id="action_sprint_all_tree" model="ir.actions.act_window">
+            <field name="name">Sprints</field>
+            <field name="res_model">scrum.sprint</field>
+            <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_scrum_master_id":uid}</field>
+            <field name="search_view_id" ref="view_scrum_sprint_search"/>
+        </record>
+        <menuitem
+            sequence="10"
+            action="action_sprint_all_tree" id="menu_action_sprint_all_tree" parent="menu_scrum"/>
+
+        <!--
+              Daily Meeting
+       -->
+
+        <record id="view_scrum_meeting_tree" model="ir.ui.view">
+            <field name="name">scrum.meeting.tree</field>
+            <field name="model">scrum.meeting</field>
+            <field name="type">tree</field>
+            <field name="arch" type="xml">
+                <tree string="Scrum Sprint">
+                    <field name="date"/>
+                    <field name="sprint_id"/>
+                </tree>
+            </field>
+        </record>
+        <record id="view_scrum_meeting_form" model="ir.ui.view">
+            <field name="name">Scrum Meeting</field>
+            <field name="model">scrum.meeting</field>
+            <field name="type">form</field>
+            <field name="arch" type="xml">
+                <form string="Scrum Sprint">
+                    <group colspan="4" col="6">
+                        <field name="date"/>
+                        <field name="sprint_id" domain="[('state', '=', 'open')]"/>
+                    </group>
+                    <notebook colspan="4">
+                        <page string="Scrum Meeting">
+                            <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 do you plan to do till the next meeting?"/>
+                            <field colspan="4" name="question_today" nolabel="1"/>
+                            <separator colspan="4" string="Are there anything blocking you?"/>
+                            <field colspan="4" name="question_blocks" nolabel="1"/>
+                        </page>
+                        <page string="Optional Info">
+                            <separator colspan="4" string="Are your Sprint Backlog estimate accurate ?"/>
+                            <field colspan="4" name="question_backlog" nolabel="1"/>
+                        </page>
+                        <page string="Links">
+                            <separator colspan="4" string="Tasks"/>
+                            <field colspan="4" name="task_ids" nolabel="1" domain="[('sprint_id','=',sprint_id)]"/>
+                        </page>
+                    </notebook>
+                </form>
+            </field>
+        </record>
+
+        <record id="view_scrum_meeting_search" model="ir.ui.view">
+            <field name="name">scrum.meeting.search</field>
+            <field name="model">scrum.meeting</field>
+            <field name="type">search</field>
+            <field name="arch" type="xml">
+                <search string="Scrum Sprint">
+                    <group col="10" colspan="4">
+                        <filter name="scrum_daily" icon="terp-project" string="Daily" domain="[('date','=',time.strftime('%%Y-%%m-%%d'))]" help="Daily Meetings"/>
+                        <separator orientation="vertical"/>
+                        <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"/>
+                    </group>
+                    <newline/>
+                    <group expand="1" string="Group By..." colspan="4" col="20">
+                        <filter string="Sprint" icon="terp-project" domain="[]" context="{'group_by':'sprint_id'}"/>
+                        <filter string="Date" icon="terp-project" domain="[]" context="{'group_by':'date'}"/>
+                    </group>
+                </search>
+            </field>
+        </record>
+
+        <record id="action_meeting_form" model="ir.actions.act_window">
+            <field name="name">Scrum Meetings</field>
+            <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_scrum_daily':1}</field>
+            <field name="search_view_id" ref="view_scrum_meeting_search"/>
+        </record>
+        <menuitem sequence="30"
+            action="action_meeting_form" id="menu_action_meeting_form" parent="menu_scrum"/>
+
+        <!--
+       Clicks on a sprint:
+       -->
+
+        <record id="action_sprint_task_open" model="ir.actions.act_window">
+            <field name="res_model">project.task</field>
+            <field name="name">View sprint Tasks</field>
+            <field name="view_type">form</field>
+            <field name="view_mode">tree,form</field>
+            <field name="domain">[('product_backlog_id', '=', active_id)]</field>
+        </record>
+        <record id="ir_scrum_sprint_open_task" model="ir.values">
+            <field eval=" 'tree_but_open'" name="key2"/>
+            <field eval="'scrum.sprint'" name="model"/>
+            <field name="name">View sprint tasks</field>
+            <field eval="'ir.actions.act_window,'+str(action_sprint_task_open)" name="value"/>
+            <field eval="True" name="object"/>
+        </record>
+
+        <record id="action_sprint_backlog_open" model="ir.actions.act_window">
+            <field name="res_model">scrum.product.backlog</field>
+            <field name="name">View sprint backlog</field>
+            <field name="view_type">form</field>
+            <field name="view_mode">tree,form</field>
+            <field name="domain">[('sprint_id', '=', active_id)]</field>
+        </record>
+        <record id="ir_scrum_sprint_open_sprint" model="ir.values">
+            <field eval=" 'tree_but_open'" name="key2"/>
+            <field eval="'scrum.sprint'" name="model"/>
+            <field name="name">View sprint backlog</field>
+            <field eval="'ir.actions.act_window,'+str(action_sprint_backlog_open)" name="value"/>
+            <field eval="True" name="object"/>
+        </record>
+
+        <!--
+       Clicks on a project
+       -->
+
+        <record id="dblc_proj" model="ir.actions.act_window">
+            <field name="res_model">scrum.product.backlog</field>
+            <field name="name">View project's backlog</field>
+            <field name="view_type">form</field>
+            <field name="view_mode">tree,form</field>
+            <field name="domain">[('project_id', 'child_of', [active_id])]</field>
+        </record>
+        <record id="ir_scrum_project_backlog" model="ir.values">
+            <field eval=" 'tree_but_open'" name="key2"/>
+            <field eval="'scrum.project'" name="model"/>
+            <field name="name">View project's backlog</field>
+            <field eval="'ir.actions.act_window,'+str(dblc_proj)" name="value"/>
+            <field eval="True" name="object"/>
+        </record>
+        <record id="dblc_proj2" model="ir.actions.act_window">
+            <field name="res_model">project.task</field>
+            <field name="name">View project's tasks</field>
+            <field name="view_type">form</field>
+            <field name="view_mode">tree,form</field>
+            <field name="domain">[('project_id', 'child_of', [active_id])]</field>
+        </record>
+        <record id="ir_scrum_project_task" model="ir.values">
+            <field eval=" 'tree_but_open'" name="key2"/>
+            <field eval="'scrum.project'" name="model"/>
+            <field name="name">View project's tasks</field>
+            <field eval="'ir.actions.act_window,'+str(dblc_proj2)" name="value"/>
+            <field eval="True" name="object"/>
+        </record>
+
+        <!--
+        Tasks
+        -->
+
+        <record id="view_task_tree2" model="ir.ui.view">
+            <field name="name">project.task.tree.scrum</field>
+            <field name="model">project.task</field>
+            <field name="type">tree</field>
+            <field name="inherit_id" ref="project.view_task_tree2"/>
+            <field name="arch" type="xml">
+                <field name="user_id" position="after">
+                    <field name="sprint_id" invisible="context.get('sprint_invisible',True)"/>
+                    <field name="product_backlog_id" invisible="1"/>
+                </field>
+            </field>
+        </record>
+
+        <record id="view_task_form2" model="ir.ui.view">
+            <field name="name">project.task.scrum.form</field>
+            <field name="model">project.task</field>
+            <field name="type">form</field>
+            <field name="inherit_id" ref="project.view_task_form2"/>
+            <field name="arch" type="xml">
+                <xpath expr="/form/group/field[@name='progress']" position="after">
+                    <field domain="[('project_id','=',project_id),]" name="product_backlog_id" select="1"/>
+                </xpath>
+            </field>
+        </record>
+
+        <record id="view_task_form3" model="ir.ui.view">
+            <field name="name">project.task.scrum.form2</field>
+            <field name="model">project.task</field>
+            <field name="type">form</field>
+            <field name="inherit_id" ref="project.view_task_form2"/>
+            <field name="arch" type="xml">
+                <xpath expr="/form/notebook/page[@string='Extra Info']/group/field[@name='sequence']" position="after">
+                    <field name="sprint_id" />
+                </xpath>
+            </field>
+        </record>
+
+        <record id="view_task_search_form2" model="ir.ui.view">
+            <field name="name">project.task.scrum.search</field>
+            <field name="model">project.task</field>
+            <field name="type">search</field>
+            <field name="inherit_id" ref="project.view_task_search_form"/>
+            <field name="arch" type="xml">
+                <field name="project_id" position="after">
+                    <field name="sprint_id" widget="selection" context="{'sprint_invisible':False}">
+                        <filter icon="terp-project" string="Current" context="{'sprint_invisible':False}" domain="[('sprint_id.state','in',('draft','open'))]" help="Current Sprints"/>
+                    </field>
+                </field>
+            </field>
+        </record>
+
+        <record id="view_task_search_form3" model="ir.ui.view">
+            <field name="name">project.task.scrum.search</field>
+            <field name="model">project.task</field>
+            <field name="type">search</field>
+            <field name="inherit_id" ref="project.view_task_search_form"/>
+            <field name="arch" type="xml">
+                <xpath expr="/search/group[@string='Group By...']/filter[@string='End Date']" position="after">
+                    <filter string="Sprint" icon="terp-project" domain="[]" context="{'group_by':'sprint_id'}"/>
+                    <filter string="Backlog" icon="terp-project" domain="[]" context="{'group_by':'product_backlog_id'}"/>
+                    <separator orientation="vertical"/>
+                </xpath>
+            </field>
+        </record>
+
+        <act_window
+            domain="[('sprint_id', '=', active_id)]"
+            id="act_scrum_sprint_2_product_backlog"
+            name="Backlogs"
+            res_model="scrum.product.backlog"
+            src_model="scrum.sprint"
+            view_mode="tree,form"
+            view_type="form"/>
+
+        <act_window
+            domain="[('sprint_id', '=', active_id)]"
+            id="act_scrum_sprint_2_project_task"
+            name="Tasks"
+            res_model="project.task"
+            src_model="scrum.sprint"
+            view_mode="tree,form"
+            view_type="form"/>
+
+
+    </data>
+</openerp>