+ def _get_nb_lists(self, cr, uid, ids, field, arg, context=None):
+ result = {}
+ for topic in self.browse(cr, uid, ids, context=context):
+ result[topic.id] = len(topic.todolist_ids)
+ return result
+
+
+ def _get_number_tasks(self, cr, uid, ids, field, arg, context=None):
+ result = {}
+ for topic in self.browse(cr, uid, ids, context=context):
+ result[topic.id] = sum([t.number_tasks for t in topic.todolist_ids])
+ return result
+
+
+ def _get_number_tasks_done(self, cr, uid, ids, field, arg, context=None):
+ result = {}
+ for topic in self.browse(cr, uid, ids, context=context):
+ result[topic.id] = sum([t.number_tasks_done for t in topic.todolist_ids])
+ return result
+
+
+ def _progress_tasks(self, cr, uid, ids, field, arg, context=None):
+ result = {}
+ for t in self.browse(cr, uid, ids, context=context):
+ result[t.id] = t.number_tasks and t.number_tasks_done*100./t.number_tasks or 0.
+ return result
+
+