-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathwizard_emails_generats.py
More file actions
53 lines (43 loc) · 1.69 KB
/
wizard_emails_generats.py
File metadata and controls
53 lines (43 loc) · 1.69 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# -*- coding: utf-8 -*-
from osv import osv, fields
class WizardEmailsGeneratsModel(osv.osv_memory):
_name = 'wizard.emails.generats.model'
def _get_references(self, cr, uid, context=None):
dataobj = self.pool.get('ir.model')
ids = dataobj.search(cr, uid, [])
res = dataobj.read(cr, uid, ids, ['model', 'name'], context)
return [(r['model'], r['name']) for r in res]
def get_reference_items(self, cursor, uid, reference, context=None):
references = set()
references.add(reference)
return references
def _get_default_reference(self, cursor, uid, context=None):
if context is None:
context = {}
model_name = context.get('model_name')
res = ''
if model_name:
res = '{},{}'.format(model_name, context['active_ids'][0])
return res
def list_all_emails(self, cursor, uid, ids, context=None):
if context is None:
context = {}
wizard = self.browse(cursor, uid, ids[0], context=context)
reference = wizard['reference']
references = self.get_reference_items(cursor, uid, reference, context=context)
return {
'domain': [('reference', 'in', list(references))],
'name': 'Correos relacionados',
'view_type': 'form',
'view_mode': 'tree,form',
'res_model': 'poweremail.mailbox',
'type': 'ir.actions.act_window',
'view_id': False
}
_columns = {
'reference': fields.reference('Model', selection=_get_references, required=True, size=128),
}
_defaults = {
'reference': _get_default_reference,
}
WizardEmailsGeneratsModel()