+ for c in self.browse(cr, uid, ids, context=context):
+ result[c.id] = c.number_tasks and c.number_tasks_done*100./c.number_tasks or 0.
+ return result
+
+
+ #================================================================================
+ # def copy(self, cr, uid, id, default, context=None):
+ # container = self.browse(cr, uid, id, context=context)
+ # new_name = "Copy of %s" % container.name
+ # # =like is the original LIKE operator from SQL
+ # others_count = self.search(cr, uid, [('name', '=like', new_name+'%')],
+ # count=True, context=context)
+ # if others_count > 0:
+ # new_name = "%s (%s)" % (new_name, others_count+1)
+ # default['name'] = new_name
+ # return osv.Model.copy(self, cr, uid, id, default, context=context)
+ #================================================================================
+
+
+ def copy(self, cr, uid, id, default, context=None):
+ cr.execute("SELECT copierContainer (%s);", (id,))
+ return cr.fetchone()[0]
+
+
+ def _get_manday(self, cr, uid, ids, field, arg, context=None):
+ result={}
+ for container in self.browse(cr, uid, ids, context=context):
+ result[container.id] = sum([t.manday for t in container.tasks if t.state != "done"])