"name": fields.char(string="Title", size=64, required=True),
"description": fields.text(string="Description"),
"planned": fields.date(string="Planed"),
- "milestone": fields.date(string="Milestone"),
- "manday": fields.integer(string="Man-Days"),
- "priority": fields.selection(_priorities, string="Priority", select=True),
+ "milestone": fields.date(string="Milestone", required=True),
+ "manday": fields.integer(string="Man-Days", required=True),
+ "priority": fields.selection(_priorities, string="Priority", select=True, required=True),
"state": fields.selection(_states, string="State", select=True),
"container_id": fields.many2one("todolist.container", string="To do list", required=True),
}
),
(
"manday_sup_0_constraint",
- "CHECK(manday < 0)",
+ "CHECK(manday > 0)",
"The manday should be positive",
),
]
self.write(cr, uid, ids, {"state": "done"}, context=context)
return self
+ #chaque utilisateur voit seulement ces taches
def search(self, cr, user, args=[], offset=0, limit=None, order=None, context=None, count=False):
args.append(("create_uid", "=", user))
if len(args) != 1:
args.insert(0, "&")
return osv.Model.search(self, cr, user, args, offset, limit, order, context, count)
-
+ def write(self, cr, user, ids, vals, context=None):
+ if "milestone" in vals.keys():
+ for task in self.browse(cr, user, ids, context=context):
+ if task.container_id.milestone < vals["milestone"]:
+ vals["milestone"] = task.container_id.milestone
+ return osv.Model.write(self, cr, user, ids, vals, context)
+
+ def create(self, cr, user, vals, context=None):
+ import pdb; pdb.set_trace()
+ container_model = self.pool.get("todolist.container")
+ container = container_model.read(cr, user, vals["container_id"], context=context)
+ milestone = container["milestone"]
+ if milestone < vals["milestone"]:
+ vals["milestone"] = milestone
+ return osv.Model.create(self, cr, user, vals, context=context)
class Topic(osv.Model):