Reviewers: ,


Please review this at http://codereview.tryton.org/629002/

Affected files:
  M CHANGELOG
  M line.py
  M work.py
  M work.xml


Index: CHANGELOG
===================================================================

--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,5 @@
+* Add start/end date for timesheet
+
 Version 2.6.0 - 2012-10-22
 * Bug fixes (see mercurial logs for details)


Index: line.py
===================================================================

--- a/line.py
+++ b/line.py
@@ -23,8 +23,16 @@
     date = fields.Date('Date', required=True, select=True)
     hours = fields.Float('Hours', digits=(16, 2), required=True)
     work = fields.Many2One('timesheet.work', 'Work',
-            required=True, select=True, domain=[
-                ('timesheet_available', '=', True),
+        required=True, select=True, domain=[
+            ('timesheet_available', '=', True),
+            ['OR',
+                ('timesheet_start_date', '=', None),
+                ('timesheet_start_date', '<=', Eval('date')),
+                ],
+            ['OR',
+                ('timesheet_end_date', '=', None),
+                ('timesheet_end_date', '>=', Eval('date')),
+                ],
             ])
     description = fields.Char('Description')


Index: work.py
===================================================================

--- a/work.py
+++ b/work.py
@@ -30,6 +30,16 @@
             'readonly': Bool(Eval('timesheet_lines', [0])),
             },
         help="Allow to fill in timesheets with this work")
+    timesheet_start_date = fields.Date('Timesheet Start',
+        states={
+            'invisible': ~Eval('timesheet_available'),
+            },
+        depends=['timesheet_available'])
+    timesheet_end_date = fields.Date('Timesheet End',
+        states={
+            'invisible': ~Eval('timesheet_available'),
+            },
+        depends=['timesheet_available'])
     company = fields.Many2One('company.company', 'Company', required=True,
         select=True)
     timesheet_lines = fields.One2Many('timesheet.line', 'work',

Index: work.xml
===================================================================

--- a/work.xml
+++ b/work.xml
@@ -17,6 +17,10 @@
                     <field name="parent"/>
                     <label name="timesheet_available"/>
                     <field name="timesheet_available"/>
+                    <label name="timesheet_start_date"/>
+                    <field name="timesheet_start_date"/>
+                    <label name="timesheet_end_date"/>
+                    <field name="timesheet_end_date"/>
                     <label name="company"/>
                     <field name="company"/>
                 </form>



--
--
[email protected] mailing list



Reply via email to