Hardik Ansodariya (OpenERP) has proposed merging 
lp:~openerp-dev/openobject-addons/trunk-polish2-project_long-han into 
lp:openobject-addons.

Requested reviews:
  Hardik Ansodariya (OpenERP) (han-tinyerp)
  Amit (Open ERP) (apa-tiny)

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-polish2-project_long-han/+merge/81983

Hello,

(1)set the menu order of  Project/Configuration/Users:

   * Users Planning
   * Users Leaves
   * Working Time
(2)In resource form (Users Planning) :

Hide Resource type field
organized search view filed like this : Name | User | Active
Removed Tab "General Information" from Users Planning form view

(3)Task and Project long term demo data:

set starting date for the task and phasewhich are in "in progress" state
set stage for task 
Field phase_id moved to first tab from extra info

(4)Project form view:

member tab, hide Login, Language and last connection columns (reported as bug)

create a new project -> go to the link "phases" (project right sidebar) -> 
create a new phase from there -> the project field should be set as the project 
i come from

fixed second issue

(5)phase view :

Added wizard with specified columns
should be available in simplified interface(set simplified interface)
start date should not be readonly
if i click on the link related tasks and that i create a new task, the Project 
Phase field must be set (name of the phase i am seting)
set Planning of users field to readonly
-- 
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-polish2-project_long-han/+merge/81983
Your team OpenERP R&D Team is subscribed to branch 
lp:~openerp-dev/openobject-addons/trunk-polish2-project_long-han.
=== modified file 'project/project.py'
--- project/project.py	2011-11-09 18:12:56 +0000
+++ project/project.py	2011-11-11 13:39:26 +0000
@@ -624,37 +624,39 @@
         Close Task
         """
         request = self.pool.get('res.request')
-        for task in self.browse(cr, uid, ids, context=context):
-            vals = {}
-            project = task.project_id
-            if project:
-                # Send request to project manager
-                if project.warn_manager and project.user_id and (project.user_id.id != uid):
-                    request.create(cr, uid, {
-                        'name': _("Task '%s' closed") % task.name,
-                        'state': 'waiting',
-                        'act_from': uid,
-                        'act_to': project.user_id.id,
-                        'ref_partner_id': task.partner_id.id,
-                        'ref_doc1': 'project.task,%d'% (task.id,),
-                        'ref_doc2': 'project.project,%d'% (project.id,),
-                    }, context=context)
+        # calling do_close from demo data it returns id in string therefor need to convert in list 
+        if not isinstance(ids,list): ids = [ids]
+        task = self.browse(cr, uid, ids, context=context)[0]
+        vals = {}
+        project = task.project_id
+        if project:
+            # Send request to project manager
+            if project.warn_manager and project.user_id and (project.user_id.id != uid):
+                request.create(cr, uid, {
+                    'name': _("Task '%s' closed") % task.name,
+                    'state': 'waiting',
+                    'act_from': uid,
+                    'act_to': project.user_id.id,
+                    'ref_partner_id': task.partner_id.id,
+                    'ref_doc1': 'project.task,%d'% (task.id,),
+                    'ref_doc2': 'project.project,%d'% (project.id,),
+                }, context=context)
 
-            for parent_id in task.parent_ids:
-                if parent_id.state in ('pending','draft'):
-                    reopen = True
-                    for child in parent_id.child_ids:
-                        if child.id != task.id and child.state not in ('done','cancelled'):
-                            reopen = False
-                    if reopen:
-                        self.do_reopen(cr, uid, [parent_id.id], context=context)
-            vals.update({'state': 'done'})
-            vals.update({'remaining_hours': 0.0})
-            if not task.date_end:
-                vals.update({ 'date_end':time.strftime('%Y-%m-%d %H:%M:%S')})
-            self.write(cr, uid, [task.id],vals, context=context)
-            message = _("The task '%s' is done") % (task.name,)
-            self.log(cr, uid, task.id, message)
+        for parent_id in task.parent_ids:
+            if parent_id.state in ('pending','draft'):
+                reopen = True
+                for child in parent_id.child_ids:
+                    if child.id != task.id and child.state not in ('done','cancelled'):
+                        reopen = False
+                if reopen:
+                    self.do_reopen(cr, uid, [parent_id.id], context=context)
+        vals.update({'state': 'done'})
+        vals.update({'remaining_hours': 0.0})
+        if not task.date_end:
+            vals.update({ 'date_end':time.strftime('%Y-%m-%d %H:%M:%S')})
+        self.write(cr, uid, [task.id],vals, context=context)
+        message = _("The task '%s' is done") % (task.name,)
+        self.log(cr, uid, task.id, message)
         return True
 
     def do_reopen(self, cr, uid, ids, context=None):
@@ -698,14 +700,12 @@
         return True
 
     def do_open(self, cr, uid, ids, context={}):
-        tasks= self.browse(cr, uid, ids, context=context)
-        for t in tasks:
-            data = {'state': 'open'}
-            if not t.date_start:
-                data['date_start'] = time.strftime('%Y-%m-%d %H:%M:%S')
-            self.write(cr, uid, [t.id], data, context=context)
-            message = _("The task '%s' is opened.") % (t.name,)
-            self.log(cr, uid, t.id, message)
+        # calling do_open from demo data it returns id in string therefor need to convert in list 
+        if not isinstance(ids,list): ids = [ids]
+        task = self.browse(cr, uid, ids, context=context)[0]
+        self.write(cr, uid, [task.id], {'state': 'open'}, context=context)
+        message = _("The task '%s' is opened.") % (task.name)
+        self.log(cr, uid, task.id, message)
         return True
 
     def do_draft(self, cr, uid, ids, context={}):

=== modified file 'project/project_demo.xml'
--- project/project_demo.xml	2011-11-08 21:03:38 +0000
+++ project/project_demo.xml	2011-11-11 13:39:26 +0000
@@ -157,7 +157,7 @@
             <field name="priority">2</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
             <field name="name">Develop Module in Sale Management</field>
-             <field name="type_id" ref="project_tt_development"/>
+             <field name="type_id" ref="project_tt_specification"/>
         </record>
 
         <record id="project_task_11" model="project.task">
@@ -166,36 +166,49 @@
             <field name="priority">2</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
             <field name="name">Develop module in Warehouse</field>
-            <field name="type_id" ref="project_tt_development"/>
+            <field name="type_id" ref="project_tt_merge"/>
+            <field name="state">done</field> 
+            <field eval="time.strftime('%Y-%m-%d')" name="date_end"/>
         </record>
 
+        <function model="project.task" name="do_close" eval="[ref('project_task_11')]"/>
+        
         <record id="project_task_12" model="project.task">
             <field eval="20.0" name="planned_hours"/>
             <field name="user_id" ref="project.res_users_developer"/>
             <field name="priority">2</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
             <field name="name">Integrate Modules</field>
-            <field name="type_id" ref="project_tt_development"/>
+            <field name="type_id" ref="project_tt_merge"/>
+            <field eval="time.strftime('%Y-%m-%d')" name="date_end"/>
         </record>
 
+        <function model="project.task" name="do_close" eval="[ref('project_task_12')]"/>
+        
         <record id="project_task_13" model="project.task">
             <field eval="50.0" name="planned_hours"/>
             <field name="user_id" ref="project.res_users_tester"/>
             <field name="priority">2</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
             <field name="name">Unit Testing</field>
-            <field name="type_id" ref="project_tt_testing"/>      
+            <field name="type_id" ref="project_tt_development"/>
+            <field name="state">pending</field>      
         </record>
 
+        <function model="project.task" name="do_pending" eval="[ref('project_task_13')]"/>
+
         <record id="project_task_14" model="project.task">
             <field eval="30.0" name="planned_hours"/>
             <field name="user_id" ref="project.res_users_tester"/>
             <field name="priority">2</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
             <field name="name">Regression Test</field>
-            <field name="type_id" ref="project_tt_testing"/>  
+            <field name="type_id" ref="project_tt_development"/> 
+            <field name="state">pending</field> 
         </record>
 
+        <function model="project.task" name="do_pending" eval="[ref('project_task_14')]"/>
+
         <record id="project_task_15" model="project.task">
             <field eval="15.0" name="planned_hours"/>
             <field name="user_id" ref="project.res_users_developer"/>
@@ -203,8 +216,11 @@
             <field name="project_id" ref="project.project_integrate_openerp"/>
             <field name="name">Documentation</field>
             <field name="type_id" ref="project_tt_specification"/>
+            <field name="date_start">06-02-2011</field>
         </record>
 
+        <function model="project.task" name="do_open" eval="[ref('project_task_15')]"/>
+        
         <record id="project_task_16" model="project.task">
             <field eval="10" name="sequence"/>
             <field eval="40.0" name="planned_hours"/>
@@ -212,27 +228,35 @@
             <field name="priority">2</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
             <field name="name">Performance Tuning</field>
-             <field name="type_id" ref="project_tt_merge"/>
+             <field name="type_id" ref="project_tt_specification"/>
+             <field eval="time.strftime('%Y-%m-%d')" name="date_start"/>
         </record>
 
+        <function model="project.task" name="do_open" eval="[ref('project_task_16')]"/>
+
         <record id="project_task_17" model="project.task">
             <field eval="5.0" name="planned_hours"/>
             <field name="user_id" ref="project.res_users_analyst"/>
             <field name="priority">2</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
             <field name="name">Deploy and Review on Customer System</field>
-            <field name="type_id" ref="project_tt_merge"/>
+            <field name="type_id" ref="project_tt_specification"/>
+            <field eval="time.strftime('%Y-%m-%d')" name="date_start"/>
         </record>
 
+        <function model="project.task" name="do_open" eval="[ref('project_task_17')]"/>
+
         <record id="project_task_18" model="project.task">
             <field eval="10.0" name="planned_hours"/>
             <field name="user_id" ref="project.res_users_analyst"/>
             <field name="priority">2</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
             <field name="name">Training and Presentation</field>
-            <field name="type_id" ref="project_tt_merge"/>
+            <field name="type_id" ref="project_tt_specification"/>
+            <field name="date_start">09-21-2011</field>
         </record>
 
+        <function model="project.task" name="do_open" eval="[ref('project_task_18')]"/>
         <!--
     Resource: project.project
     -->
@@ -285,7 +309,11 @@
             <field name="project_id" ref="project_project_22"/>
             <field name="description">BoM, After sales returns, interventions. Traceability.</field>
             <field name="name">Specific adaptation to MRP</field>
+            <field name="date_start">12-18-2011</field>
         </record>
+
+        <function model="project.task" name="do_open" eval="[ref('project_task_116')]"/>
+        
         <record id="project_task_130" model="project.task">
             <field name="planned_hours">16.0</field>
             <field name="remaining_hours">16.0</field>
@@ -293,7 +321,11 @@
             <field model="res.users" name="user_id" search="[('login','=','demo')]"/>
             <field name="project_id" ref="project_project_23"/>
             <field name="name">Data importation + Doc</field>
+            <field eval="time.strftime('%Y-%m-%d')" name="date_start"/>
         </record>
+
+        <function model="project.task" name="do_open" eval="[ref('project_task_130')]"/>
+        
         <record id="project_task_131" model="project.task">
             <field name="planned_hours">16.0</field>
             <field name="remaining_hours">16.0</field>
@@ -301,25 +333,37 @@
             <field model="res.users" name="user_id" search="[('login','=','demo')]"/>
             <field name="project_id" ref="project_project_23"/>
             <field name="name">Modifications asked by the customer.</field>
+            <field name="date_start">08-13-2011</field>
         </record>
+
+        <function model="project.task" name="do_open" eval="[ref('project_task_131')]"/>
+        
         <record id="project_task_184" model="project.task">
             <field name="planned_hours">16.0</field>
             <field name="remaining_hours">16.0</field>
-            <field name="type_id" ref="project_tt_development"/>
+            <field name="type_id" ref="project_tt_testing"/>
             <field model="res.users" name="user_id" search="[('login','=','demo')]"/>
             <field name="priority">0</field>
             <field name="project_id" ref="project_project_21"/>
             <field name="name">Customer analysis + Architecture</field>
+            <field name="date_start">12-17-2011</field>
         </record>
+
+        <function model="project.task" name="do_open" eval="[ref('project_task_184')]"/>
+        
         <record id="project_task_186" model="project.task">
             <field name="sequence">15</field>
             <field name="planned_hours">8.0</field>
             <field name="remaining_hours">8.0</field>
-            <field name="type_id" ref="project_tt_development"/>
+            <field name="type_id" ref="project_tt_testing"/>
             <field model="res.users" name="user_id" search="[('login','=','demo')]"/>
             <field name="project_id" ref="project_project_21"/>
             <field name="name">Internal testing + Software Install</field>
+            <field name="date_start">09-15-2011</field>
         </record>
+
+        <function model="project.task" name="do_open" eval="[ref('project_task_186')]"/>
+        
         <record id="project_task_188" model="project.task">
             <field name="sequence">17</field>
             <field name="planned_hours">16.0</field>
@@ -327,29 +371,37 @@
             <field name="type_id" ref="project_tt_development"/>
             <field model="res.users" name="user_id" search="[('login','=','demo')]"/>
             <field name="priority">2</field>
-            <field name="state">open</field>
             <field name="project_id" ref="project_project_21"/>
             <field name="name">Analysis, Data Importation</field>
+            <field name="date_start">10-07-2011</field>
         </record>
+
+        <function model="project.task" name="do_open" eval="[ref('project_task_188')]"/>
+        
         <record id="project_task_189" model="project.task">
             <field name="sequence">20</field>
             <field name="planned_hours">16.0</field>
             <field name="remaining_hours">16.0</field>
-            <field name="state">open</field>
             <field model="res.users" name="user_id" search="[('login','=','demo')]"/>
             <field name="project_id" ref="project_project_23"/>
             <field name="name">Parameters</field>
             <field name="type_id" ref="project_tt_specification"/>
+            <field name="date_start">11-09-2011</field>
         </record>
+
+        <function model="project.task" name="do_open" eval="[ref('project_task_189')]"/>
+        
         <record id="project_task_190" model="project.task">
             <field name="sequence">20</field>
             <field name="planned_hours">32.0</field>
             <field name="remaining_hours">32.0</field>
             <field model="res.users" name="user_id" search="[('login','=','demo')]"/>
-            <field name="state">open</field>
             <field name="project_id" ref="project_project_21"/>
             <field name="name">Start of the doc redaction + MRP</field>
-            <field name="type_id" ref="project_tt_specification"/>
+            <field name="type_id" ref="project_tt_testing"/>
         </record>
+        
+        <function model="project.task" name="do_open" eval="[ref('project_task_190')]"/>
+        
     </data>
 </openerp>

=== modified file 'project_long_term/__openerp__.py'
--- project_long_term/__openerp__.py	2011-10-27 21:11:24 +0000
+++ project_long_term/__openerp__.py	2011-11-11 13:39:26 +0000
@@ -58,6 +58,7 @@
         "project_long_term_workflow.xml",
         "wizard/project_compute_phases_view.xml",
         "wizard/project_compute_tasks_view.xml",
+        "wizard/project_phase_complete_view.xml",
     ],
     'installable': True,
     'active': False,

=== modified file 'project_long_term/project_long_term_demo.xml'
--- project_long_term/project_long_term_demo.xml	2011-10-27 21:11:24 +0000
+++ project_long_term/project_long_term_demo.xml	2011-11-11 13:39:26 +0000
@@ -6,6 +6,7 @@
         -->
 
         <!-- Project Phases -->
+
         <record id="project_phase_1" model="project.phase">
             <field eval="[(6, 0, [])]" name="previous_phase_ids"/>
             <field name="name">Collect Requirement and Make SRS</field>
@@ -13,8 +14,11 @@
             <field eval="1" name="sequence"/>
             <field name="duration">30</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
+            <field eval="time.strftime('%Y-%m-%d')" name="date_start"/>
         </record>
 
+        <function model="project.phase" name="set_open" eval="[ref('project_phase_1')]"/>
+        
         <record id="project_phase_2" model="project.phase">
             <field eval="[(6, 0, [ref('project_phase_1')])]" name="previous_phase_ids"/>
             <field name="name">Design Model</field>
@@ -22,8 +26,11 @@
             <field eval="2" name="sequence"/>
             <field name="duration">20</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
+            <field eval="time.strftime('%Y-%m-%d')" name="date_start"/>
         </record>
 
+        <function model="project.phase" name="set_open" eval="[ref('project_phase_2')]"/>
+        
         <record id="project_phase_3" model="project.phase">
             <field eval="[(6, 0, [ref('project_phase_2')])]" name="previous_phase_ids"/>
             <field name="name">Planning and compute Risk analysis, Time chart </field>
@@ -31,8 +38,11 @@
             <field eval="3" name="sequence"/>
             <field name="duration">20</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
+            <field eval="time.strftime('%Y-%m-%d')" name="date_start"/>
         </record>
 
+        <function model="project.phase" name="set_open" eval="[ref('project_phase_3')]"/>
+        
         <record id="project_phase_4" model="project.phase">
             <field eval="[(6, 0, [ref('project_phase_2')])]" name="previous_phase_ids"/>
             <field name="name">Development and Integration</field>
@@ -40,8 +50,11 @@
             <field eval="4" name="sequence"/>
             <field name="duration">90</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
+            <field eval="time.strftime('%Y-%m-%d')" name="date_start"/>
         </record>
 
+        <function model="project.phase" name="set_open" eval="[ref('project_phase_4')]"/>
+        
         <record id="project_phase_5" model="project.phase">
             <field eval="[(6, 0, [ref('project_phase_4')])]" name="previous_phase_ids"/>
             <field name="name">Review and Testing</field>
@@ -49,8 +62,11 @@
             <field eval="5" name="sequence"/>
             <field name="duration">30</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
+            <field eval="time.strftime('%Y-%m-%d')" name="date_start"/>
         </record>
 
+        <function model="project.phase" name="set_open" eval="[ref('project_phase_5')]"/>
+
         <record id="project_phase_6" model="project.phase">
             <field eval="[(6, 0, [ref('project_phase_5')])]" name="previous_phase_ids"/>
             <field name="name">Deployement and Training</field>
@@ -58,8 +74,10 @@
             <field eval="5" name="sequence"/>
             <field name="duration">10</field>
             <field name="project_id" ref="project.project_integrate_openerp"/>
+            <field eval="time.strftime('%Y-%m-%d')" name="date_start"/>
         </record>
 
+        <function model="project.phase" name="set_open" eval="[ref('project_phase_6')]"/>
         <!-- Tasks -->
 
         <record id="project.project_task_1" model="project.task">

=== modified file 'project_long_term/project_long_term_view.xml'
--- project_long_term/project_long_term_view.xml	2011-10-27 21:11:24 +0000
+++ project_long_term/project_long_term_view.xml	2011-11-11 13:39:26 +0000
@@ -119,7 +119,7 @@
                     </group>
                     <notebook colspan="4">
                         <page string="Planning of Users">
-                            <field colspan="4" name="user_ids" nolabel="1">
+                            <field colspan="4" name="user_ids" readonly="1" nolabel="1">
                                  <tree editable="bottom" string="Project Users">
                                     <field name="user_id"/>
                                     <field name="date_start"/>
@@ -300,9 +300,9 @@
             <field name="type">form</field>
             <field name="inherit_id" ref="project.view_task_form2"/>
             <field name="arch" type="xml">
-                <field name="sequence" position="after">
+                <xpath expr="//field[@name='effective_hours']" position="after">
                     <field name="phase_id"/>
-                </field>
+                </xpath>
             </field>
         </record>
         <record id="view_phase_task_search_form" model="ir.ui.view">
@@ -324,7 +324,7 @@
             <field name="inherit_id" ref="project.view_task_search_form"/>
             <field name="arch" type="xml">
             <filter string="Project" name="group_project_id" icon="terp-folder-violet" domain="[]" context="{'group_by':'project_id'}" position="after">
-            <filter string="Project Phase" name="group_project_id_phase" icon="terp-folder-violet" domain="[]" context="{'group_by':'phase_id'}" groups="base.group_extended"/>
+            <filter string="Project Phase" name="group_project_id_phase" icon="terp-folder-violet" domain="[]" context="{'group_by':'phase_id'}"/>
             </filter>
             </field>
         </record>
@@ -342,22 +342,20 @@
         </record>
 
     <act_window
+        context="{'search_default_phase_id': [active_id], 'default_phase_id' : active_id, 'default_project_id' : active_id}"
         id="project_phase_task_list"
         name="Related Tasks"
         res_model="project.task"
         src_model="project.phase"
         view_mode="tree,form"
-        context="{'search_default_phase_id': [active_id]}"
-        domain="[('phase_id', '=', active_id),('project_id','=',project_id)]"
         />
 
     <act_window
-        context="{'search_default_project_id': [active_id]}"
+        context="{'search_default_project_id': [active_id], 'default_project_id': active_id}"
         id="act_project_phases"
         name="Phases"
         res_model="project.phase"
         src_model="project.project"
-        domain="[('project_id', '=', active_id)]"
         view_mode="tree,form"
         view_type="form" 
         />
@@ -367,12 +365,10 @@
     # ------------------------------------------------------
 
         <menuitem action="act_project_phase_list"
-            groups="base.group_extended"
             id="menu_project_phase_list" parent="project.menu_project_management" sequence="2"/>
 
         <menuitem action="act_project_phase"
             icon="STOCK_INDENT"
-            groups="base.group_extended"
             id="menu_project_phase"   parent="base.menu_project_long_term" sequence="1"/>
 
         <menuitem id="menu_resouce_allocation" action="act_resouce_allocation"
@@ -385,8 +381,8 @@
 
         <menuitem id="menu_phase_schedule" name="Scheduling" parent="base.menu_main_pm" sequence="4" groups="project.group_project_user,project.group_project_manager"/>
         <menuitem action="resource.action_resource_resource_tree" id="menu_view_resource" parent="menu_pm_users_project1" sequence="2"/>
-        <menuitem action="resource.action_resource_calendar_form" id="menu_view_resource_calendar" parent="menu_pm_users_project1" sequence="1"/>
-        <menuitem action="resource.action_resource_calendar_leave_tree" id="menu_view_resource_calendar_leaves" parent="menu_pm_users_project1" sequence="1"/>
+        <menuitem action="resource.action_resource_calendar_form" id="menu_view_resource_calendar" parent="menu_pm_users_project1" sequence="5"/>
+        <menuitem action="resource.action_resource_calendar_leave_tree" id="menu_view_resource_calendar_leaves" parent="menu_pm_users_project1" sequence="3"/>
 
     </data>
 </openerp>

=== modified file 'project_long_term/wizard/__init__.py'
--- project_long_term/wizard/__init__.py	2011-10-27 21:11:24 +0000
+++ project_long_term/wizard/__init__.py	2011-11-11 13:39:26 +0000
@@ -21,5 +21,6 @@
 
 import project_compute_phases
 import project_compute_tasks
+import project_phase_complete
 
 # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'project_long_term/wizard/project_phase_complete.py'
--- project_long_term/wizard/project_phase_complete.py	1970-01-01 00:00:00 +0000
+++ project_long_term/wizard/project_phase_complete.py	2011-11-11 13:39:26 +0000
@@ -0,0 +1,38 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+#    You should have received a copy of the GNU Affero General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+from osv import osv, fields
+
+class project_phase_complete(osv.osv_memory):
+    _name = 'project.phase.complete'
+    _description = 'Project phase complete'
+    _columns = {
+        'name': fields.char('Name', size=64, required=True),
+        'project_id': fields.many2one('project.project', 'Project', required=True),
+        'duration': fields.float('Duration', required=True, help="By default in days", states={'done':[('readonly',True)], 'cancelled':[('readonly',True)]}),
+        'product_uom': fields.many2one('product.uom', 'Duration UoM', required=True, help="UoM (Unit of Measure) is the unit of measurement for Duration", states={'done':[('readonly',True)], 'cancelled':[('readonly',True)]}),
+        'constraint_date_start': fields.datetime('Minimum Start Date', help='force the phase to start after this date', states={'done':[('readonly',True)], 'cancelled':[('readonly',True)]}),
+        'constraint_date_end': fields.datetime('Deadline', help='force the phase to finish before this date', states={'done':[('readonly',True)], 'cancelled':[('readonly',True)]}),
+    }
+
+project_phase_complete()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'project_long_term/wizard/project_phase_complete_view.xml'
--- project_long_term/wizard/project_phase_complete_view.xml	1970-01-01 00:00:00 +0000
+++ project_long_term/wizard/project_phase_complete_view.xml	2011-11-11 13:39:26 +0000
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+    <data>
+
+        <record id="view_project_complete" model="ir.ui.view">
+            <field name="name">Project Phases</field>
+            <field name="model">project.phase.complete</field>
+            <field name="type">form</field>
+            <field name="arch" type="xml">
+                  <form string="Project Phases">
+                    <group colspan="4" col="4">
+                        <separator colspan="4" string="Project Phases" />
+                        <field name="name" colspan="4"/>
+                        <field name="project_id" colspan="4" attrs="{'invisible':[('target_project','=','all')], 'required':[('target_project','!=','all')]}"/>
+                        <field name="duration"/>
+                        <field name="product_uom" nolabel="1"/>
+                        <separator colspan="4" string="Constraints"/>
+                        <group colspan="2" col="2"> 
+                            <field name="constraint_date_start"/>
+                            <field name="constraint_date_end"/>
+                        </group>
+                    </group>
+                  </form>
+            </field>
+        </record>
+
+        <record id="action_project_complete_phases" model="ir.actions.act_window">
+               <field name="name">Project Phases</field>
+               <field name="type">ir.actions.act_window</field>
+               <field name="res_model">project.phase.complete</field>
+               <field name="view_type">form</field>
+               <field name="view_mode">form</field>
+               <field name="view_id" ref="view_project_complete"/>
+               <field name="target">new</field>
+        </record>
+
+    </data>
+</openerp>

=== modified file 'resource/resource_view.xml'
--- resource/resource_view.xml	2011-11-08 19:44:49 +0000
+++ resource/resource_view.xml	2011-11-11 13:39:26 +0000
@@ -15,7 +15,7 @@
                        <separator orientation="vertical"/>
                        <field name="name"/>
                        <field name="user_id" string="User"/>
-                       <field name="resource_type"/>
+                       <field name="resource_type" invisible="1"/>
                        <field name="company_id" widget="selection" groups="base.group_multi_company"/>
                    </group>
                    <newline/>
@@ -106,6 +106,7 @@
             <field name="view_mode">tree,form</field>
             <field name="view_id" eval="False"/>
             <field name="search_view_id" ref="view_resource_calendar_search"/>
+            <field name="help">Define working hours and time table that could be scheduled to your project members</field>
         </record>
 
         <record id="view_resource_calendar_attendance_tree" model="ir.ui.view">
@@ -170,19 +171,15 @@
             <field name="type">form</field>
             <field name="arch" type="xml">
                 <form string="Resource">
-                   <group colspan="4" col="6">
-                    <field name="name" colspan="4"/>
-                    <field name="active"/>
-                    <field name="resource_type" />
-                    <field name="user_id" attrs="{'required':[('resource_type','=','user')], 'readonly':[('resource_type','=','material')]}"/>
-                    <field name="company_id" widget="selection" groups="base.group_multi_company"/>
-                   </group>
-                   <notebook colspan="4">
-                     <page string="General Information">
-                       <field name="calendar_id" string="Working Period"/>
-                       <field name="time_efficiency" groups="base.group_extended"/>
-                     </page>
-	           </notebook>
+                   <group col="6" colspan="4">
+			        <field name="name"/>
+			        <field name="user_id" attrs="{'required':[('resource_type','=','user')], 'readonly':[('resource_type','=','material')]}"/>
+			        <field name="active"/>
+			        <newline/>
+			        <field name="calendar_id" string="Working Period"/>
+			        <field name="time_efficiency" groups="base.group_extended"/>
+			        <field name="company_id" widget="selection" groups="base.group_multi_company"/>
+		           </group>
                 </form>
             </field>
         </record>
@@ -196,7 +193,7 @@
                     <field name="name" />
                     <field name="user_id" />
                     <field name="company_id" groups="base.group_multi_company"/>
-                    <field name="resource_type" />
+                    <field name="resource_type" invisible="1"/>
                     <field name="calendar_id" string="Working Period"/>
                     <field name="time_efficiency" groups="base.group_extended"/>
                 </tree>
@@ -204,12 +201,12 @@
         </record>
 
         <record id="action_resource_resource_tree" model="ir.actions.act_window">
-            <field name="name">Resources</field>
+            <field name="name">User Planning</field>
             <field name="res_model">resource.resource</field>
             <field name="view_mode">tree,form</field>
             <field name="context">{}</field>
             <field name="search_view_id" ref="view_resource_resource_search"/>
-            <field name="help">Resources allow you to create and manage resources that should be involved in a specific project phase. You can also set their efficiency level and workload based on their weekly working hours.</field>
+            <field name="help">Specify the efficiency level and workload based on the weekly working hours to your project's members.</field>
         </record>
 
         <record id="resource_calendar_leave_form" model="ir.ui.view">
@@ -251,12 +248,12 @@
             </field>
         </record>
         <record id="action_resource_calendar_leave_tree" model="ir.actions.act_window">
-            <field name="name">Resource Leaves</field>
+            <field name="name">Users Leaves</field>
             <field name="res_model">resource.calendar.leaves</field>
             <field name="view_mode">tree,form,calendar</field>
             <field name="search_view_id" ref="view_resource_calendar_leaves_search"/>
         </record>
-       <menuitem id="menu_resource_config" name="Resource" parent="base.menu_base_config" sequence="5" groups="base.group_extended"/>
-       <menuitem action="resource.action_resource_calendar_leave_tree" id="menu_view_resource_calendar_leaves_search" parent="menu_resource_config" sequence="1"/>
+       <menuitem id="menu_resource_config" name="Users Planning" parent="base.menu_base_config" sequence="1" groups="base.group_extended"/>
+       <menuitem action="resource.action_resource_calendar_leave_tree" id="menu_view_resource_calendar_leaves_search" parent="menu_resource_config" sequence="3"/>
     </data>
 </openerp>

_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to     : openerp-dev-gtk@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help   : https://help.launchpad.net/ListHelp

Reply via email to