#
##############################################################################
-from openerp import tools, SUPERUSER_ID
+from openerp import tools
from openerp.osv import osv, fields
res.get('model'), res.get('res_id'), context=context
)['value']
)
+ if fields is not None:
+ [res.pop(field, None) for field in res.keys() if field not in fields]
return res
_columns = {
}
values.setdefault('attachment_ids', list()).append(ir_attach_obj.create(cr, uid, data_attach, context=context))
else:
- values = self.default_get(cr, uid, ['subject', 'body', 'email_from', 'reply_to', 'attachment_ids', 'mail_server_id'], context=context)
+ default_context = dict(context, default_composition_mode=composition_mode, default_model=model, default_res_id=res_id)
+ default_values = self.default_get(cr, uid, ['composition_mode', 'model', 'res_id', 'subject', 'body', 'email_from', 'reply_to', 'attachment_ids', 'mail_server_id'], context=default_context)
+ values = dict((key, default_values[key]) for key in ['subject', 'body', 'email_from', 'reply_to', 'attachment_ids', 'mail_server_id'] if key in default_values)
if values.get('body_html'):
values['body'] = values.pop('body_html')
result = super(mail_compose_message, self).default_get(cr, uid, fields, context=context)
# v6.1 compatibility mode
- result['composition_mode'] = result.get('composition_mode', context.get('mail.compose.message.mode'))
+ result['composition_mode'] = result.get('composition_mode', context.get('mail.compose.message.mode', 'comment'))
result['model'] = result.get('model', context.get('active_model'))
result['res_id'] = result.get('res_id', context.get('active_id'))
result['parent_id'] = result.get('parent_id', context.get('message_id'))
if result['model'] == 'res.users' and result['res_id'] == uid:
result['model'] = 'res.partner'
result['res_id'] = self.pool.get('res.users').browse(cr, uid, uid).partner_id.id
+
+ if fields is not None:
+ [result.pop(field, None) for field in result.keys() if field not in fields]
return result
def _get_composition_mode_selection(self, cr, uid, context=None):