[PROGRESS]

bzr revid: chm@openerp.com-20130403142206-i4oirpl41usx4qg0
This commit is contained in:
Christophe Matthieu 2013-04-03 16:22:06 +02:00 committed by Thibault Delavallée
parent 8b97805621
commit 8c67d4150b
3 changed files with 33 additions and 0 deletions

View File

@ -1078,6 +1078,36 @@ class mail_thread(osv.AbstractModel):
self.message_subscribe(cr, uid, [thread_id], [message.author_id.id], context=context)
return msg_id
def get_message_action_from_link(self, cr, uid, message_id, context=None):
action = None
msg_obj = self.pool.get('mail.message')
msg = msg_obj.browse(cr, uid, message_id, context=context)
if msg.model:
try:
self.pool.get(msg.model).check_access_rights(cr, uid, 'read')
action = {
'type': 'ir.actions.act_window',
'res_model': msg.model,
'view_type': 'form',
'view_mode': 'form',
'views': [(msg.res_id, 'form')],
'target': 'current',
'res_id': msg.res_id,
}
except openerp.exceptions.AccessDenied:
mod_obj = self.pool.get('ir.model.data')
act_model, act_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'mail', 'action_mail_inbox_feeds')
action = self.pool.get(act_model).read(cr, uid, act_id, [])
action.update({
'context': {
'default_model': 'res.users',
'default_res_id': uid,
'search_default_res_id': 1,
'search_default_model': 1,
}
})
return action
#------------------------------------------------------
# Compatibility methods: do not use
# TDE TODO: remove me in 8.0

View File

@ -8,6 +8,8 @@
<field name="context">{
'default_model': 'res.users',
'default_res_id': uid,
'search_default_model': context.get('params') and context.params.get('model'),
'search_default_res_id': context.get('params') and context.params.get('res_id')
}</field>
<field name="params" eval="&quot;{
'domain': [

View File

@ -1995,4 +1995,5 @@ openerp.mail = function (session) {
});
},
});
};