thread_level=thread_level, message_unload_ids=message_unload_ids, domain=domain, parent_id=parent_id, context=context)
return message_list
+ def get_likers_list(self, cr, uid, ids, limit=10, context=None):
+ """ Return the people list who liked this message. """
+ voter_names = []
+ message = self.browse(cr, uid, ids, context=context)
+ for voter in message.vote_user_ids[:limit]:
+ voter_names.append(voter.name)
+ if len(message.vote_user_ids) > limit:
+ voter_names.append(_("and %s others like this") % (len(message.vote_user_ids) - limit))
+ return voter_names
+
#------------------------------------------------------
# mail_message internals
#------------------------------------------------------
partner_id = self.pool['res.users'].browse(cr, SUPERUSER_ID, uid, context=None).partner_id.id
# Read mail_message.ids to have their values
- message_values = dict.fromkeys(ids, {})
+ message_values = dict((res_id, {}) for res_id in ids)
cr.execute('SELECT DISTINCT id, model, res_id, author_id, parent_id FROM "%s" WHERE id = ANY (%%s)' % self._table, (ids,))
for id, rmod, rid, author_id, parent_id in cr.fetchall():
message_values[id] = {'model': rmod, 'res_id': rid, 'author_id': author_id, 'parent_id': parent_id}