Skip to content
Snippets Groups Projects
Commit c5b119e2 authored by Fabien Pinckaers's avatar Fabien Pinckaers
Browse files

[IMP] logs

bzr revid: fp@tinyerp.com-20101016140328-4ke8easdcpxbnicz
parent 8f4d9d42
No related branches found
No related tags found
No related merge requests found
......@@ -52,22 +52,19 @@ class res_log(osv.osv):
# TODO: do not return secondary log if same object than in the model (but unlink it)
def get(self, cr, uid, context=None):
unread_log_ids = self.search(cr, uid, [('user_id','=',uid),
('read', '=', False)],
context=context)
unread_logs = self.read(cr, uid, unread_log_ids,
['name','res_model','res_id'],
context=context)
unread_log_ids = self.search(cr, uid,
[('user_id','=',uid), ('read', '=', False)], context=context)
res = self.read(cr, uid, unread_log_ids,
['name','res_model','res_id'],
context=context)
res.reverse()
result = []
res_dict = {}
for r in res:
if r['res_model'] not in res_dict:
res_dict[r['res_model']] = True
result.insert(0,r)
self.write(cr, uid, unread_log_ids, {'read': True}, context=context)
return unread_logs
return result
def search(self, cr, uid, args, offset=0, limit=None, order=None, context=None, count=False):
log_ids = super(res_log, self).search(cr, uid, args, offset, limit, order, context, count)
logs = {}
for log in self.browse(cr, uid, log_ids, context=context):
res_dict = logs.get(log.res_model, {})
res_dict.update({log.res_id: log.id})
logs.update({log.res_model: res_dict})
res = map(lambda x: x.values(), logs.values())
return tools.flatten(res)
res_log()
......@@ -7,13 +7,15 @@
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Logs">
<filter icon="terp-stock_align_left_24" string="Read" domain="[('read','=',True)]" name="read"/>
<filter icon="terp-stock_align_left_24" string="Unread" domain="[('read','&lt;&gt;',True)]" name="unread"/>
<separator orientation="vertical"/>
<filter icon="terp-stock_align_left_24" string="My Logs" domain="[('user_id','=',uid)]" name="my"/>
<separator orientation="vertical"/>
<field name="name"/>
<field name="user_id"/>
<field name="res_model"/>
<field name="create_date"/>
<field name="read"/>
</search>
</field>
</record>
......@@ -37,15 +39,13 @@
<field name="arch" type="xml">
<form string="Logs">
<group colspan="4" col="6">
<field name="name"/>
<field name="create_date"/>
<field name="read" readonly="1"/>
<field name="name"/>
<field name="create_date"/>
<field name="read"/>
<field name="user_id" />
<field name="res_model"/>
<field name="res_id"/>
</group>
<group colspan="4" col="6">
<field name="user_id" />
<field name="res_model"/>
<field name="res_id"/>
</group>
</form>
</field>
</record>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment