Added calendar gantt and search view in project_long-term
[odoo/odoo.git] / addons / project / project_view.xml
index 6a60528..bab890a 100644 (file)
@@ -1,9 +1,10 @@
 <?xml version="1.0" encoding="utf-8"?>
 <openerp>
     <data>
-        <menuitem icon="terp-project" id="menu_main" name="Project Management"/>
-        <menuitem id="menu_tasks" name="Tasks" parent="menu_main"/>
-        <menuitem id="menu_definitions" name="Configuration" parent="project.menu_main" sequence="1"/>
+        <menuitem icon="terp-project" id="base.menu_main_pm" name="Project Management" sequence="1"/>
+        <menuitem id="menu_project_management" name="Project Management" parent="base.menu_main_pm" sequence="1"/>
+
+         <menuitem id="menu_definitions" name="Configuration" parent="base.menu_main_pm" sequence="60"/>
 
         <!-- Project -->
         <record id="edit_project" model="ir.ui.view">
             <field name="arch" type="xml">
                 <form string="Project">
                     <group colspan="6" col="6">
-                        <field name="name" select="1"/>
-                        <field name="parent_id"/>
-                        <field name="manager" select="1"/>
+                        <field name="name" string="Project Name" select="1"/>
+                        <field name="parent_id" string="Parent Project"/>
+                        <field name="user_id" string="Project Manager" select="1"/>
                         <field name="date_start"/>
-                        <field name="date_end"/>
+                        <field name="date"/>
                         <field name="progress_rate" widget="progressbar"/>
                     </group>
                     <notebook colspan="4">
                         <page string="Administration">
-                            <field name="warn_manager"/>
-                            <field name="company_id" select="1" groups="base.group_multi_company"/>
-                            <field name="priority"/>
-                            <field name="timesheet_id"/>
-                            <field name="active" select="2"/>
-                            <field name="planned_hours" widget="float_time"/>
-                            <field name="effective_hours" widget="float_time"/>
-                            <field name="category_id" select="2" context="{'default_name':name}"/>
+                            <group col="2" colspan="2">
+                                <separator colspan="2" string="Scheduling"/>
+                                <field name="priority"/>
+                                <field name="active" select="2"/>
+                            </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"/>
+                                <field name="company_id" select="1" groups="base.group_multi_company" widget="selection"/>
+                                <field name="warn_manager"/>
+                            </group>
+
                             <newline/>
                             <separator colspan="4" string="Project's members"/>
                             <field colspan="4" name="members" nolabel="1"/>
@@ -41,9 +50,9 @@
                                 <button name="set_cancel" string="Cancel" type="object" states="open,pending" icon="gtk-cancel"/>
                                 <button name="set_done" string="Done" type="object" states="open,pending" icon="gtk-jump-to"/>
                                 <button name="reset_project" string="Reset as Project" type="object" states="template" icon="gtk-convert"/>
-                                <button name="duplicate_template"
+                                <button
                                     string="New Project Based on Template"
-                                    type="object"
+                                    name="%(wizard_duplicate_template)d"  type="action"
                                     states="template" icon="gtk-new"/>
                             </group>
                         </page>
                                 <label string="Date Stop: %%(date_stop)s"/>
                             </group>
                         </page>
-                        <page string="Tasks">
-                           <field name="tasks" nolabel="1" attrs="{'readonly':[('state','in',['cancelled','done'])]}">
-                               <tree colors="grey:state in ('cancelled','done');blue:remaining_hours&lt;0;red:bool(date_deadline) &amp; (date_deadline&lt;current_date) &amp; (state in ('draft','open'))" string="Tasks">
-                                   <field name="sequence"/>
-                                   <field name="name"/>
-                                   <field name="user_id"/>
-                                   <field name="date_deadline"/>
-                                   <field name="planned_hours" sum="Planned" widget="float_time"/>
-                                   <field name="delay_hours" sum="Delay" widget="float_time"/>
-                                   <field name="progress" widget="progressbar"/>
-                                   <field name="priority"/>
-                                   <field name="state"/>
-                                   <field name="remaining_hours" invisible="1"/>
-                                   </tree>
-                           </field>
+                        <page string="Tasks Stages" groups="base.group_extended">
+                           <field nolabel="1" name="type_ids" colspan="4"/>
                         </page>
                         <page string="Notes">
-                            <field colspan="4" name="notes" nolabel="1"/>
+                            <field colspan="4" name="description" nolabel="1"/>
                         </page>
                     </notebook>
                     <newline/>
@@ -97,9 +93,9 @@
             <field name="priority" eval="5"/>
             <field name="arch" type="xml">
                 <tree string="Projects">
-                    <field name="complete_name"/>
-                    <field name="manager"/>
-                    <field name="partner_id"/>
+                    <field name="complete_name" string="Project Name"/>
+                    <field name="user_id" string="Project Manager"/>
+                    <field name="partner_id" string="Partner"/>
                     <field name="effective_hours" widget="float_time"/>
                     <field name="total_hours" widget="float_time"/>
                     <field name="state"/>
             <field name="type">search</field>
             <field name="arch" type="xml">
                 <search string="Search Project">
-                   <group col='8' colspan='4'>
-                           <filter icon="terp-project" string="My Projects" domain="[('manager', '=', uid)]" help="My Projects"/>
-                           <filter icon="terp-project" string="Templates" domain="[('state','=','template')]" help="Template Projects"/>
-                           <separator orientation="vertical"/>
-                           <field name="name" select='1'/>
-                           <field name="partner_id" select='1'/>
-                           <field name="state" select="1"/>
+                   <group col='15' colspan='4'>
+                       <filter icon="terp-project" string="Open" domain="[('state', '=', 'open')]" help="Open Projects" default="1"/>
+                       <filter icon="terp-project" string="Pending" domain="[('state', '=', 'pending')]" help="Pending Projects"/>
+                       <separator orientation="vertical"/>
+                       <filter icon="terp-project" string="Manager" domain="[('user_id', '=', uid)]" help="Projects in which I am a manager."/>
+                       <filter icon="terp-project" string="Member" domain="['|',('user_id', '=', uid),('members', '=', uid)]" help="Projects in which I am a member." default="1"/>
+                       <separator orientation="vertical"/>
+                       <filter icon="terp-project" string="Templates" domain="[('state','=','template')]" help="Template Projects"/>
+                       <separator orientation="vertical"/>
+                       <field name="name" string="Project Name"/>
+                       <field name="user_id" string="Project Manager"/>
+                       <field name="partner_id" string="Partner"/>
+                       <field name="state"/>
                    </group>
                </search>
             </field>
             <field name="name">project.project.tree</field>
             <field name="model">project.project</field>
             <field name="type">tree</field>
-            <field name="field_parent">child_id</field>
+            <field name="field_parent">child_ids</field>
             <field name="arch" type="xml">
                 <tree string="Projects">
-                    <field name="name"/>
-                    <field name="manager"/>
-                    <field name="partner_id"/>
+                    <field name="sequence" invisible="1"/>
+                    <field name="name" string="Project Name"/>
+                    <field name="user_id" string="Project Manager"/>
+                    <field name="partner_id" string="Partner"/>
                     <field name="planned_hours" widget="float_time"/>
                     <field name="total_hours" widget="float_time"/>
                     <field name="effective_hours" widget="float_time"/>
                 </tree>
             </field>
         </record>
-        <menuitem id="menu_all_project" parent="project.menu_main" name="Projects"/>
+        <!--<menuitem id="menu_all_project" parent="base.menu_main_pm" name="Projects"/> -->
 
         <record id="open_view_project_all" model="ir.actions.act_window">
-            <field name="name">All projects</field>
+            <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_id" ref="view_project"/>
             <field name="search_view_id" ref="view_project_project_filter"/>
         </record>
-        <menuitem action="open_view_project_all" id="menu_open_view_project_all" parent="menu_all_project"/>
-
-        <record id="open_view_project_open" model="ir.actions.act_window">
-            <field name="name">Running projects</field>
-            <field name="res_model">project.project</field>
-            <field name="view_type">form</field>
-            <field name="domain">[('state','=','open')]</field>
-            <field name="view_id" ref="view_project"/>
-            <field name="filter" eval="True"/>
-            <field name="search_view_id" ref="view_project_project_filter"/>
-        </record>
-        <menuitem action="open_view_project_open" id="menu_open_view_project_open" groups="base.group_extended" parent="menu_open_view_project_all"/>
+        <menuitem action="open_view_project_all" id="menu_open_view_project_all" parent="menu_project_management" sequence="1"/>
 
         <record id="open_view_template_project" model="ir.actions.act_window">
             <field name="name">Templates of Projects</field>
             <field name="domain">[('state','=','template')]</field>
             <field name="view_id" ref="view_project"/>
         </record>
-        <menuitem action="open_view_template_project" id="menu_template_project" parent="project.menu_definitions"/>
-
-        <record id="open_view_project" model="ir.actions.act_window">
-            <field name="name">New Project</field>
-            <field name="res_model">project.project</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">form,tree</field>
-            <field name="view_id" eval="edit_project"/>
-        </record>
-        <menuitem action="open_view_project" id="menu_open_view_project" parent="menu_all_project" sequence="50"/>
-
+        <!--<menuitem action="open_view_template_project" id="menu_template_project" parent="project.menu_definitions"/>-->
+        <menuitem  id="menu_template_project_specification" parent="project.menu_definitions" name="Specification" sequence="1"/>
+        <menuitem action="open_view_template_project" id="menu_template_project" parent="project.menu_template_project_specification" name="Specification Template"/>
         <record id="view_task_work_form" model="ir.ui.view">
             <field name="name">project.task.work.form</field>
             <field name="model">project.task.work</field>
                     <field name="hours" select="1" widget="float_time"/>
                     <field name="date" select="1"/>
                     <field name="user_id" select="1"/>
+                    <field name="company_id" groups="base.group_multi_company" widget="selection"/>
                 </form>
             </field>
         </record>
             </field>
         </record>
 
-        <record id="view_my_project" model="ir.ui.view">
-            <field name="name">project.project.tree</field>
-            <field name="model">project.project</field>
-            <field name="type">tree</field>
-            <field name="field_parent">child_id</field>
-            <field name="arch" type="xml">
-                <tree string="My projects">
-                    <field name="name"/>
-                    <field name="partner_id"/>
-                    <field name="planned_hours" widget="float_time"/>
-                    <field name="effective_hours" widget="float_time"/>
-                    <field name="progress_rate" widget="progressbar"/>
-                    <field name="state"/>
-                </tree>
-            </field>
-        </record>
-        <record id="open_view_my_project" model="ir.actions.act_window">
-            <field name="name">My Projects</field>
-            <field name="res_model">project.project</field>
-            <field name="view_type">form</field>
-            <field name="domain">[('manager', '=', uid)]</field>
-            <field name="view_id" ref="view_my_project"/>
-            <field name="filter" eval="True"/>
-            <field name="search_view_id" ref="view_project_project_filter"/>
-        </record>
-        <menuitem action="open_view_my_project" id="menu_open_view_my_project" parent="menu_all_project" groups="base.group_extended"
-            sequence="1"/>
-
-        <record id="open_view_my_project_my_run" model="ir.actions.act_window">
-            <field name="name">My Running Projects</field>
-            <field name="res_model">project.project</field>
-            <field name="view_type">form</field>
-            <field name="domain">[('manager', '=', uid),('state','=','open')]</field>
-            <field name="view_id" ref="view_my_project"/>
-            <field name="filter" eval="True"/>
-            <field name="search_view_id" ref="view_project_project_filter"/>
-        </record>
-        <menuitem
-            action="open_view_my_project_my_run"
-            id="menu_open_view_my_project_my_run"
-            groups="base.group_extended"
-            parent="menu_open_view_my_project"/>
-
-        <record id="open_view_my_project_open" model="ir.actions.act_window">
-            <field name="name">Projects Structure</field>
-            <field name="res_model">project.project</field>
-            <field name="view_type">tree</field>
-            <field name="domain">[('parent_id','=',False)]</field>
-            <field name="view_id" ref="view_my_project"/>
-        </record>
-        <menuitem
-            action="open_view_my_project_open"
-            id="menu_open_view_my_project_open"
-            parent="project.menu_all_project"/>
-
-    <!-- Wizard for compute remaining hours -->
-
         <record id="view_config_compute_remaining" model="ir.ui.view">
             <field name="name">Compute Remaining Hours </field>
             <field name="model">config.compute.remaining</field>
                 <form string="Task edition">
                     <group colspan="6" col="6">
                         <field name="name" select="1"/>
-                        <field name="project_id" required="1" select="1"/>
+                        <field name="project_id" required="1" select="1" domain="['|',('user_id','=',uid),('members','=',uid)]"/>
                         <field name="total_hours" widget="float_time"/>
                         <field name="date_deadline" select="2"/>
                         <field name="user_id" select="1"/>
                                 name="planned_hours"
                                 widget="float_time"
                                 attrs="{'readonly':[('state','!=','draft')]}"
-                                on_change="onchange_planned(planned_hours,effective_hours)"/>
+                                on_change="onchange_planned(planned_hours, effective_hours)"/>
                                 <field name="remaining_hours" select="2" widget="float_time" attrs="{'readonly':[('state','!=','draft')]}" colspan="2"/>
                                 <button name="%(action_config_compute_remaining)d" string="Review" type="action" colspan="1" target="new" states="open,pending" icon="gtk-edit"/>
                             </group>
                             <field colspan="4" name="description" nolabel="1" select="2"  attrs="{'readonly':[('state','=','done')]}" widget="text_wiki"/>
                             <field colspan="4" name="work_ids" nolabel="1" attrs="{'readonly':[('state','in',['draft','done'])]}">
                                 <tree string="Task Work" editable="top">
-                                    <field name="date" />
-                                    <field name="user_id" />
-                                    <field name="hours" widget="float_time" />
                                     <field name="name" />
+                                    <field name="hours" widget="float_time" />
+                                    <field name="user_id" />
+                                    <field name="date" />
                                 </tree>
                             </field>
                             <newline/>
                                 <button groups="base.group_extended" name="%(wizard_delegate_task)d" states="pending,open" string="Delegate" type="action" icon="gtk-sort-descending"/>
                                 <button name="%(wizard_close_task)d" states="pending,open" string="Done" type="action" icon="gtk-jump-to"/>
                                 <button name="do_cancel" states="draft,open,pending" string="Cancel" type="object" icon="gtk-cancel"/>
-
                             </group>
                         </page>
                         <page groups="base.group_extended" string="Delegations">
-                            <field name="parent_id"/>
-                            <newline/>
-                            <field colspan="4" height="150" name="child_ids" nolabel="1" attrs="{'readonly':[('state','!=','draft')]}">
+                            <separator string="Parent Tasks" colspan="4"/>
+                            <field colspan="4" height="150" name="parent_ids" nolabel="1"/>
+                            <separator string="Delegated tasks" colspan="4"/>
+                            <field colspan="4" height="150" name="child_ids" nolabel="1">
                                 <tree string="Delegated tasks">
                                     <field name="name"/>
                                     <field name="user_id"/>
                                     <field name="date_deadline"/>
                                 </tree>
                             </field>
-                            <field colspan="4" name="history" nolabel="1"/>
                         </page>
+
                         <page groups="base.group_extended" string="Extra Info" attrs="{'readonly':[('state','=','done')]}">
                             <group colspan="2" col="2">
                                 <separator string="Planning" colspan="2"/>
                             </group>
                             <group colspan="2" col="2">
                                 <separator string="Dates" colspan="2"/>
-                                <field name="date_start" select="2"/>
-                                <field name="date_close" select="2"/>
+                                <field name="date_start"/>
+                                <field name="date_end"/>
                             </group>
                             <separator string="Miscelleanous" colspan="4"/>
-                            <field name="type" widget="selection"/>
-                            <field name="company_id" select="1" groups="base.group_multi_company"/>
-                            <field name="active" select="2"/>
                             <field name="partner_id" select="2"/>
+                            <field name="company_id" select="1" groups="base.group_multi_company" widget="selection"/>
+                            <group col="4" colspan="2">
+                                <field name="type" widget="selection" />
+                                <button name="prev_type" string="Previous" type="object" icon="gtk-go-back" help="Change to Previous Stage"/>
+                                <button name="next_type" string="Next" type="object" icon="gtk-go-forward" help="Change to Next Stage"/>
+                            </group>
+                            <field name="active" select="2"/>
                             <separator colspan="4" string="Notes"/>
                             <field colspan="4" name="notes" nolabel="1"/>
                         </page>
             <field name="type">tree</field>
             <field eval="2" name="priority"/>
             <field name="arch" type="xml">
-                <tree colors="grey:state in ('cancelled','done');blue:remaining_hours&lt;0;red:bool(date_deadline) &amp; (date_deadline&lt;current_date) &amp; (state in ('draft','open'))" string="Tasks">
-                    <field name="sequence" string="Seq."/>
+                <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="1"/>
                     <field name="name"/>
-                    <field name="project_id" icon="gtk-indent"/>
+                    <field name="planned_hours" widget="float_time" on_change="onchange_planned(planned_hours, effective_hours)" invisible="not context.get('set_visible',False)"/>
+                    <field name="project_id" icon="gtk-indent" domain="['|',('user_id','=',uid),('members','=',uid)]"/>
                     <field name="user_id"/>
-                    <field name="date_deadline"/>
-                    <field name="remaining_hours" widget="float_time"/>
-                    <field name="progress" widget="progressbar"/>
-                    <field name="state"/>
-                    <button name="do_open" states="pending,draft" string="Start Task" type="object" icon="gtk-execute" help="For changing to open state"/>
-                    <button groups="base.group_extended" name="%(wizard_delegate_task)d" states="pending,open,draft" string="Delegate" type="action" icon="gtk-execute" help="For changing to delegate state"/>
-                    <button name="%(wizard_close_task)d" states="pending,open" string="Done" type="action" 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>
-        </record>
-
-        <record id="view_task_tree3" model="ir.ui.view">
-            <field name="name">project.task.tree</field>
-            <field name="model">project.task</field>
-            <field name="type">tree</field>
-            <field eval="2" name="priority"/>
-            <field name="arch" type="xml">
-                <tree editable="top" colors="grey:state in ('cancelled','done');blue:remaining_hours&lt;0;red:bool(date_deadline) &amp; (date_deadline&lt;current_date) &amp; (state in ('draft','open'))" string="Tasks">
-                    <field name="sequence" string="Seq."/>
-                    <field name="name"/>
-                    <field name="project_id" icon="gtk-indent"/>
-                    <field name="user_id"/>
-                    <field name="date_deadline"/>
-                    <field name="remaining_hours" widget="float_time"/>
-                    <field name="progress" widget="progressbar"/>
-                    <field name="state"/>
-                    <button name="do_open" states="pending,draft" string="Start Task" type="object" icon="gtk-execute" help="For changing to open state"/>
+                    <field name="delegated_user_id" invisible="context.get('show_delegated', True)"/>
+                    <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="%(wizard_delegate_task)d" states="pending,open,draft" string="Delegate" type="action" icon="gtk-execute" help="For changing to delegate state"/>
-                    <button name="%(wizard_close_task)d" states="pending,open" string="Done" type="action" icon="gtk-jump-to" help="For changing to done state"/>
+                    <button name="%(wizard_close_task)d" states="draft,pending,open" string="Done" type="action" 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>
         </record>
 
-        <record id="my_pending_task" model="ir.ui.view">
-            <field name="name">my.pending.task.tree</field>
-            <field name="model">project.task</field>
-            <field name="type">tree</field>
-            <field eval="2" name="priority"/>
-            <field name="arch" type="xml">
-                <tree colors="grey:state in ('cancelled','done');blue:remaining_hours&lt;0;red:bool(date_deadline) &amp; (date_deadline&lt;current_date) &amp; (state in ('draft','open'))" string="Tasks">
-                    <field name="sequence" string="Seq."/>
-                    <field name="name"/>
-                    <field name="project_id"/>
-                    <field name="delegated_user_id"/>
-                    <field name="date_deadline"/>
-                    <field name="remaining_hours" widget="float_time"/>
-                    <field name="progress" widget="progressbar"/>
-                    <field name="priority"/>
-                    <field name="state"/>
-                </tree>
-            </field>
-        </record>
-
         <record id="view_task_calendar" model="ir.ui.view">
             <field name="name">project.task.calendar</field>
             <field name="model">project.task</field>
             <field name="type">search</field>
             <field name="arch" type="xml">
                <search string="Task Edition">
-                    <group col="8" colspan="4">
-                        <filter string="Draft" domain="[('state','=','draft')]" help="Draft Tasks" icon="terp-project"/>
-                        <filter string="Open" domain="[('state','=','open')]" help="Open Tasks" icon="terp-project"/>
-                        <filter string="Pending" domain="[('state','=','pending')]" help="Pending Tasks" icon="terp-project"/>
+                    <group col="20" colspan="4">
+                        <filter string="Current" domain="[('state','in',('open','draft'))]" help="Draft, Open and Pending Tasks" icon="terp-project" default="1"/>
+                        <filter string="In Progress" domain="[('state','=','open')]" help="Open Tasks" icon="terp-project"/>
+                        <filter string="Pending" domain="[('state','=','pending')]" context="{'show_delegated':False}" help="Pending Tasks" icon="terp-project"/>
+                        <separator orientation="vertical"/>
+                        <filter string="Deadlines" domain="[('date_deadline','&lt;&gt;',False)]" help="Show only tasks having a deadline" icon="terp-project"/>
                         <separator orientation="vertical"/>
                         <field name="name" select="1"/>
-                        <field name="project_id" select="1" widget="selection">
-                             <filter domain="[('manager_id','=',False)]" help="Unassigned Project" icon="terp-project"/>
+                        <field name="project_id" select="1" widget="selection" default="context.get('project_id', False)">
+                             <filter domain="[('project_id.user_id','=',uid)]" help="My Projects" icon="terp-project"/>
+                             <filter domain="[('project_id','=',False)]" help="Tasks not assigned to a project" icon="terp-project"/>
                         </field>
-                    </group>
-                    <group col="4" colspan="1">
                         <field name="user_id" select="1" widget="selection">
-                            <filter domain="[('user_id','=',uid)]" help="My Tasks" icon="gtk-execute"/>
-                            <filter domain="[('user_id', 'child_of', [uid])]" help="My Department tasks" icon="gtk-execute" separator="1"/>
+                            <filter domain="[('user_id','=',uid)]" help="My Tasks" icon="gtk-execute" default="1"/>
                             <filter domain="[('user_id','=',False)]" help="Unassigned Tasks" icon="gtk-execute" separator="1"/>
                         </field>
                     </group>
+                    <newline/>
+                    <group expand="1" string="Group By..." colspan="4" col="20">
+                        <filter string="Users" icon="terp-project" domain="[]"  context="{'group_by':'user_id'}"/>
+                        <filter string="Project" icon="terp-project" domain="[]" context="{'group_by':'project_id'}"/>
+                        <filter string="Stage" icon="terp-project" domain="[]" context="{'group_by':'type'}"/>
+                        <filter string="State" icon="terp-project" domain="[]" context="{'group_by':'state'}"/>
+                        <separator orientation="vertical"/>
+                        <filter string="Deadline" icon="terp-project" domain="[]" context="{'group_by':'date_deadline'}"/>
+                        <filter string="Start Date" icon="terp-project" domain="[]" context="{'group_by':'date_start'}"/>
+                        <filter string="End Date" icon="terp-project" domain="[]" context="{'group_by':'date_end'}"/>
+                    </group>
                 </search>
             </field>
         </record>
 
         <record id="action_view_task" model="ir.actions.act_window">
-            <field name="name">All Tasks</field>
+            <field name="name">Tasks</field>
             <field name="res_model">project.task</field>
             <field name="view_type">form</field>
             <field name="view_mode">tree,form,calendar,gantt,graph</field>
-            <field eval="False" name="view_id"/>
-            <field eval="True" name="filter"/>
+            <field eval="False" name="filter"/>
+            <field name="view_id" ref="view_task_tree2"/>
             <field name="search_view_id" ref="view_task_search_form"/>
         </record>
-        <menuitem action="action_view_task" id="menu_action_view_task" parent="project.menu_tasks"/>
-
-        <record id="action_view_task4" model="ir.actions.act_window">
-            <field name="name">My Tasks</field>
-            <field name="res_model">project.task</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">tree,form,calendar,gantt,graph</field>
-            <field name="domain">[('user_id', '=', uid)]</field>
-            <field name="view_id" ref="view_task_tree3"/>
-            <field eval="True" name="filter"/>
-            <field name="search_view_id" ref="view_task_search_form"/>
-        </record>
-        <menuitem action="action_view_task4" id="menu_action_view_task4" parent="project.menu_tasks" groups="base.group_extended" />
-
-        <record id="action_view_task_department" model="ir.actions.act_window">
-            <field name="name">My Department Tasks</field>
-            <field name="res_model">project.task</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">tree,form,calendar,gantt,graph</field>
-            <field eval="True" name="filter"/>
-            <field name="domain">[('user_id', 'child_of', [uid])]</field>
-            <field eval="True" name="filter"/>
-            <field name="search_view_id" ref="view_task_search_form"/>
-        </record>
-        <menuitem action="action_view_task_department" id="menu_action_view_department_tasks" parent="project.menu_tasks" groups="base.group_extended"/>
-
-        <record id="action_view_task5_pending" model="ir.actions.act_window">
-            <field name="name">My Pending Tasks</field>
-            <field name="res_model">project.task</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">tree,form,calendar,graph</field>
-            <field name="domain">[('user_id', '=', uid),('state','=','pending')]</field>
-            <field eval="True" name="filter"/>
-            <field name="view_id" ref="my_pending_task"/>
-            <field name="search_view_id" ref="view_task_search_form"/>
-        </record>
-        <menuitem action="action_view_task5_pending" id="menu_tasks_yours_pending" groups="base.group_extended" parent="menu_action_view_task4"/>
-
-        <record id="action_view_task5_prog" model="ir.actions.act_window">
-            <field name="name">My Current Tasks</field>
-            <field name="res_model">project.task</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">tree,form,calendar,graph</field>
-            <field name="domain">[('user_id', '=', uid),('state','in',('open','draft'))]</field>
-            <field eval="True" name="filter"/>
-            <field name="view_id" ref="view_task_tree3"/>
-            <field name="filter" eval="True"/>
-            <field name="search_view_id" ref="view_task_search_form"/>
-        </record>
-        <menuitem action="action_view_task5_prog" id="menu_tasks_yours_prog" parent="menu_action_view_task4" sequence="1"/>
-
-        <record id="action_view_task5_prog_prog" model="ir.actions.act_window">
-            <field name="name">My Tasks in Progress</field>
-            <field name="res_model">project.task</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">tree,form,calendar,graph</field>
-            <field name="domain">[('user_id', '=', uid),('state','=','open')]</field>
-            <field name="view_id" ref="view_task_tree3"/>
-            <field name="filter" eval="True"/>
-            <field name="search_view_id" ref="view_task_search_form"/>
-        </record>
-        <menuitem action="action_view_task5_prog_prog" id="menu_tasks_yours_prog_prog" groups="base.group_extended" parent="menu_tasks_yours_prog"/>
-
-        <record id="action_view_task5_prog_draft" model="ir.actions.act_window">
-            <field name="name">My Draft Tasks</field>
-            <field name="res_model">project.task</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">tree,form,calendar,graph</field>
-            <field name="domain">[('user_id', '=', uid),('state','=','draft')]</field>
-            <field name="view_id" ref="view_task_tree3"/>
-            <field name="filter" eval="True"/>
-            <field name="search_view_id" ref="view_task_search_form"/>
-        </record>
-        <menuitem action="action_view_task5_prog_draft" id="menu_tasks_yours_prog_draft" groups="base.group_extended" parent="menu_tasks_yours_prog"/>
-
-        <record id="action_view_task5_departments_pending" model="ir.actions.act_window">
-            <field name="name">My Department's Pending Tasks</field>
-            <field name="res_model">project.task</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">tree,form,calendar,graph</field>
-            <field name="domain">[('user_id', 'child_of', [uid]),('state','=','pending')]</field>
-            <field name="view_id" ref="my_pending_task"/>
-           <field name="filter" eval="True"/>
-           <field name="search_view_id" ref="view_task_search_form"/>
-        </record>
-        <menuitem action="action_view_task5_departments_pending" id="menu_tasks_yours_departments_pending" groups="base.group_extended" parent="menu_action_view_department_tasks"/>
-
-        <record id="action_view_task5_departments_prog" model="ir.actions.act_window">
-            <field name="name">My Department's Current Tasks</field>
-            <field name="res_model">project.task</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">tree,form,calendar,graph</field>
-            <field eval="True" name="filter"/>
-            <field name="domain">[('user_id', 'child_of', [uid]),('state','in',('open','draft'))]</field>
-            <field name="filter" eval="True"/>
-            <field name="search_view_id" ref="view_task_search_form"/>
-        </record>
-        <menuitem action="action_view_task5_departments_prog" id="menu_tasks_yours_departments_prog" parent="menu_action_view_department_tasks" sequence="1"/>
-
-        <record id="action_view_task5_departments_prog_prog" model="ir.actions.act_window">
-            <field name="name">My Department's Tasks in Progress</field>
-            <field name="res_model">project.task</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">tree,form,calendar,graph</field>
-            <field name="domain">[('user_id', 'child_of', [uid]),('state','=','open')]</field>
-            <field name="filter" eval="True"/>
-            <field name="search_view_id" ref="view_task_search_form"/>
-        </record>
-        <menuitem action="action_view_task5_departments_prog_prog" id="menu_tasks_yours_departments_prog_prog" groups="base.group_extended" parent="menu_tasks_yours_departments_prog"/>
-
-        <record id="action_view_task5_departments_prog_draft" model="ir.actions.act_window">
-            <field name="name">My Department's Draft Tasks</field>
-            <field name="res_model">project.task</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">tree,form,calendar,graph</field>
-            <field name="domain">[('user_id', 'child_of', [uid]),('state','=','draft')]</field>
-            <field name="filter" eval="True"/>
-            <field name="search_view_id" ref="view_task_search_form"/>
-        </record>
-        <menuitem action="action_view_task5_departments_prog_draft" id="menu_tasks_yours_departments_prog_draft" groups="base.group_extended" parent="menu_tasks_yours_departments_prog"/>
+        <menuitem action="action_view_task" id="menu_action_view_task" parent="project.menu_project_management" sequence="2"/>
 
         <record id="action_view_task_overpassed_draft" model="ir.actions.act_window">
             <field name="name">Overpassed Tasks</field>
             <field name="filter" eval="True"/>
             <field name="search_view_id" ref="view_task_search_form"/>
         </record>
-        <record id="action_view_task_new" model="ir.actions.act_window">
-            <field name="name">New Task</field>
-            <field name="res_model">project.task</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">form,tree,calendar,gantt,graph</field>
-        </record>
-        <menuitem action="action_view_task_new" id="menu_action_view_task_new" parent="menu_tasks"/>
-
-        <record id="action_view_task6_prog" model="ir.actions.act_window">
-            <field name="name">Tasks in Progress</field>
-            <field name="res_model">project.task</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">tree,form,calendar,graph,gantt</field>
-            <field name="filter" eval="True"/>
-            <field name="search_view_id" ref="view_task_search_form"/>
-            <field name="domain">[('state','=','open')]</field>
-        </record>
-        <menuitem action="action_view_task6_prog" id="menu_action_view_task6_prog" parent="project.menu_action_view_task" groups="base.group_extended"/>
-
-        <record id="action_view_task7" model="ir.actions.act_window">
-            <field name="name">Unassigned Tasks</field>
-            <field name="res_model">project.task</field>
-            <field name="view_type">form</field>
-            <field name="view_mode">tree,form,calendar,graph,gantt</field>
-            <field name="domain">[('user_id', '=', False)]</field>
-            <field name="filter" eval="True"/>
-            <field name="search_view_id" ref="view_task_search_form"/>
-        </record>
-        <menuitem action="action_view_task7" id="menu_action_view_task7" parent="project.menu_action_view_task" groups="base.group_extended"/>
 
         <!-- Opening task when double clicking on project -->
         <record id="dblc_proj" model="ir.actions.act_window">
             <field name="model">project.task.type</field>
             <field name="type">form</field>
             <field name="arch" type="xml">
-                <form string="Task type">
-                    <field colspan="4" name="name" select="1"/>
+                <form string="Task Stage">
+                    <field name="name" select="1"/>
+                    <field name="sequence"/>
                     <field colspan="4" name="description" select="1"/>
                 </form>
             </field>
             <field name="model">project.task.type</field>
             <field name="type">tree</field>
             <field name="arch" type="xml">
-                <tree string="Task type">
+                <tree string="Task Stage">
+                    <field name="sequence"/>
                     <field name="name"/>
                 </tree>
             </field>
         </record>
         <menuitem action="open_task_type_form" id="menu_task_types" parent="project.menu_definitions"/>
 
-        <act_window domain="[('manager', '=', 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="[('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)]"
         <act_window
             domain="[('project_id', '=', active_id)]"
             id="act_project_project_2_project_task_all"
-            name="All Tasks"
+            name="Tasks"
             res_model="project.task"
             src_model="project.project"
             view_mode="tree,form,calendar,graph"
             </field>
         </record>
 
+
+      <!--     User Form-->
+      <record id="view_project_users_form_simple" model="ir.ui.view">
+            <field name="name">res.users.project.form1</field>
+            <field name="model">res.users</field>
+            <field name="type">form</field>
+            <field name="inherit_id" ref="base.view_users_form"/>
+            <field eval="18" name="priority"/>
+            <field name="arch" type="xml">
+                <field name="password" position="after">
+                 <field name="context_project_id" completion="1" widget="selection"/>
+                </field>
+            </field>
+        </record>
+
+     <record model="ir.ui.view" id="view_users_form_project_modif_inherited1">
+            <field name="name">view.users.form.project.modif.inherited1</field>
+            <field name="model">res.users</field>
+            <field name="inherit_id" ref="base.view_users_form_simple_modif" />
+            <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" widget="selection" context="{'user_prefence':True}"/>
+                </page>
+            </field>
+        </record>
+
+<!--- Messages-->
+     <record id="view_project_message_form" model="ir.ui.view">
+            <field name="name">project.message.form</field>
+            <field name="model">project.message</field>
+            <field name="type">form</field>
+            <field name="arch" type="xml">
+                <form string="Messages">
+                    <group colspan="6">
+                        <field name="subject" select="1"/>
+                        <field name="project_id"/>
+                        <field name="user_id" select="1"/>
+                          <field name="date" select="2"/>
+                     </group>
+                        <separator string="Description"  colspan="4"/>
+                        <field name="description"  nolabel="1" colspan="4"/>
+                </form>
+            </field>
+       </record>
+
+     <record id="view_project_message_tree" model="ir.ui.view">
+            <field name="name">project.message.tree</field>
+            <field name="model">project.message</field>
+            <field name="type">tree</field>
+            <field name="arch" type="xml">
+                <tree string="Messages">
+                    <field name="subject" select="1"/>
+                    <field name="user_id" select="1"/>
+                    <field name="project_id" select="1"/>
+                    <field name="date" select="1"/>
+                </tree>
+            </field>
+       </record>
+
+        <record id="view_project_message_search" model="ir.ui.view">
+           <field name="name">project.message.search</field>
+           <field name="model">project.message</field>
+           <field name="type">search</field>
+           <field name="arch" type="xml">
+               <search string="Messages">
+                   <group col="20" colspan="4">
+                       <filter domain="[('date','&gt;=',time.strftime('%%Y-%%m-01'))]" icon="terp-project" string="This Month" />
+                       <filter domain="[('date', '=', time.strftime('%%Y-%%m-%%d'))]" icon="terp-project" string="Today" />
+                          
+                          <separator orientation="vertical"/>
+                          <field name="subject"/>
+                          <field name="project_id" select="1" widget="selection"/>
+                          <field name="user_id" select="1" widget="selection">
+                              <filter domain="[('user_id','=',uid)]" help="My Message" icon="gtk-execute" default="1"/>
+                          </field>
+                   </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="User" icon="terp-project" domain="[]" context="{'group_by':'user_id'}"/>
+                       <filter string="Date" icon="terp-project" domain="[]" context="{'group_by':'date'}"/>
+                   </group>
+               </search>
+           </field>
+        </record>
+
+        <record id="action_view_project_messages_tree" model="ir.actions.act_window">
+            <field name="name">Messages</field>
+            <field name="res_model">project.message</field>
+            <field name="view_type">form</field>
+            <field name="view_mode">tree,form</field>
+            <field name="view_id" ref="view_project_message_tree"/>
+            <field name="search_view_id" ref="view_project_message_search"/>
+       </record>
+
+        <!--<menuitem id="menu_message_main" name="Message" parent="base.menu_main_pm"/>-->
+        <menuitem action="action_view_project_messages_tree" id="menu_message_tree" parent="menu_project_management" sequence="11"/>
+
         <act_window domain="[('user_id', '=', active_id),('state', '&lt;&gt;', 'cancelled'),('state', '&lt;&gt;', '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 domain="[('user_id', '=', active_id),('date', '&gt;=', 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"/>